aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZack Weinberg <zack@gcc.gnu.org>2004-06-30 03:28:31 +0000
committerZack Weinberg <zack@gcc.gnu.org>2004-06-30 03:28:31 +0000
commit2cd54c2a56896de0e84a58f7e780daabc690e8f1 (patch)
tree2bf27bb95750d2d8adc15ae12eb9abfcba5374d0
parent26d44ae2fd4b65d6e256a3c4a0800b9ebd52f6ff (diff)
downloadgcc-2cd54c2a56896de0e84a58f7e780daabc690e8f1.zip
gcc-2cd54c2a56896de0e84a58f7e780daabc690e8f1.tar.gz
gcc-2cd54c2a56896de0e84a58f7e780daabc690e8f1.tar.bz2
combine.c (distribute_notes): Don't look at global_regs for pseudos.
* combine.c (distribute_notes): Don't look at global_regs for pseudos. From-SVN: r83889
-rw-r--r--gcc/ChangeLog23
-rw-r--r--gcc/Makefile.in2
-rw-r--r--gcc/combine.c5
3 files changed, 18 insertions, 12 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 441759f..94c5c96 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 8a412fc..9577f12 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 7ce6b32..f828580 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;