Commit Graph

41509 Commits

Author SHA1 Message Date
Neil Booth b3124fac9b * cppinit.c: Revert -MD removal.
From-SVN: r50884
2002-03-16 14:03:36 +00:00
Stephane Carrez 121449b69b m68hc11.c (m68hc11_override_options): Don't use soft registers by default for 68HC12.
* config/m68hc11/m68hc11.c (m68hc11_override_options): Don't use
	soft registers by default for 68HC12.
	(m68hc11_conditional_register_usage): Don't use Z register for 68HC12
	when compiling with -fomit-frame-pointer.
	(expand_prologue): Use push/pop to allocate 4-bytes of locals on 68HC12.
	(expand_epilogue): Likewise.
	(m68hc11_gen_rotate): Use exg when rotating by 8.

From-SVN: r50882
2002-03-16 14:03:59 +01:00
Stephane Carrez 840e2ff109 m68hc11-protos.h (ix_reg): Declare.
* config/m68hc11/m68hc11-protos.h (ix_reg): Declare.
	* config/m68hc11/m68hc11.md ("addsi3"): Use general_operand for sources.
	(splits): Remove unused add splits.
	("*addhi3_68hc12"): Tune constraints.
	("addhi_sp"): Try to use X instead of Y in all cases and if the
	constant fits in 8-bits and D is dead use abx/aby instructions.
	("*addhi3"): Remove extern declaration of ix_reg.
	("*subsi3"): Optimize and provide new split.
	("subhi3"): Cleanup.
	("*subhi3_sp"): Avoid saving X if we know it is dead.
	(arith splits): For 68hc12 save the address register on the stack
	and do the arithmetic operation with a pop.

From-SVN: r50880
2002-03-16 13:52:20 +01:00
Stephane Carrez 3c9a5efec9 m68hc11.md ("*movqi_68hc12"): Fix constraints, avoid allocating QImode in address registers.
* config/m68hc11/m68hc11.md ("*movqi_68hc12"): Fix constraints, avoid
	allocating QImode in address registers.
	("*movqi_m68hc11"): Likewise.

From-SVN: r50878
2002-03-16 13:40:52 +01:00
Jan Hubicka e41f33923b * cfgcleanup.c (cleanup_cfg): Fix updating of liveness.
From-SVN: r50876
2002-03-16 12:01:15 +00:00
Neil Booth 576786b00f cppinit.c (print_help): Display -MD and -MMD.
* cppinit.c (print_help): Display -MD and -MMD.
	Don't display usage string.  Update assertion syntax and
	typo.
	(COMMAND_LINE_OPTIONS): Remove OPT_MD, OPT_MMD.
	(cpp_handle_option): Update.

From-SVN: r50874
2002-03-16 10:57:28 +00:00
GCC Administrator be09037bdd Daily bump.
From-SVN: r50873
2002-03-16 08:18:16 +00:00
Eric Christopher 544013420c mips.md (movdf_internal2): Add two new move constraints.
2002-03-15  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips.md (movdf_internal2): Add two new move constraints.
	Fix register preference on last change.
	* config/mips/mips.c (mips_return_in_memory): New function.
	* config/mips/mips.h (RETURN_IN_MEMORY): Use.
	* config/mips/mips-protos.h: Declare.
	* config/mips/abi64.h (RETURN_IN_MEMORY): Remove. Add to above.
	* config/mips/elf64.h: Add #ifndef/#endif brackets around defaults.

From-SVN: r50869
2002-03-16 08:00:45 +00:00
Chris Demetriou 1ac458d486 mips.h (SUBTARGET_CPP_SIZE_SPEC): Provide an MEABI case for each definition of SUBTARGET_CPP_SIZE_SPEC...
2002-03-15  Chris Demetriou  <cgd@broadcom.com>

        * config/mips/mips.h (SUBTARGET_CPP_SIZE_SPEC): Provide an
        MEABI case for each definition of SUBTARGET_CPP_SIZE_SPEC,
        and define it so that regardless of target CPU size,
        __SIZE_TYPE__ and __PTRDIFF_TYPE__ are defined in terms
        of "int" rather than "long."

