Commit Graph

56623 Commits

Author SHA1 Message Date
Nathanael Nerode
089e52f773 * Makefile.direct, alloc.c: Resync to upstream 6.3 alpha 1.
From-SVN: r78142
2004-02-20 01:48:51 +00:00
James E Wilson
e0c34369b8 Fix latent problem found by Mostafa Hagog.
* config/i386/i386.md (doloop_end_internal): Use nonimmediate_operand
	for operand2.  Add condition that requires register_operand operand2
	before reload.

From-SVN: r78140
2004-02-19 17:20:33 -08:00
GCC Administrator
325b439bbc Daily bump.
From-SVN: r78137
2004-02-20 00:16:10 +00:00
Richard Sandiford
2b5f287ba9 Fix attribution in last delta.
From-SVN: r78132
2004-02-19 23:00:22 +00:00
Richard Sandiford
656f37ee62 mips.c (mips_address_insns): Treat BLKmode specially.
* config/mips/mips.c (mips_address_insns): Treat BLKmode specially.
	* config/mips/mips.md: Expand comment above unaligned loads and stores.

From-SVN: r78129
2004-02-19 22:49:47 +00:00
Richard Henderson
4221057e8f Makefile.in (STRICT2_WARN): Add -Wno-variadic-macros.
* Makefile.in (STRICT2_WARN): Add -Wno-variadic-macros.
        * tree.c (build0, build1, build2, build3, build4): Split out from...
        (build): ... here.  Call them.
        * tree.h (build, _buildN1, _buildN2, _buildC1, _buildC2): New.

        * convert.c (convert_to_integer): Remove extra build argument.
        * tree-inline.c (expand_call_inline): Likewise.
ada/
        * misc.c (record_code_position): Add third build arg for RTL_EXPR.
java/
        * parse.y (switch_label): Use make_node for DEFAULT_EXPR.

From-SVN: r78126
2004-02-19 14:39:55 -08:00
Richard Henderson
e5b7921933 c-opts.c (warn_variadic_macros): New.
* c-opts.c (warn_variadic_macros): New.
        (c_common_handle_option): Set it.
        (sanitize_cpp_opts): Copy it to cpp_opts.
        * c.opt (Wvariadic-macros): New.
        * cpplib.h (struct cpp_options): Add warn_variadic_macros.
        * cppinit.c (cpp_create_reader): Initialize it.
        * cppmacro.c (parse_params): Check it.

From-SVN: r78125
2004-02-19 14:18:50 -08:00
David Edelsohn
2df93cf3c4 2.cc: Change input-charset from iso-8859-1 to ISO8859-1.
* 22_locale/collate/compare/wchar_t/2.cc: Change input-charset
	from iso-8859-1 to ISO8859-1.
	* 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
	* 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
	* 22_locale/collate/hash/wchar_t/2.cc: Same.
	* 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
	* 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
	* 22_locale/collate/transform/wchar_t/2.cc: Same.
	* 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
	* 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same.

From-SVN: r78124
2004-02-19 17:07:55 -05:00
David Daney
18586cb7fc re PR preprocessor/14198 ([3.4.0][MIPS]FAIL: gcc.dg/cpp/assert4.c (test for excess errors))
2004-02-19  David Daney <ddaney@avtrex.com>

	PR preprocessor/14198
	* config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Add
	builtin_assert ("machine=mips")

From-SVN: r78123
2004-02-19 22:07:51 +00:00
Kazu Hirata
37a46828a7 opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.
* opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.
	* system.h (DEFAULT_SHORT_ENUMS): Poison.
	* config/cris/cris.h: Remove a comment about
	DEFAULT_SHORT_ENUMS.
	* config/ip2k/ip2k.h: Likewise.
	* doc/tm.texi (DEFAULT_SHORT_ENUMS): Remove.

From-SVN: r78122
2004-02-19 21:49:45 +00:00
Zack Weinberg
f9c887ac06 ia64.c (ia64_function_arg): In big-endian mode...
* config/ia64/ia64.c (ia64_function_arg): In big-endian mode,
	when passing single SFmode quantities in general registers,
	put them in the high half.

From-SVN: r78119
2004-02-19 21:39:52 +00:00
Aldy Hernandez
0e1d7f3250 md.texi (Standard Names): Document additional dependency on fix pattern.
2004-02-19  Aldy Hernandez  <aldyh@redhat.com>

        * doc/md.texi (Standard Names): Document additional dependency on
        fix pattern.

        * optabs.c (ftruncify): Remove.
        (expand_fix): Manually inline ftruncify above.
        (can_fix_p): Add FIXME note.

