aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJ"orn Rennecke <joern.rennecke@st.com>2005-12-07 23:41:19 +0000
committerJoern Rennecke <amylaar@gcc.gnu.org>2005-12-07 23:41:19 +0000
commit444aea52f66b64d8b960d1751592be836ce3d8c7 (patch)
treed0deeecd83da64d867a580211bcd60f33eadacd4 /gcc
parentc60fb9672ac0873febe871cfe2dc3ee984721c84 (diff)
downloadgcc-444aea52f66b64d8b960d1751592be836ce3d8c7.zip
gcc-444aea52f66b64d8b960d1751592be836ce3d8c7.tar.gz
gcc-444aea52f66b64d8b960d1751592be836ce3d8c7.tar.bz2
reload.h (reg_equiv_invariant): Declare.
2005-12-07 J"orn Rennecke <joern.rennecke@st.com> * reload.h (reg_equiv_invariant): Declare. * reload.c (refers_to_regno_for_reload_p): Allow R to be a pseudo register also when reg_equiv_invariant[R] is set. From-SVN: r108195
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/reload.c2
-rw-r--r--gcc/reload.h1
3 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index eaa8872..d743f29 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2005-12-07 J"orn Rennecke <joern.rennecke@st.com>
+
+ * reload.h (reg_equiv_invariant): Declare.
+ * reload.c (refers_to_regno_for_reload_p): Allow R to be a pseudo
+ register also when reg_equiv_invariant[R] is set.
+
2005-12-07 Richard Sandiford <richard@codesourcery.com>
Andreas Tobler <a.tobler@schweiz.ch>
diff --git a/gcc/reload.c b/gcc/reload.c
index dc5d228..0f98694 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -6223,7 +6223,7 @@ refers_to_regno_for_reload_p (unsigned int regno, unsigned int endregno,
reg_equiv_memory_loc[r],
(rtx*) 0);
- gcc_assert (reg_equiv_constant[r]);
+ gcc_assert (reg_equiv_constant[r] || reg_equiv_invariant[r]);
return 0;
}
diff --git a/gcc/reload.h b/gcc/reload.h
index 2792e9a..a63010c 100644
--- a/gcc/reload.h
+++ b/gcc/reload.h
@@ -157,6 +157,7 @@ extern int n_reloads;
extern GTY (()) struct varray_head_tag *reg_equiv_memory_loc_varray;
extern rtx *reg_equiv_constant;
+extern rtx *reg_equiv_invariant;
extern rtx *reg_equiv_memory_loc;
extern rtx *reg_equiv_address;
extern rtx *reg_equiv_mem;