From-SVN: r50868
2002-03-15 20:16:15 -08:00
Richard Henderson 0ba2075960 * init.c (build_new_1): Use size_binop instead of cp_build_binary_op.
From-SVN: r50867
2002-03-15 17:25:53 -08:00
Mark Mitchell 6fb2cd7be4 qualttp20.C: Remove unnecessary error tags.
* g++.dg/template/qualttp20.C: Remove unnecessary error tags.
	* g++.dg/template/qualttp3.C: Likewise.
	* g++.dg/template/qualttp4.C: Likewise
	* g++.dg/template/qualttp5.C: Likewise
	* g++.dg/template/qualttp6.C: Likewise
	* g++.dg/template/qualttp7.C: Likewise
	* g++.dg/template/qualttp8.C: Likewise
	* g++.dg/template/recurse.C: Likewise.

From-SVN: r50863
2002-03-16 01:00:50 +00:00
Anthony Green 2d933a0bf9 Commit embedded patch approved Feb 17
From-SVN: r50860
2002-03-16 00:37:21 +00:00
Richard Henderson 1fcd592b88 alpha.c (alpha_va_arg): Manipulate the type size as a tree.
* config/alpha/alpha.c (alpha_va_arg): Manipulate the type
        size as a tree.

From-SVN: r50857
2002-03-15 15:13:04 -08:00
Alexandre Oliva e67e72c7cb ltmain.sh (taglist): Initialized.
* ltmain.sh (taglist): Initialized.  Don't let `CC' tag out of it.
(relink_command): Added --tag flags.
(mode=install): If relinking fails; error out.

From-SVN: r50855
2002-03-15 23:02:08 +00:00
Alexandre Oliva 201d203b79 Makefile.am (jv_convert_LDADD): Don't list libraries that are already implicitly brought in from libgcj.la.
* Makefile.am (jv_convert_LDADD): Don't list libraries that are
already implicitly brought in from libgcj.la.
(gij_LDADD, rmic_LDADD, rmiregistry_LDADD): Likewise.
* Makefile.in: Rebuilt.

From-SVN: r50853
2002-03-15 22:46:58 +00:00
Eric Blake 89a1ba6d32 THANKS: Fix punctuation, alphabetization.
2002-03-15  Eric Blake  <ebb9@email.byu.edu>

	* THANKS: Fix punctuation, alphabetization.

From-SVN: r50851
2002-03-15 22:36:05 +00:00
Stephane Carrez a0df6910e3 m68hc11.md ("tstqi_1"): Try to use ldab instead of tst.
* config/m68hc11/m68hc11.md ("tstqi_1"): Try to use ldab instead of tst.
	("tstqi" split): Avoid using memory for tstqi on address register.
	(splits): Remove constraints.
	("cmphi_1_hc12"): New from "cmphi_1" and tuned for 68HC12.
	("cmpdf", "cmpsf"): Remove since not used.
	("*tbeq", "*tbne", "*tbeq8", "*tbne8"): Also look in cc_status.value2.
	(peephole2): New peepholes to optimize tstqi and pre inc/dec addressing.

From-SVN: r50849
2002-03-15 23:33:30 +01:00
Stephane Carrez 015a2e5904 m68hc11.md ("negsi2"): Optimize inline case.
* config/m68hc11/m68hc11.md ("negsi2"): Optimize inline case.
	("neghi2"): Tighten constraints.
	("one_cmplsi2"): Optimize and simplify split.
	* config/m68hc11/larith.asm (__negsi2): Likewise for library.