From-SVN: r78116
2004-02-19 18:50:57 +00:00
Aldy Hernandez
c6e9f0ebd9 spe.md (spe_fixunssfsi2): Rename to spe_fixuns_truncsfsi2.
* config/rs6000/spe.md (spe_fixunssfsi2): Rename to
        spe_fixuns_truncsfsi2.

        * config/rs6000/rs6000.md (fixunssfsi2): Rename to
        fixuns_truncsfsi2.

From-SVN: r78114
2004-02-19 18:40:24 +00:00
Steve Ellcey
919b531db1 ia64.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.
* config/ia64/ia64.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.
	* testsuite/gcc.dg/20040219-1.c: New test.

From-SVN: r78113
2004-02-19 18:03:45 +00:00
Ulrich Weigand
4dbb59702c s390.md ("*subdf3_cc", [...]): Subtraction is not commutative.
* config/s390/s390.md ("*subdf3_cc", "*subdf3_cconly", "*subsf3_cc",
	"*subsf3_cconly"): Subtraction is not commutative.

From-SVN: r78110
2004-02-19 17:36:45 +00:00
Zack Weinberg
16edbbf082 sdbout.c (preinit_symbols, [...]): New statics.
* sdbout.c (preinit_symbols, sdbout_initialized): New statics.
	(sdbout_symbol): If called before sdbout_init, queue DECL for
	later and return.
	(sdbout_init): Set sdbout_initialized true, process decls
	queued earlier by sdbout_symbol.
	(sdbout_finish): Use size_t for index variable.

From-SVN: r78109
2004-02-19 17:21:14 +00:00
Jeff Law
f46e5baad6 fold-const.c (invert_truthvalue): Do not call invert_tree_comparison for unordered comparison codes.
* fold-const.c (invert_truthvalue): Do not call invert_tree_comparison
        for unordered comparison codes.

From-SVN: r78103
2004-02-19 09:57:52 -07:00
Joseph Myers
117def1303 * fr.po: Update.
From-SVN: r78101
2004-02-19 16:54:24 +00:00
Ian Lance Taylor
d754127f13 reload1.c (reload): Correct comment.
* reload1.c (reload): Correct comment.
	(scan_paradoxical_subregs): Remove #if 0 and old comment.
	* doc/extend.texi (Local Reg Vars): Remove obsolete comment that
	register variables are not used by reload.

From-SVN: r78100
2004-02-19 15:24:02 +00:00
Nathan Sidwell
78cb77c13e attr-ctor1.C: XFAIL on hppa.
* g++.dg/parse/attr-ctor1.C: XFAIL on hppa.
	* g++.dg/opt/template1.C: Robustify assembler regexp

From-SVN: r78097
2004-02-19 12:46:49 +00:00
Hans-Peter Nilsson
428eae942c re PR target/14209 (Bug in cris.md, shrinking access size of postincrement.)
PR target/14209
	* config/cris/cris.md ("*andsi_movu", "*andhi_movu"): Tweak
	constraints to not match postincrement.  Adjust the predicate to
	exclude a volatile memory reference.

From-SVN: r78095
2004-02-19 11:28:00 +00:00
Kazu Hirata
a5ee8d8003 * config/mcore/mcore.h (ASM_OUTPUT_EXTERNAL): Remove.
From-SVN: r78094
2004-02-19 11:14:12 +00:00
Kazu Hirata
45ea6431a0 hooks.c (hook_void_tree_int): Remove.
* hooks.c (hook_void_tree_int): Remove.
	(hook_void_constcharptr): Likewise.
	(hook_int_void_0): Likewise.
	* hooks.h: Remove the prototypes for the above three
	functions.
	* targhooks.c (hook_bool_machine_mode_true): Remove.
	* targhooks.h: Remove the prototype for
	hook_bool_machine_mode_true.

From-SVN: r78093
2004-02-19 11:06:26 +00:00
Kazu Hirata
c59102b4ae emit-rtl.c (subreg_realpart_p): Remove.
* emit-rtl.c (subreg_realpart_p): Remove.
	(reorder_insns_with_line_notes): Likewise.
	(end_full_sequence): Likewise.
	* rtl.h: Remove the prototype for the above functions.

From-SVN: r78092
2004-02-19 10:59:44 +00:00
Kazu Hirata
3ad17f7bb5 arc.h, [...]: Remove commented-out or useless definitions of CASE_VECTOR_PC_RELATIVE.
* config/arc/arc.h, config/arm/arm.h, config/frv/frv.h,
	config/h8300/h8300.h, config/i386/i386.h, config/i860/i860.h,
	config/iq2000/iq2000.h, config/m32r/m32r.h,
	config/pdp11/pdp11.h, config/sparc/sparc.h,
	config/xtensa/xtensa.h: Remove commented-out or useless
	definitions of CASE_VECTOR_PC_RELATIVE.

