]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
reload.h (reg_equiv_invariant): Declare.
authorJ"orn Rennecke <joern.rennecke@st.com>
Wed, 7 Dec 2005 23:41:19 +0000 (23:41 +0000)
committerJoern Rennecke <amylaar@gcc.gnu.org>
Wed, 7 Dec 2005 23:41:19 +0000 (23:41 +0000)
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

gcc/ChangeLog
gcc/reload.c
gcc/reload.h

index eaa8872e4c715f021ff66d2d515a47068770326a..d743f29c8132b16401f8e3f3d0fed2a062a515c3 100644 (file)
@@ -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>
 
index dc5d228c56976cfab331e350b77e30bfd3b1465e..0f98694ef401c805c0daa18b178b23c118a70618 100644 (file)
@@ -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;
        }
 
index 2792e9a5fd925963827fb75603c7fb33aaa2bb11..a63010c630aa928cf22e4effdf164e51dfded1b2 100644 (file)
@@ -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;