aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernd Schmidt <bernd.schmidt@analog.com>2006-02-16 01:26:54 +0000
committerBernd Schmidt <bernd.schmidt@analog.com>2006-02-16 01:26:54 +0000
commit4f37a03dcb20c8d75b39928e958e09875ce38649 (patch)
treee96a023be74a5ca6ea77c495571a180f659e446a
parentbc336c07197e24e79d56ae70a9ac7061f4296eaf (diff)
PR rtl-optimization/25636
* local-alloc.c (update_equiv_regs): Lose a bogus rtx_equal_p test when deciding whether an insn is an initializing insn. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@111129 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/local-alloc.c6
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 50477ba7a2e..c424d64ec29 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2006-02-16 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ PR rtl-optimization/25636
+ * local-alloc.c (update_equiv_regs): Lose a bogus rtx_equal_p test
+ when deciding whether an insn is an initializing insn.
+
2006-02-15 Daniel Berlin <dberlin@dberlin.org>
* tree.c (init_ttree): Add STRUCT_FIELD_TAG handling.
diff --git a/gcc/local-alloc.c b/gcc/local-alloc.c
index d22e9e736fb..820e0b654bf 100644
--- a/gcc/local-alloc.c
+++ b/gcc/local-alloc.c
@@ -1,6 +1,7 @@
/* Allocate registers within a basic block, for GNU compiler.
Copyright (C) 1987, 1988, 1991, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+ Inc.
This file is part of GCC.
@@ -962,8 +963,7 @@ update_equiv_regs (void)
/* If we haven't done so, record for reload that this is an
equivalencing insn. */
- if (!reg_equiv[regno].is_arg_equivalence
- && (!MEM_P (x) || rtx_equal_p (src, x)))
+ if (!reg_equiv[regno].is_arg_equivalence)
reg_equiv_init[regno]
= gen_rtx_INSN_LIST (VOIDmode, insn, reg_equiv_init[regno]);