re PR rtl-optimization/21144 (Apparent infinite loop in reload)
authorMichael Matz <matz@suse.de>
Fri, 29 Apr 2005 18:39:22 +0000 (18:39 +0000)
committerMichael Matz <matz@gcc.gnu.org>
Fri, 29 Apr 2005 18:39:22 +0000 (18:39 +0000)
        PR rtl-optimization/21144
        * postreload.c (reload_cse_move2add): Check for VOIDmode.

From-SVN: r99008

gcc/ChangeLog
gcc/postreload.c

index bc9b0e6fbce52fc9fb72daef038a2a87c8565b63..b95a20a1be16b21116e8bd4258dfa5540d4739d6 100644 (file)
@@ -1,3 +1,8 @@
+2005-04-29  Michael Matz  <matz@suse.de>
+
+       PR rtl-optimization/21144
+       * postreload.c (reload_cse_move2add): Check for VOIDmode.
+
 2005-04-29  Bob Wilson  <bob.wilson@acm.org>
 
        * config/xtensa/xtensa.h (OPTIMIZATION_OPTIONS): Define to disable
index 16cb818d59b7dce9751cd94a1eae96db48a1334c..3d9b24bd113a15d3314c97c1ce0f9ec9153ad01a 100644 (file)
@@ -1269,7 +1269,8 @@ reload_cse_move2add (rtx first)
                    {
                      enum machine_mode narrow_mode;
                      for (narrow_mode = GET_CLASS_NARROWEST_MODE (MODE_INT);
-                          narrow_mode != GET_MODE (reg);
+                          narrow_mode != VOIDmode
+                          && narrow_mode != GET_MODE (reg);
                           narrow_mode = GET_MODE_WIDER_MODE (narrow_mode))
                        {
                          if (have_insn_for (STRICT_LOW_PART, narrow_mode)