Commit Graph

66179 Commits

Author SHA1 Message Date
Ben Elliston
99ff9e7a15 * gcc.misc-tests/options.exp: New test.
From-SVN: r95879
2005-03-04 16:15:52 +11:00
Ben Elliston
ee4c708e37 gcc.c (option_map): Add --coverage.
* gcc.c (option_map): Add --coverage.
	(LINK_COMMAND_SPEC): Pass -lgcov for `coverage'.
	(cc1_options): Pass -fprofile-arcs -ftest-coverage for `coverage'.
	* config/darwin.h: Pass -lgcov for `coverage'.
	* doc/invoke.texi (Debugging Options): Document --coverage.

From-SVN: r95878
2005-03-04 15:43:03 +11:00
Kazu Hirata
c7d1b44986 * gcse.c (bypass_block): Use find_edge wherever possible.
From-SVN: r95873
2005-03-04 03:14:42 +00:00
Daniel Berlin
3c0d102013 re PR debug/20253 (Macro debug info broken due to lexer change)
2005-03-03  Daniel Berlin <dberlin@dbrelin.org>

	Fix PR debug/20253

	* c-opts.c (c_common_parse_file): Call start_source_file
	and end_source_file at the approriate times.

	* dwarf2out.c (dwarf2out_finish): Don't auto-end
	the main file, it will be done for us now.

From-SVN: r95872
2005-03-04 03:08:10 +00:00
Kazu Hirata
9bdae6af0e fold-const.c (fold_ternary): New.
* fold-const.c (fold_ternary): New.
	(fold): Call fold_ternary on ternary expressions.  Remove
	handling of ternary expressions.

From-SVN: r95871
2005-03-04 02:50:36 +00:00
James A. Morrison
8d06c80914 re PR tree-optimization/15784 (fold misses binary optimization)
2005-03-03  James A. Morrison  <phython@gcc.gnu.org>

        PR tree-optimization/15784
        * fold-const.c (fold): Fold ~A + 1 to -1.  Fold -A - 1
        and -1 - A to ~A.

From-SVN: r95870
2005-03-04 02:48:30 +00:00
Geoffrey Keating
3159b178b0 pr17133.c: New.
* gcc.c-torture/execute/pr17133.c: New.
	* gcc.c-torture/compile/20050303-1.c: New.

From-SVN: r95865
2005-03-04 01:38:56 +00:00
David Edelsohn
57a71826b5 predicates.md (branch_comparison_operator): Convert from C block to conditional format.
* config/rs6000/predicates.md (branch_comparison_operator):
        Convert from C block to conditional format.

From-SVN: r95864
2005-03-03 20:33:45 -05:00
Joseph Myers
1d3206c160 be.po, [...]: Update.
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po,
	sv.po, tr.po: Update.

[[Split portion of a mixed commit.]]

From-SVN: r95861.2
2005-03-04 00:24:40 +00:00
Joseph Myers
06131acc60 be.po, [...]: Update.
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po,
	sv.po, tr.po: Update.

From-SVN: r95860
2005-03-04 00:18:16 +00:00
GCC Administrator
ec5a720845 Daily bump.
From-SVN: r95858
2005-03-04 00:16:26 +00:00
Tobias Schlüter
4b9b6210d6 trans-intrinsic.c (gfc_get_symbol_for_expr): Fix comment typo, clarify comment.
* trans-intrinsic.c (gfc_get_symbol_for_expr): Fix comment typo,
clarify comment.

From-SVN: r95852
2005-03-04 01:02:22 +01:00
David Billinghurst
ad16e76bfd assert4.c: Fix for cygwin
2005-03-04  David Billinghurst  <David.Billinghurst@riotinto.com>

	* gcc.dg/cpp/assert4.c:  Fix for cygwin

From-SVN: r95849
2005-03-03 23:46:43 +00:00
Thomas Fitzsimmons
4300c4212e re PR libgcj/20292 (new test case PR16923 fails)
2005-03-03  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/20292
	* testsuite/libjava.jni/jni.exp
	(gcj_jni_invocation_compile_c_to_binary): Add -I. -I.. to compile
	flags.
	(gcj_jni_invocation_test_one): Add -L../.libs to cxx flags.

From-SVN: r95848
2005-03-03 22:17:26 +00:00
Jan Hubicka
59c982fe93 tree-dfa.c (add_referenced_var): Don't walk initializer of external and non-constant public variables.
* tree-dfa.c (add_referenced_var): Don't walk initializer of external
	and non-constant public variables.

From-SVN: r95844
2005-03-03 19:53:47 +00:00
David Ayers
e59ef5430f hash.h (OBJC_IGNORE_DEPRECATED_API): Update deprecated version reference.
2005-03-03  David Ayers  <d.ayers@inode.at>

	* objc/hash.h (OBJC_IGNORE_DEPRECATED_API): Update deprecated
	version reference.  Correct typo.

From-SVN: r95840
2005-03-03 18:25:04 +00:00
Benjamin Kosnik
2e8f8105a6 functional: Convert relative path.
2005-03-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/tr1/functional: Convert relative path.

	* docs/doxygen/user.cfg.in: Add tr1 includes.

From-SVN: r95838
2005-03-03 17:45:44 +00:00
Kazu Hirata
4b58fc4d28 fold-const.c (fold_unary): Avoid directly using the original expression t as much as possible.
* fold-const.c (fold_unary): Avoid directly using the original
	expression t as much as possible.

From-SVN: r95837
2005-03-03 17:30:12 +00:00
Kazu Hirata
af85b8e458 * fold-const.c (fold): Remove handling of unary expressions.
From-SVN: r95836
2005-03-03 17:27:54 +00:00
Kazu Hirata
4430da7ffc tree-phinodes.c (remove_phi_node): Clean up by factoring out calls to release_ssa_name and release_phi_node.
* tree-phinodes.c (remove_phi_node): Clean up by factoring out
	calls to release_ssa_name and release_phi_node.

From-SVN: r95835
2005-03-03 17:15:36 +00:00
Kazu Hirata
8fb790fd3f cfgexpand.c (construct_exit_block): Use EDGE_PRED instead of EDGE_I.
* cfgexpand.c (construct_exit_block): Use EDGE_PRED instead of
	EDGE_I.

From-SVN: r95834
2005-03-03 16:22:38 +00:00
David Ayers
09f8755b65 MAINTAINERS (Write After Approval): Add myself.
2005-03-03  David Ayers  <d.ayers@inode.at>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r95832
2005-03-03 14:46:49 +00:00
Kazu Hirata
229cc11f74 tree-cfg.c (stmt_starts_bb_p): Clean up by replacing code with LABEL_EXPR.
* tree-cfg.c (stmt_starts_bb_p): Clean up by replacing code
	with LABEL_EXPR.

From-SVN: r95831
2005-03-03 14:29:00 +00:00
Roger Sayle
9550206bcb jump.c (redirect_exp_1): If nlabel is a NULL pointer create a RETURN rtx...
* jump.c (redirect_exp_1): If nlabel is a NULL pointer create a
	RETURN rtx, and not a LABEL_REF containing a NULL pointer.

Co-Authored-By: Andrew Pinski <pinskia@physics.uc.edu>

From-SVN: r95830
2005-03-03 14:16:05 +00:00
Paolo Carlini
442dca704c type_traits: Implemenet is_polymorphic.
2005-03-03  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Implemenet is_polymorphic.
	(is_empty): Minor tweaks.
	* testsuite/testsuite_tr1.h: Add test types.
	* testsuite/tr1/4_metaprogramming/type_properties/
	is_polymorphic/is_polymorphic.cc: New.
	* testsuite/tr1/4_metaprogramming/type_properties/
	is_polymorphic/typedefs.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/composite_type_traits/
	is_union_or_class/is_union_or_class.cc: Add tests.

From-SVN: r95829
2005-03-03 13:52:20 +00:00
Hans-Peter Nilsson
2a60a1b116 Fix my last entry
From-SVN: r95825
2005-03-03 04:41:55 +00:00
Hans-Peter Nilsson
f60c7155c1 Describe special registers SRP and MOF as allocatable registers.
* config/cris/cris.c (cris_md_asm_clobbers): New function.
	(TARGET_MD_ASM_CLOBBERS): Define to cris_md_asm_clobbers.
	(cris_conditional_register_usage): Enable CRIS_MOF_REGNUM if
	TARGET_HAS_MUL_INSNS.
	(cris_print_operand) <case 'd'>: New case.
	<case REG>: Allow CRIS_MOF_REGNUM and CRIS_SRP_REGNUM.
	* config/cris/cris.h (CRIS_PC_REGNUM, CRIS_SRP_REGNUM): Don't
	define.
	(FIRST_PSEUDO_REGISTER, FIXED_REGISTERS, CALL_USED_REGISTERS)
	(REG_ALLOC_ORDER): Update for MOF.
	(enum reg_class): New members MOF_REGS, GENERAL_REGS and
	SPECIAL_REGS.
	(GENERAL_REGS): No longer a define of ALL_REGS.
	(REGNO_REG_CLASS, REG_CLASS_CONTENTS, REG_CLASS_NAMES)
	(PREFERRED_RELOAD_CLASS, REGISTER_NAMES, DBX_REGISTER_NUMBER):
	Adjust accordingly.
	(CRIS_SPECIAL_REGS_CONTENTS): New macro.
	(REG_CLASS_FROM_LETTER): Allocate 'h' and 'x'.
	(SECONDARY_RELOAD_CLASS): Define.
	(STACK_POINTER_REGNUM): Define as CRIS_SP_REGNUM.
	(FRAME_POINTER_REGNUM): Define as CRIS_FP_REGNUM.
	(ARG_POINTER_REGNUM): Define as CRIS_AP_REGNUM.
	(STATIC_CHAIN_REGNUM): Define as CRIS_STATIC_CHAIN_REGNUM.
	(REGISTER_MOVE_COST): Define.
	(PIC_OFFSET_TABLE_REGNUM): Define in terms of CRIS_GOT_REGNUM.
	* config/cris/cris.md (CRIS_GOT_REGNUM, CRIS_STATIC_CHAIN_REGNUM)
	(CRIS_FP_REGNUM, CRIS_SP_REGNUM, CRIS_SRP_REGNUM, CRIS_AP_REGNUM)
	(CRIS_MOF_REGNUM): New define_constants.
	("*movsi_internal", "movhi", "movqi", "movsf"): Add alternatives for
	special registers.
	("reload_inhi", "reload_outhi", "reload_inqi",
	("umulhisi3", "umulqihi3", "mulsi3", "mulqihi3", "mulhisi3")
	("mulsidi3", "umulsidi3", "smulsi3_highpart", "umulsi3_highpart"):
	Adjust for MOF being properly described as a register.
	(indir_to_reg_split): Name this split.  Conditionalize on the
	destination register being a general register.
	(movei): Conditionalize on on operands 0 and 1 having the same
	register class.

From-SVN: r95823
2005-03-03 03:53:29 +00:00
Alan Modra
768875a86f re PR target/20277 (-mcpu=power4 vs. -maltivec)
PR target/20277
	* config/rs6000/rs6000.c (rs6000_override_options): Don't allow
	-mcpu to override any other explicitly given flags.

From-SVN: r95820
2005-03-03 11:33:28 +10:30
Kaveh R. Ghazi
cea914801f jcf-io.c (caching_stat): Use __extension__ to avoid pedantic warning.
* jcf-io.c (caching_stat): Use __extension__ to avoid pedantic
	warning.
	* Make-lang.in: Don't elide warnings in jcf-io.c.

From-SVN: r95819
2005-03-03 00:27:03 +00:00
GCC Administrator
79a8dc5b6a Daily bump.
From-SVN: r95817
2005-03-03 00:17:15 +00:00
J"orn Rennecke
0a63483247 recog.c (verify_changes, [...]): New functions, broken out of apply_change_group.
* recog.c (verify_changes, confirm_change_group): New functions,
	broken out of apply_change_group.
	(apply_change_group): Use them.
	* recog.h (verify_change, confirm_change_group): Declare.
	* rtl.h (redirect_jump_2): Declare.
	* jump.c (redirect_exp, invert_exp): Delete.
	(invert_exp_1): Take second parameter.  Return value.  Changed caller.
	(redirect_jump_2): New function, broken out of redirect_jump.
	(redirect_jump): Use redirect_jump_1 and redirect_jump_2.
	(invert_jump): Use invert_jump_1 and redirect_jump_2.
	* ifcvt.c (dead_or_predicable): Use redirect_jump_2.

From-SVN: r95813
2005-03-02 22:02:32 +00:00
Geoffrey Keating
7df74013f1 varasm.c (named_section): Use xstrdup rather than doing it by hand.
* varasm.c (named_section): Use xstrdup rather than doing it by
	hand.

From-SVN: r95812
2005-03-02 21:33:44 +00:00
Geoffrey Keating
0aca3a6145 * config/darwin8.h (LIB_SPEC): Switch -lmx and -lSystem.
From-SVN: r95805
2005-03-02 20:33:45 +00:00
Devang Patel
2af51b8831 Undo PR tree-optimization/18815 fix.
From-SVN: r95803
2005-03-02 12:07:45 -08:00
Alexandre Oliva
713101a65e name-lookup.c (push_overloaded_decl): Don't error if the new decl matches the old one.
gcc/cp/ChangeLog:
* name-lookup.c (push_overloaded_decl): Don't error if the new
decl matches the old one.
* decl.c (redeclaration_error_message): Likewise.
gcc/testsuite/ChangeLog:
* g++.dg/overload/using2.C: New.

From-SVN: r95798
2005-03-02 19:55:52 +00:00
Devang Patel
ac0bd8018d re PR tree-optimization/18815 (Tree if-conversion screws up cfg very badly)
PR tree-optimization/18815
       * tree-if-conv.c (combine_blocks): Adjust loop header edges for
       loops with zero exit edges.

From-SVN: r95796
2005-03-02 11:45:25 -08:00
David Ayers
270a1283e6 re PR libobjc/19024 (name collisions libobjc/libmysqlclient)
2005-03-02  David Ayers  <d.ayers@inode.at>

        PR libobjc/19024
        * Makefile.in (OBJS): Add hash_compat.lo.
        (OBJS_GC): Add hash_compat_gc.lo.
        (hash_compat_gc.lo): New target and rule.
        * objc/hash.h (hash_new, hash_delete, hash_add, hash_remove)
        (hash_next, hash_value_for_key, hash_is_key_in_hash)
        (hash_ptr, hash_string, compare_ptrs, compare_strings): Prefix
        with objc_.  Add deprecated non prefixed inlined versions.
        (OBJC_IGNORE_DEPRECATED_API): New macro to hide deprecated
        declarations.
        * hash.c (hash_new, hash_delete, hash_add, hash_remove, hash_next)
        (hash_value_for_key, hash_is_key_in_hash): Prefix with objc_ and
        update callers.
        * hash_compat.c: New file.
        * archive.c: Update callers.
        * init.c: Likewise.
        * selector.c: Likewise.
        * libobjc.def: Add objc_ versions of hash functions.

From-SVN: r95793
2005-03-02 11:37:03 -08:00
Kazu Hirata
13396b14c0 tree-ssa-dom.c (tree_ssa_dominator_optimize): Call free_dominance_info only when needed.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Call
	free_dominance_info only when needed.

From-SVN: r95791
2005-03-02 19:12:55 +00:00
Kazu Hirata
adf4a335e3 cfg.c (connect_src, [...]): New.
* cfg.c (connect_src, connect_dest, disconnect_src,
	disconnct_dest): New.
	(unchecked_make_edge, remove_edge, redirect_edge_succ,
	redirect_edge_pred): Use the new functions.

From-SVN: r95790
2005-03-02 19:09:03 +00:00
David Edelsohn
94dcded2d4 re PR target/20276 (64bit PPC target uses __adddi3)
PR target/20276
	* config/rs6000/predicates.md (reg_or_cint64_operand): Fix typo.
	(reg_or_sub_cint64_operand): Same.

From-SVN: r95789
2005-03-02 13:57:30 -05:00
Jeff Law
6802357028 tree-ssa-dom.c (tree_ssa_dominator_optimize): Fix setting of CFG_ALTERED in the main DOM iteration loop.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Fix setting of
        CFG_ALTERED in the main DOM iteration loop.

From-SVN: r95788
2005-03-02 11:54:34 -07:00
Mark Mitchell
9560cbde52 re PR c++/19916 (Segmentation fault in __static_initialization_and_destruction_0)
PR c++/19916
	* varasm.c (initializer_constant_valid_p): Allow conversions
	between OFFSET_TYPEs.  Tidy.

	PR c++/19916
	* g++.dg/init/ptrmem2.C: New test.

From-SVN: r95787
2005-03-02 17:13:09 +00:00
Hans-Peter Nilsson
bf95bc65e0 cris.md ("return"): Remove epilogue delay list sanity check.
* config/cris/cris.md ("return"): Remove epilogue delay list
	sanity check.

From-SVN: r95786
2005-03-02 16:48:29 +00:00
Daniel Jacobowitz
f92ba6d110 linux-elf.h (ARM_FUNCTION_PROFILER): Do not use (PLT) for Thumb.
* config/arm/linux-elf.h (ARM_FUNCTION_PROFILER): Do not use (PLT)
	for Thumb.
	* config/arm/netbsd-elf.h (ARM_FUNCTION_PROFILER): Likewise.

From-SVN: r95785
2005-03-02 16:27:42 +00:00
Kazu Hirata
659d8efa54 fold-const.c (fold_unary): New.
* fold-const.c (fold_unary): New.
	(fold): Call fold_unary on unary expressions.

From-SVN: r95783
2005-03-02 16:07:47 +00:00
Kazu Hirata
92fb2d32d5 PR middle-end/18029 and PR middle-end/18030
PR middle-end/18029 and PR middle-end/18030
	* expr.c (optimize_bitfield_assignment_op): Add a special case
	to handle BIT_IOR_EXPR and BIT_XOR_EXPR.

From-SVN: r95782
2005-03-02 16:04:50 +00:00
Kazu Hirata
613c5cd0c6 cfgloop.h, [...]: Update copyright.
* cfgloop.h, cfgloopanal.c, cfgloopmanip.c, conflict.c,
	loop-init.c, loop-unroll.c, print-tree.c, reg-notes.def,
	config/m68k/m68k.c, config/mips/mips.h,
	config/rs6000/rs6000-protos.h, doc/contrib.texi,
	doc/include/gcc-common.texi: Update copyright.

From-SVN: r95781
2005-03-02 14:03:44 +00:00
Douglas Gregor
3c2350009b functional (_Has_result_type): Cleanup.
2005-03-02  Douglas Gregor  <doug.gregor@gmail.com>

        * include/tr1/functional (_Has_result_type): Cleanup.
        (_Result_of_impl): Handle member data pointers correctly.
        (reference_wrapper): Support invocation.
        Move repetition code into new file include/tr1/repeat.h.
        * include/tr1/functional_iterate.h (reference_wrapper): Support
        invocation.  Cleanup long lines.
        * include/tr1/ref_wrap_iterate.h (reference_wrapper): Declare
        invocation operators.
        * include/tr1/repeat.h: Code repetition header.
        * include/Makefile.am: Add ref_wrap_iterate.h, repeat.h
        * include/Makefile.in: Add ref_wrap_iterate.h, repeat.h
        * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
        New test of reference_wrapper invocation.
        * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
        New test of reference_wrapper typedefs and base classes.
        * testsuite/tr1/3_function_objects/result_of.cc: Trivial cleanup
        (e-mail address).

2005-03-02  Douglas Gregor  <doug.gregor@gmail.com>

        * include/tr1/function (result_of): New class template.
        * include/tr1/functional/iterator.h: Implementation of TR1
        result_of.
        * testsuite/tr1/3_function_objects/result_of.cc: New test

From-SVN: r95778
2005-03-02 12:56:28 +00:00
Richard Guenther
2563c2248f cgraph.h (struct cgraph_edge): Add prev_caller and prev_callee fields.
2005-03-02  Richard Guenther  <rguenth@gcc.gnu.org>

	* cgraph.h (struct cgraph_edge): Add prev_caller and
	prev_callee fields.
	(cgraph_node_remove_callees): Export.
	* cgraph.c (cgraph_create_edge): Initialize prev_caller
	and prev_callee.
	(cgraph_edge_remove_callee): New function.
	(cgraph_edge_remove_caller): Likewise.
	(cgraph_remove_edge): Use.
	(cgraph_redirect_edge_callee): Likewise.
	(cgraph_node_remove_callees): New function.
	(cgraph_node_remove_callers): Likewise.
	(cgraph_remove_node): Use.
	* tree-optimize.c (tree_rest_of_compilation): Use
	cgraph_node_remove_callees instead of manual loop.
	* cgraphunit.c (cgraph_finalize_function): Likewise.
	(cgraph_expand_function): Likewise.
	(cgraph_remove_unreachable_nodes): Likewise.

From-SVN: r95777
2005-03-02 11:09:48 +00:00
Vladimir Merzliakov
ceccf46b10 * testsuite/26_numerics/cmath/c99_classification_macros_c.cc: Tweak.
From-SVN: r95774
2005-03-02 03:02:45 +00:00