From-SVN: r78091
2004-02-19 10:57:02 +00:00
Kazu Hirata
a3b182a787 * loop.c (all_sets_invariant_p): Remove.
From-SVN: r78090
2004-02-19 10:53:13 +00:00
Eric Botcazou
ca6b7cecf6 simd-4.x: Remove.
* gcc.c-torture/execute/simd-4.x: Remove.
	* gcc.c-torture/execute/va-arg-25.x: Likewise.
	* gcc.dg/compat/vector-1_x.c: Do not XFAIL on SPARC.
	Guard with #ifndef SKIP_ATTRIBUTE.
	* gcc.dg/compat/vector-1_y.c: Likewise.
	* gcc.dg/compat/vector-2_x.c: Likewise.
	* gcc.dg/compat/vector-2_y.c: Likewise.
	* g++.dg/eh/simd-1.C: Do not XFAIL on SPARC.
	* g++.dg/eh/simd-2.C: Likewise.

From-SVN: r78089
2004-02-19 09:23:22 +00:00
Eric Botcazou
1b5963f799 re PR target/12916 (No vector ABI)
PR target/12916
	* config/sparc/sparc.h (NPARM_REGS): Delete.
	(BASE_RETURN_VALUE_REG): Likewise.
	(BASE_OUTGOING_VALUE_REG): Likewise.
	(BASE_PASSING_ARG_REG): Likewise.
	(BASE_INCOMING_ARG_REG): Likewise.
	* config/sparc/sparc.c (sparc_strict_argument_naming): Test
	TARGET_ARCH64, not TARGET_V9.
	(function_arg_slotno): Dispatch based on the mode class.
	Handle vector modes like floating-point modes.
	(function_arg_record_value_1): Handle vector types like
	floating-point types.
	(function_arg_record_value_2): Likewise.
	Calculate regno after mode transformation.
	(function_arg): Handle vector modes like floating-point modes.
	(function_arg_partial_nregs): Replace NPARM_REGS by SPARC_INT_ARG_MAX.
	If ARCH64, do not recheck alignment.
	(function_arg_pass_by_reference): Reorder the conditions.
	(sparc_return_in_memory): Move after function_arg_padding.
	Implement calling conventions for vector modes.
	(sparc_struct_value_rtx): Move after sparc_return_in_memory.
	(function_value): Move scope of 'regbase'.
	Implement calling conventions for vector modes.
	(sparc_builtin_saveregs): Replace NPARM_REGS by SPARC_INT_ARG_MAX
	and BASE_INCOMING_ARG_REG by SPARC_INCOMING_INT_ARG_FIRST.
	(sparc_va_arg): Use function_arg_pass_by_reference to test whether
	the argument is passed by reference.
	(sparc_type_code): Handle vector types.

From-SVN: r78087
2004-02-19 09:02:48 +00:00
Alan Modra
19037b5c9e New test.
From-SVN: r78080
2004-02-19 18:32:59 +10:30
Alan Modra
196c42cd7c function.c (assign_parms): When building decl_rtl for SPLIT_COMPLEX_ARGS...
* function.c (assign_parms): When building decl_rtl for
	SPLIT_COMPLEX_ARGS, ensure inner modes of concat match outer.

From-SVN: r78079
2004-02-19 18:30:47 +10:30
Hans-Peter Nilsson
9188db2d00 re PR target/14209 (Bug in cris.md, shrinking access size of postincrement.)
PR target/14209
	* gcc.c-torture/execute/20040218-1.c: New test.

From-SVN: r78078
2004-02-19 07:58:05 +00:00
Olivier Hainque
c0cfc6913e expr.c (is_aligning_offset): Check if we are aligning the expressions's address over BIGGEST_ALIGNMENT in...
* expr.c (is_aligning_offset): Check if we are aligning the
	expressions's address over BIGGEST_ALIGNMENT in bytes, not
	in bits.

From-SVN: r78076
2004-02-19 07:52:51 +00:00
Matt Austern
328163dc0a gcc.c (LIBGCC_SPEC): If REAL_LIBGCC_SPEC is defined...
* gcc.c (LIBGCC_SPEC): If REAL_LIBGCC_SPEC is defined, and
	LIBGCC_SPEC isn't, set LIBGCC_SPEC to REAL_LIBGCC_SPEC.
	(init_gcc_spec): Don't define or call if REAL_LIBGCC_SPEC is
	defined.  Instead use REAL_LIBGCC_SPEC, unmodifed, as the libgcc
	spec string.
	* doc/tm.texi (REAL_LIBGCC_SPEC): Document.

