diff options
author | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-30 03:28:31 +0000 |
---|---|---|
committer | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-30 03:28:31 +0000 |
commit | 533b9c83063396e96dcca4d31926d41716fce3e1 (patch) | |
tree | 2bf27bb95750d2d8adc15ae12eb9abfcba5374d0 /gcc | |
parent | c0a843e0756ff7d1eec6be383158674a47c1949e (diff) | |
download | gcc-533b9c83063396e96dcca4d31926d41716fce3e1.tar.gz |
* combine.c (distribute_notes): Don't look at global_regs for
pseudos.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83889 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 23 | ||||
-rw-r--r-- | gcc/Makefile.in | 2 | ||||
-rw-r--r-- | gcc/combine.c | 5 |
3 files changed, 18 insertions, 12 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 441759fc88f..94c5c964ea9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-06-29 Zack Weinberg <zack@codesourcery.com> + + * combine.c (distribute_notes): Don't look at global_regs for + pseudos. + 2004-06-29 Richard Henderson <rth@redhat.com> * gimplify.c (gimplify_modify_expr_rhs): Move immediately before @@ -98,7 +103,7 @@ * tree-ssa-dom.c (need_eh_cleanup): New. (tree_ssa_dominator_optimize): Allocate it. Cleanup eh edges. (optimize_stmt): Cleanup eh stmts; set need_eh_cleanup. - + 2004-06-29 Alan Modra <amodra@bigpond.net.au> * function.c (assign_parms): Don't abort with zero size stack @@ -204,7 +209,7 @@ tree_check4_failed, tree_check5_failed): Remove. (TREE_CHECK, TREE_CHECK2, TREE_CHECK3, TREE_CHECK4, TREE_CHECK5): Adjust. - (TREE_NOT_CHECK, TREE_NOT_CHECK2, TREE_NOT_CHECK3, TREE_NOT_CHECK4, + (TREE_NOT_CHECK, TREE_NOT_CHECK2, TREE_NOT_CHECK3, TREE_NOT_CHECK4, TREE_NOT_CHECK5): New. (TREE_VEC_ELT_CHECK, PHI_NODE_ELT_CHECK, TREE_OPERAND_CHECK_CODE, TREE_RTL_OPERAND_CHECK): Adjust. @@ -232,7 +237,7 @@ (dump_generic_node, case DECL_EXPR): New case. (dump_generic_node, case PLACEHOLDER_EXPR): Handle. (print_declaration): Handle type and function declarations. - + * tree-nested.c (create_tmp_var_for): Allow ARRAY_TYPE. (convert_nonlocal_reference, convert_local_reference): Properly convert nest of handled component references. @@ -320,7 +325,7 @@ <BIT_XOR_EXPR>: Optimize ~X|X and X|~X as -1. <BIT_AND_EXPR>: Optimize ~X&X and X&~X as 0. <TRUTH_AND_EXPR, TRUTH_ANDIF_EXPR>: Optimize !X&&X and X&&!X as false. - <TRUTH_OR_EXPR, TRUTH_ORIF_EXPR>: Optimize !X||X and !X||X as true. + <TRUTH_OR_EXPR, TRUTH_ORIF_EXPR>: Optimize !X||X and !X||X as true. <TRUTH_XOR_EXPR>: Optimize !X^X and X^X! as true. Now that TRUTH_XOR_EXPR is a commutative tree code, don't test whether arg0 is a constant. @@ -351,7 +356,7 @@ * tree.c (has_cleanups, case DECL_EXPR): New case. * tree.def (DECL_EXPR): New code. * tree.h (DECL_EXPR_DECL): New macro. - + * objc/objc-lang.c (LANG_HOOKS_SAFE_FROM_P): Deleted. 2004-06-26 Andrew Pinski <pinskia@physics.uc.edu> @@ -1199,10 +1204,10 @@ 2004-06-21 Richard Henderson <rth@redhat.com> - PR rtl-opt/16114 - * cse.c (merge_equiv_classes): Also rehash in response to - delete_reg_equiv changes. - (rehash_using_reg): Don't exclude REGs from rehashing. + PR rtl-opt/16114 + * cse.c (merge_equiv_classes): Also rehash in response to + delete_reg_equiv changes. + (rehash_using_reg): Don't exclude REGs from rehashing. 2004-06-21 Richard Henderson <rth@redhat.com> diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 8a412fc0a78..9577f12993a 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -1376,7 +1376,7 @@ c-ppoutput.o : c-ppoutput.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ c-objc-common.o : c-objc-common.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ $(C_TREE_H) $(RTL_H) insn-config.h $(INTEGRATE_H) $(EXPR_H) $(C_TREE_H) \ $(FLAGS_H) toplev.h tree-inline.h $(DIAGNOSTIC_H) $(VARRAY_H) \ - langhooks.h $(GGC_H) $(TARGET_H) cgraph.h + langhooks.h $(GGC_H) $(TARGET_H) c-aux-info.o : c-aux-info.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ $(C_TREE_H) $(FLAGS_H) toplev.h c-convert.o : c-convert.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ diff --git a/gcc/combine.c b/gcc/combine.c index 7ce6b32c59a..f82858023dc 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -11839,8 +11839,9 @@ distribute_notes (rtx notes, rtx from_insn, rtx i3, rtx i2) TEM is doing. If so, delete TEM. Otherwise, make this into a REG_UNUSED note instead. Don't delete sets to global register vars. */ - if (reg_set_p (XEXP (note, 0), PATTERN (tem)) - && !global_regs [REGNO(XEXP (note, 0))]) + if ((REGNO (XEXP (note, 0)) >= FIRST_PSEUDO_REGISTER + || !global_regs[REGNO (XEXP (note, 0))]) + && reg_set_p (XEXP (note, 0), PATTERN (tem))) { rtx set = single_set (tem); rtx inner_dest = 0; |