re PR target/66747 (The commit r225260 broke the builds of the mips-{mti,img}-linux...
authorBernd Edlinger <bernd.edlinger@hotmail.de>
Sat, 4 Jul 2015 19:02:18 +0000 (19:02 +0000)
committerBernd Edlinger <edlinger@gcc.gnu.org>
Sat, 4 Jul 2015 19:02:18 +0000 (19:02 +0000)
2015-07-04  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR target/66747
        * config/mips/mips.c (mips_find_gp_ref): Handle instruction sequences.

From-SVN: r225416

gcc/ChangeLog
gcc/config/mips/mips.c

index 916ba937319e83973c1531878492c609ee634acb..adb30dbf8849f9df81a80b4b8aa55abfef11d9c6 100644 (file)
@@ -1,3 +1,8 @@
+2015-07-04  Bernd Edlinger  <bernd.edlinger@hotmail.de>
+
+       PR target/66747
+       * config/mips/mips.c (mips_find_gp_ref): Handle instruction sequences.
+
 2015-07-04  John David Anglin  <danglin@gcc.gnu.org>
 
        PR target/66114
index da0943b5df3918dd9eed789cec039af4b984e8c9..95a0ae3f44c6e93f7538bdd029bac76ff221a6cb 100644 (file)
@@ -9790,17 +9790,18 @@ mips16_cfun_returns_in_fpr_p (void)
 static bool
 mips_find_gp_ref (bool *cache, bool (*pred) (rtx_insn *))
 {
-  rtx_insn *insn;
+  rtx_insn *insn, *subinsn;
 
   if (!*cache)
     {
       push_topmost_sequence ();
       for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
-       if (USEFUL_INSN_P (insn) && pred (insn))
-         {
-           *cache = true;
-           break;
-         }
+       FOR_EACH_SUBINSN (subinsn, insn)
+         if (USEFUL_INSN_P (subinsn) && pred (subinsn))
+           {
+             *cache = true;
+             break;
+           }
       pop_topmost_sequence ();
     }
   return *cache;