From-SVN: r78072
2004-02-19 05:52:38 +00:00
Giovanni Bajo
23aa7aba4a re PR c++/14181 (Cryptic error message for code that compiled without warnings in 3.3.x)
PR c++/14181
	* g++.dg/parse/new2.C: New test.

From-SVN: r78068
2004-02-19 03:09:59 +00:00
Giovanni Bajo
063e900f40 re PR c++/14181 (Cryptic error message for code that compiled without warnings in 3.3.x)
PR c++/14181
	* parser.c (cp_parser_new_expression): Parse an ill-formed
	direct-new-declarator after a parenthesized type-id to emit good
	diagnostic.

From-SVN: r78067
2004-02-19 03:06:09 +00:00
GCC Administrator
d63d3c7c2e Daily bump.
From-SVN: r78064
2004-02-19 00:16:11 +00:00
Zack Weinberg
57d4f65c73 dwarf2out.c (loclabel_num): Move outside #ifdef DWARF2_DEBUGGING_INFO and mark with GTY(()).
* dwarf2out.c (loclabel_num): Move outside #ifdef
	DWARF2_DEBUGGING_INFO and mark with GTY(()).
	* config/ia64/ia64.c (struct extern_func_list,extern_func_head):
	Mark with GTY(()).
	(ia64_hpux_add_extern_decl): Save the decl, not the name string.
	Allocate memory with ggc_alloc.  No need to copy anything.
	(ia64_hpux_file_end): Update to match.

From-SVN: r78061
2004-02-18 23:58:00 +00:00
Jakub Jelinek
3fec9fa9b7 i386.c (override_options): Don't imply 3DNow!
* config/i386/i386.c (override_options): Don't imply 3DNow! for -m64
	by default.

From-SVN: r78059
2004-02-19 00:22:49 +01:00
Ulrich Weigand
5665e39850 s390.md ("divmodtidi3"): Use canonical RTL.
* config/s390/s390.md ("divmodtidi3"): Use canonical RTL.
	("divmodtisi3"): Likewise.
	("udivmoddi4", "udivmodtidi3"): Likewise.
	("divmodsi4", "divmoddisi3"): Likewise.
	("udivmodsi4", "udivmoddisi3"): Likewise.
	("udivsi3", "umodsi3"): Likewise.

From-SVN: r78057
2004-02-18 23:00:24 +00:00
Ulrich Weigand
d76e8439b6 s390.c (s390_mainpool_start): Delete the main pool placeholder insn when chunkifying the pool.
* config/s390/s390.c (s390_mainpool_start): Delete the main pool
	placeholder insn when chunkifying the pool.

From-SVN: r78054
2004-02-18 22:37:04 +00:00
John David Anglin
3cf7104e3e pa.h (PIC_OFFSET_TABLE_REGNUM): Define to INVALID_REGNUM when not generating PIC code.
* pa.h (PIC_OFFSET_TABLE_REGNUM): Define to INVALID_REGNUM when not
	generating PIC code.

From-SVN: r78053
2004-02-18 22:18:54 +00:00
Kazu Hirata
8981ecd360 h8300-protos.h: Add a prototype for h8300_expand_branch.
* config/h8300/h8300-protos.h: Add a prototype for
	h8300_expand_branch.
	* config/h8300/h8300.c (h8300_expand_branch): New.
	* config/h8300/h8300.md (ble, bleu, bge, bgeu, blt, bltu, bgt,
	bgtu, beq, bne): Call h8300_expand_branch().

From-SVN: r78052
2004-02-18 22:12:59 +00:00
Kazu Hirata
07ee3b586d h8300-protos.h: Add prototypes for h8300_hard_regno_nregs and h8300_hard_regno_mode_ok.
* config/h8300/h8300-protos.h: Add prototypes for
	h8300_hard_regno_nregs and h8300_hard_regno_mode_ok.
	* config/h8300/h8300.c (h8300_hard_regno_nregs): New.
	(h8300_hard_regno_mode_ok): Likewise.
	* config/h8300/h8300.h (HARD_REGNO_NREGS): Call
	h8300_hard_regno_nregs().
	(HARD_REGNO_MODE_OK): Call h8300_hard_regno_mode_ok().