From-SVN: r50847
2002-03-15 23:22:56 +01:00
Stephane Carrez cd28557ca2 m68hc11.md ("logicalsi3_zexthi"): Fix constraints and split of AND operation to clear the upper bits.
* config/m68hc11/m68hc11.md ("logicalsi3_zexthi"): Fix constraints
	and split of AND operation to clear the upper bits.
	("*logicalsi3_zextqi"): Likewise.
	("*logicallhi3_zexthi_ashift8"): Likewise.
	("*logicalsi3_silshr16"): Likewise.
	("logicalsi3_silshl16"): Likewise.
	("anddi3", "iordi3", "xordi3" splits): Remove constraints.

From-SVN: r50845
2002-03-15 23:13:07 +01:00
Stephane Carrez 932657df23 m68hc11.c (m68hc11_symbolic_p): New function.
* config/m68hc11/m68hc11.c (m68hc11_symbolic_p): New function.
	(m68hc11_indirect_p): New function.
	(m68hc11_override_options): Must set MASK_NO_DIRECT_MODE for 68HC12.
	(m68hc11_gen_highpart): Use TARGET_NO_DIRECT_MODE instead of
	TARGET_M6812.
	(asm_print_register): Likewise.
	* config/m68hc11/m68hc11-protos.h (m68hc11_symbolic_p): Declare.
	(m68hc11_indirect_p): Declare.
	* config/m68hc11/m68hc11.h (EXTRA_CONSTRAINT): New constraint 'R', 'Q'.
	(TARGET_NO_DIRECT_MODE, TARGET_RELAX): New.
	(TARGET_SWITCHES): New option -mrelax.
	* config/m68hc11/m68hc11.md ("andsi3"): Allow soft register for
	destination.
	("iorsi3", "xorsi3"): Likewise.
	("andhi3", "andqi3", "iorhi3", "iorqi3"): Use a define_expand.
	("*andhi3_mem"): New to handle destination in memory with bclr
	and a scratch register.
	("*andqi3_mem", "*iorhi3_mem", "*iorqi3_mem"): Likewise.
	("*andhi3_const"): New when operand2 is constant.
	("*andqi3_const", "*iorhi3_const", "*iorqi3_const"): Likewise.
	("*andhi3_gen"): Cleanup of the old "andhi3".
	("*andqi3_gen", "*iorhi3_gen", "*iorqi3_gen"): Likewise.
	("xorqi3"): Update constraints.

From-SVN: r50843
2002-03-15 23:04:49 +01:00
Tom Tromey 60f32585da re PR libgcj/5944 (Use of uint32_t breaks libgcj bootstrap on Solaris 2.5.1)
2002-03-15  Tom Tromey  <tromey@redhat.com>
	    Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>

	Fix for PR libgcj/5944.
	* gnu/gcj/io/shs.h: Define uint8_t and uint32_t.

Co-Authored-By: Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>

From-SVN: r50842
2002-03-15 21:59:12 +00:00
Stephane Carrez fdffea1abb m68hc11.c (m68hc11_small_indexed_indirect_p): Look for reg_equiv_memory_loc when the operand is a register that does not get...
* config/m68hc11/m68hc11.c (m68hc11_small_indexed_indirect_p): Look
	for reg_equiv_memory_loc when the operand is a register that does
	not get a hard register (stack location).
	(tst_operand): After reload, accept all memory operand.
	(symbolic_memory_operand): Fix detection of symbolic references.
	* config/m68hc11/m68hc11.h (VALID_CONSTANT_OFFSET_P): For 68HC12
	accept symbols and any constant.

