re PR rtl-optimization/26247 (gcc.dg/tree-ssa/gen-vect-26.c, 28 and 32. int_mode_for_...
authorZdenek Dvorak <dvorakz@suse.cz>
Mon, 13 Feb 2006 20:27:44 +0000 (21:27 +0100)
committerZdenek Dvorak <rakdver@gcc.gnu.org>
Mon, 13 Feb 2006 20:27:44 +0000 (20:27 +0000)
PR rtl-optimization/26247
PR rtl-optimization/26248
* loop-invariant.c (may_assign_reg_p): Do not allow VOIDmode.

From-SVN: r110924

gcc/ChangeLog
gcc/loop-invariant.c

index 8cb23e0a7b5a7a93aacb7dd32f8d815261e8f5b5..8df4b64d62ea936804a89fb0d16f50fdff182c45 100644 (file)
@@ -1,3 +1,9 @@
+2006-02-13  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR rtl-optimization/26247
+       PR rtl-optimization/26248
+       * loop-invariant.c (may_assign_reg_p): Do not allow VOIDmode.
+
 2006-02-13  Richard Sandiford  <richard@codesourcery.com>
 
        * config/floatunditf.c: Use if __LDBL_MANT_DIG__ == 113.
index eb6719e7f9bec0c108a09427b7cf3a893c45c920..ce82780795455d71e9764fd109f07e0644d22f07 100644 (file)
@@ -582,8 +582,9 @@ find_exits (struct loop *loop, basic_block *body,
 static bool
 may_assign_reg_p (rtx x)
 {
-  return (can_copy_p (GET_MODE (x))
+  return (GET_MODE (x) != VOIDmode
          && GET_MODE (x) != BLKmode
+         && can_copy_p (GET_MODE (x))
          && (!REG_P (x)
              || !HARD_REGISTER_P (x)
              || REGNO_REG_CLASS (REGNO (x)) != NO_REGS));