(gen_move_insn): Big `if' applies only for MODE_CC class.
authorRichard Stallman <rms@gnu.org>
Tue, 2 Mar 1993 07:18:06 +0000 (07:18 +0000)
committerRichard Stallman <rms@gnu.org>
Tue, 2 Mar 1993 07:18:06 +0000 (07:18 +0000)
From-SVN: r3592

gcc/optabs.c

index 6387f19c5ad02671b3b50d3ab6e403c3bf4f7ccd..cc192be2e3910e75a71a44f7ed37daf59d176767 100644 (file)
@@ -2577,15 +2577,15 @@ gen_move_insn (x, y)
      find a mode to do it in.  If we have a movcc, use it.  Otherwise,
      find the MODE_INT mode of the same width.  */
 
-  if (insn_code == CODE_FOR_nothing)
+  if (GET_MODE_CLASS (mode) == MODE_CC && insn_code == CODE_FOR_nothing)
     {
       enum machine_mode tmode = VOIDmode;
       rtx x1 = x, y1 = y;
 
-      if (GET_MODE_CLASS (mode) == MODE_CC && mode != CCmode
+      if (mode != CCmode
          && mov_optab->handlers[(int) CCmode].insn_code != CODE_FOR_nothing)
        tmode = CCmode;
-      else if (GET_MODE_CLASS (mode) == MODE_CC)
+      else
        for (tmode = QImode; tmode != VOIDmode;
             tmode = GET_MODE_WIDER_MODE (tmode))
          if (GET_MODE_SIZE (tmode) == GET_MODE_SIZE (mode))