From-SVN: r78050
2004-02-18 22:05:47 +00:00
Per Bothner
22234f56d2 re PR preprocessor/14103 (ICEs on "gcc -E -imacros foo.h baz.c")
* cpphash.h (struct cpp_buffer):  Restore return_at_eof field.  This
	partly reverts my 2003-10-01 change, because we're back to logically
	including <command line> inside the main line.
	* cpplex.c (_cpp_get_fresh_line):  Check return_at_eof field.
	* cppmacro.c (cpp_scan_nooutput):  Set return_at_eof of current buffer.
	Fixes PR preprocessor/14103.

	* cppfiles.c (_cpp_stack_include):  When appropriate decrement
	line_table's highest_location, fixing LAST_SOURCE_LINE_LOCATION.
	(cpp_push_include):  Don't need to increment pfile's line field.
	* line-map.h (LAST_SOURCE_LINE_LOCATION):  Only decrement by 1.

	* c-ppoutput.c (print struct):  New first_time field.
	(init_pp_output):  Set print.first_time.
	(pp_file_change):  Use print.first_time, rather than MAIN_FILE_P,
	which is set also for (say) <command line>.  Clear print.first_time.

	* cppfiles.c (struct _cpp_file):  Comment and type for pch field
	does not match the code, so fix both.
	(should_stack_file):  Inline include_pch_p function.
	(include_pch_p):  Remove pointless function.

	* cpphash.h (struct cpp_buffer):  Remove unused search_cached field.

From-SVN: r78049
2004-02-18 14:02:39 -08:00
Kazu Hirata
5a6d9a81c7 h8300.md (four define_peephole2's): Use h8300_regs_ok_for_stm().
* config/h8300/h8300.md (four define_peephole2's): Use
	h8300_regs_ok_for_stm().

From-SVN: r78048
2004-02-18 21:55:02 +00:00
Kazu Hirata
3d2e90d632 h8300-protos.h: Update the prototype for expand_a_rotate().
* config/h8300/h8300-protos.h: Update the prototype for
	expand_a_rotate().
	* config/h8300/h8300.c (expand_a_rotate): Remove the first
	argument.
	* config/h8300/h8300.md: Update all callers.

From-SVN: r78047
2004-02-18 21:50:25 +00:00
Jan Hubicka
79ae63b183 simplify-rtx.c (simplify_unary_operation): Deal with logicals on floats.
* simplify-rtx.c (simplify_unary_operation): Deal with logicals on
	floats.
	(simplify_binary_operation): Deal with logicals on floats.

	* i386.md (SSE fabs splitters): Emit new patterns.
	(SSE cmov splitters): Likewise.
	(sse_andv4sf3, sse_nandv4sf3, sse_iorv4sf3, sse_xorv4sf3
	(sse_andv2df3, sse_nandv2df3, sse_iorv2df3, sse_xorv2df3): Do not use
	subregs.
	(sse_andsf3, sse_nandsf3, sse_xorsf3): Kill.
	(sse_anddf3, sse_nanddf3, sse_xordf3): Kill.

From-SVN: r78045
2004-02-18 20:55:29 +00:00
Kazu Hirata
01ab55749f h8300.c (expand_a_rotate): Don't generate insns by hand.
* config/h8300/h8300.c (expand_a_rotate): Don't generate insns
	by hand.
	(output_a_rotate): Tweak a comment.
	* config/h8300/h8300.md (*rotlqi3_1): Change to rotlqi3_1.
	(*rotlhi3_1): Change to rotlhi3_1.
	(*rotlsi3_1): Change to rotlsi3_1.

From-SVN: r78043
2004-02-18 19:42:22 +00:00
Richard Earnshaw
d5f7d2d041 re PR target/13866 (ICE in extract_insn, at recog.c:2083)
PR target/13866
* arm.c (load_multiple_operation): Don't insist that the source reg
of a post-increment component is the same as the destination.
(store_multiple_operation): Likewise.

From-SVN: r78041
2004-02-18 18:44:23 +00:00
Paolo Carlini
2ddf25f217 locale_facets.h (money_get<>::_M_extract): New, helper for do_get.
2004-02-18  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.h (money_get<>::_M_extract):
	New, helper for do_get.
	(money_put<>::_M_insert): Likewise, for do_put.
	* include/bits/locale_facets.tcc (money_get<>::_M_extract,
	money_put<>::_M_insert): Define.
	(money_get<>::do_get(long double&), money_get<>::do_get(
	string_type&), money_put::do_put(long double),
	money_put::do_put(const string_type&)): Use the helpers.

From-SVN: r78037
2004-02-18 16:39:13 +00:00