From-SVN: r50839
2002-03-15 22:54:58 +01:00
Stephane Carrez 6272bc6859 m68hc11.c (emit_move_after_reload): Add a REG_INC note on the insn that sets the soft frame register.
* config/m68hc11/m68hc11.c (emit_move_after_reload): Add a REG_INC
	note on the insn that sets the soft frame register.
	(must_parenthesize): ix and iy are also reserved names.
	(print_operand_address): One more place where parenthesis are required
	to avoid confusion with register names.
	(m68hc11_gen_movhi): Allow push of stack pointer.
	(m68hc11_check_z_replacement): Fix handling of parallel with a
	clobber.
	(m68hc11_z_replacement): Must update the REG_INC notes to tell what
	the replacement register is.
	* config/m68hc11/m68hc11.h (REG_CLASS_CONTENTS): Switch Z_REGS
	and D8_REGS classes.
	(MODES_TIEABLE_P): All modes are tieable except QImode.

From-SVN: r50837
2002-03-15 22:44:49 +01:00
Stephane Carrez 1d2d9def82 larith.asm (___adddi3): Optimize saving of result.
* config/m68hc11/larith.asm (___adddi3): Optimize saving of result.
	(___subdi3): Likewise.
	(__mulsi3, __mulhi32): Avoid using _.tmp scratch location.
	(__map_data_section): Optimize 68hc11 case.

From-SVN: r50835
2002-03-15 22:36:27 +01:00
Stephane Carrez a0ccf503a8 m68hc11.c (m6812_cost): Make cost of add higher than a shift to avoid adding a register with itself.
* config/m68hc11/m68hc11.c (m6812_cost): Make cost of add higher
	than a shift to avoid adding a register with itself.
	(m68hc11_memory_move_cost): Take into account NO_REGS.
	(m68hc11_register_move_cost): Update and use memory move cost
	for soft registers.
	(m68hc11_address_cost): Make cost of valid offset not 0 so that
	it gives more opportunities to cse to optimize.
	* config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Pass the mode.
	* config/m68hc11/m68hc11-protos.h (m68hc11_register_move_cost): Update.

From-SVN: r50833
2002-03-15 22:27:01 +01:00
Tom Tromey 45061554e7 Updated THANKS
From-SVN: r50832
2002-03-15 20:52:04 +00:00
Mark Mitchell 6e4ae815bd c-common.c (statement_code_p): Handle CLEANUP_STMT.
* c-common.c (statement_code_p): Handle CLEANUP_STMT.
	* c-common.def (CLEANUP_STMT): New tree node.
	* c-common.h (CLEANUP_DECL): New macro.
	(CLEANUP_EXPR): Likewise.
	* c-semantics.c (expand_stmt): Handle CLEANUP_STMT.
	* tree-dump.c (dequeue_and_dump): Handle CLEANUP_STMT.
	* tree-inline.c (initialize_inlined_parameters): Clean up
	new local variables.

	* cp-tree.h (CLEANUP_DECL): Remove.
	(CLEANUP_EXPR): Likewise.
	* decl.c (destroy_local_var): Simplify.
	(maybe_build_cleanup): Tidy.
	* dump.c (cp_dump_tree): Remove handling of CLEANUP_STMT.
	* semantics.c (cp_expand_stmt): Likewise.
	* cp/tree.c (cp_statement_code_p): Likewise.

	* g++.dg/opt/dtor1.C: New test.

From-SVN: r50830
2002-03-15 20:08:39 +00:00
Eric Blake 08bcc159d9 For PR java/5902:
2002-03-15  Eric Blake  <ebb9@email.byu.edu>

	For PR java/5902:
	* libjava.compile/PR5902.java: Does not need to execute.
	For PR java/5913:
	* libjava.compile/PR5913.java: Ditto.

From-SVN: r50829
2002-03-15 19:17:39 +00:00
Jakub Jelinek a42519bebd re PR bootstrap/4128 (Bootstrap on solaris2.7 fails compiling libf2c/libF77/l_gt.c)
PR bootstrap/4128
	* config/sparc/sparc.c (gen_v9_scc): Move early clobber test
	before movrXX only, use reg_overlap_mentioned_p.
	Only special case NE if just one insn can be generated.

	* gcc.c-torture/compile/20020315-1.c: New test.

