re PR rtl-optimization/22239 (i-cobol.adb:482: error: unrecognizable insn)
authorJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>
Thu, 7 Jul 2005 22:53:28 +0000 (22:53 +0000)
committerJohn David Anglin <danglin@gcc.gnu.org>
Thu, 7 Jul 2005 22:53:28 +0000 (22:53 +0000)
PR middle-end/22239
* loop.c (loop_givs_rescan): Check that v->new_reg is a REG.

From-SVN: r101742

gcc/ChangeLog
gcc/loop.c

index 128a7d2dae876094d38b2a3530bab716e25a0201..fd0abeb1f06e4d192db4c7a48e5173e00fc3db74 100644 (file)
@@ -1,3 +1,8 @@
+2005-07-07  John David Anglin  <dave.anglin@nrc-crc.gc.ca>
+
+       PR middle-end/22239
+       * loop.c (loop_givs_rescan): Check that v->new_reg is a REG.
+
 2005-07-07  Khem Raj  <kraj@mvista.com>
 
        * config/arm/arm.c (thumb_output_function_prologue): Calculate offset
index b9b285648bc3ebc6b160c635383505301a55e53a..c0e3272e6d383bb16e0397b85bad948378025521 100644 (file)
@@ -5496,6 +5496,7 @@ loop_givs_rescan (struct loop *loop, struct iv_class *bl, rtx *reg_map)
                                                  v->new_reg));
          else if (GET_CODE (*v->location) == PLUS
                   && REG_P (XEXP (*v->location, 0))
+                  && REG_P (v->new_reg)
                   && CONSTANT_P (XEXP (*v->location, 1)))
            loop_insn_emit_before (loop, 0, v->insn,
                                   gen_move_insn (XEXP (*v->location, 0),