From-SVN: r50826
2002-03-15 19:51:36 +01:00
Jason Merrill 1540944868 varasm.c (assemble_variable): Call resolve_unique_section before checking DECL_SECTION_NAME.
* varasm.c (assemble_variable): Call resolve_unique_section before
        checking DECL_SECTION_NAME.  Use zeros for a decl with DECL_INITIAL
        of error_mark_node.

From-SVN: r50824
2002-03-15 13:44:14 -05:00
Richard Earnshaw 32135a8c0c * gcc.dg/weak-1.c: Fix scan tests.
From-SVN: r50821
2002-03-15 18:32:37 +00:00
Jason Merrill 6da794e835 re PR c++/5857 (C++ duplicate_decls shouldn't use common_type)
PR c++/5857
        * decl.c (duplicate_decls): Use merge_types instead of common_type.
        * typeck.c (common_type): Just hand off to
        type_after_usual_arithmetic_conversions and
        composite_pointer_type.
        (merge_types): New fn.
        (commonparms): Use it instead of common_type.
        (type_after_usual_arithmetic_conversions): Also handle COMPLEX_TYPE.
        (composite_pointer_type): Also handle attributes.
        * cp-tree.h: Declare merge_types.

From-SVN: r50820
2002-03-15 13:31:55 -05:00
Anthony Green b3b77addd0 Remove useless mingw32 configury
From-SVN: r50819
2002-03-15 18:16:34 +00:00
Anthony Green e2ea015c1c Install libgcj-config.h in a better place.
From-SVN: r50817
2002-03-15 18:03:49 +00:00
Anthony Green 512e32d289 Address mingw32 issues.
From-SVN: r50816
2002-03-15 18:01:38 +00:00
Anthony Green 8d39b4476f Fix gcj -R.
From-SVN: r50815
2002-03-15 18:00:22 +00:00
Richard Earnshaw 3a4edb4417 re PR target/5170 (Supicious code in arm.md)
PR target/5170
* arm.md (split pattern for thumb shiftable immediates): Add comment
explaining non-obvious test.

From-SVN: r50814
2002-03-15 17:06:58 +00:00
Richard Earnshaw 32defa36b0 re PR target/5712 ([ARM] bad ADR generated)
PR target/5712
* arm.md (movaddr, movaddr_insn): Delete.

From-SVN: r50809
2002-03-15 16:32:26 +00:00
Paolo Carlini 53723190aa 2002-03-15 Paolo Carlini <pcarlini@unitus.it>
* testsuite/22_locale/collate_members_char.cc
	(test01): compare the result of collate::compare with
	that of collate::transform + string::compare, not with
	that of collate::transform + collate::compare.
	(test01): values returned by collate::compare are
	normalized, therefore test against +-1.
	* testsuite/22_locale/collate_members_wchar_t.cc: Ditto.

From-SVN: r50808
2002-03-15 16:05:56 +00:00
Jason Merrill 190f491640 relocate tests to appropriate directories
From-SVN: r50806
2002-03-15 06:07:04 -05:00
Jason Merrill 81a60e6ca0 add comments
From-SVN: r50805
2002-03-15 05:18:21 -05:00
Jason Merrill 98ef4163bc fix comment typo
From-SVN: r50804
2002-03-15 05:17:16 -05:00
Jason Merrill 5cc90635da toplev.c (wrapup_global_declarations): Clarify variable handling.
* toplev.c (wrapup_global_declarations): Clarify variable handling.
        -fkeep-static-consts doesn't apply to comdats.

cp/
        * decl.c (make_rtl_for_nonlocal_decl): Also defer COMDAT
        variables.
        * decl2.c (maybe_make_one_only): Also mark the decl as needed.

From-SVN: r50802
2002-03-15 04:54:42 -05:00
GCC Administrator 0f9b56dcb2 Daily bump.
From-SVN: r50801
2002-03-15 08:17:02 +00:00
Richard Henderson ecb0eecefb c-decl.c: Include c-pragma.h.
* c-decl.c: Include c-pragma.h.
        (start_decl, start_function): Invoke maybe_apply_pragma_weak.
        (finish_function): Tidy.
        * c-pragma.c: Include c-common.h.
        (pending_weaks, apply_pragma_weak, maybe_apply_pragma_weak): New.
        (handle_pragma_weak): Use them.
        (init_pragma): Register pending_weaks.
        * c-pragma.h (maybe_apply_pragma_weak): Declare.
        * print-tree.c (print_node): Print DECL_WEAK.
        * varasm.c (mark_weak_decls): Remove.
        (remove_from_pending_weak_list): Remove.
        (add_weak): Remove.
        (asm_emit_uninitialised): Call globalize_decl for weak commons.
        (weak_decls): Make a tree_list.
        (declare_weak): Cons weak_decls directly.
        (globalize_decl): Remove weak_decls elements directly.
        (weak_finish): Simplify weak_decls walk.  Don't weaken unused
        symbols.  Don't pretend to handle aliases.
        (init_varasm_once): Update weak_decls registry.
	* Makefile.in: Update dependencies.

        * cp/decl.c: Include c-pragma.h.
        (start_decl, start_function): Invoke maybe_apply_pragma_weak.
	* cp/Make-lang.in: Update dependencies.

	* gcc.dg/weak-1.c: New.

From-SVN: r50797
2002-03-14 23:11:14 -08:00
Richard Henderson 98d2b17e0c re PR target/5312 ([IA64] ICE in itanium_reorder at config/ia64/ia64.c:5917)
PR target/5312
        * config/ia64/ia64.c: Include tm_p.h last.
        (gen_nop_type): Remove duplicate definition.
        (cycle_end_fill_slots): Set sched_data for second L slot.
        (maybe_rotate): Call cycle_end_fill_slots to fill in nop slots.
        (nop_cycles_until): Fix typos.

        * gcc.dg/20020313-1.c: New.

From-SVN: r50796
2002-03-14 22:50:26 -08:00
Hans-Peter Nilsson a541f1aa81 20020312-2.c [__MMIX__]: No pic register.
* gcc.dg/20020312-2.c [__MMIX__]: No pic register.
	* gcc.c-torture/compile/981006-1.x: Don't use -fpic on cris-*-elf*
	cris-*-aout* mmix-*-*.
	* g++.old-deja/g++.other/local-alloc1.C: Skip on cris-*-elf*
	cris-*-aout* mmix-*-*.
	* g++.dg/debug/debug3.C: Expect warning for unsupported -fpic on
	cris-*-elf* cris-*-aout* and mmix-*-*.
	* gcc.dg/20001009-1.c: Ditto.
	* gcc.dg/20010912-1.c: Ditto.
	* gcc.dg/20020122-4.c: Ditto.
	* gcc.dg/inline-2.c: Ditto.

From-SVN: r50794
2002-03-15 05:36:43 +00:00
Jakub Jelinek f6562b3792 re PR c++/5908 (Warning regression wrt. gcc 3.0)
PR c++/5908

From-SVN: r50793
2002-03-15 04:16:42 +01:00
Jakub Jelinek f2f4927e3d re PR rtl-optimization/5891 (ICE compiling SPEC fp test with -funroll-loops on ia64)
PR optimization/5891
	* unroll.c (copy_loop_body) [CALL_INSN]: Copy SIBLING_CALL_P flag.

From-SVN: r50791
2002-03-15 04:06:26 +01:00
David Mosberger 5025a549a1 unwind-ia64.c: Handle copy_state and label_state descriptors correctly.
* config/ia64/unwind-ia64.c: Handle copy_state and label_state
	  descriptors correctly.

From-SVN: r50789
2002-03-15 01:55:49 +00:00