]> gcc.gnu.org Git - gcc.git/commitdiff
(add patterns): Don't use two addqw instructions when...
authorRichard Kenner <kenner@gcc.gnu.org>
Thu, 18 Jul 1996 23:06:22 +0000 (19:06 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Thu, 18 Jul 1996 23:06:22 +0000 (19:06 -0400)
(add patterns): Don't use two addqw instructions when adding small (8
< N <= 16) integers to address registers on 68040.

From-SVN: r12515

gcc/config/m68k/m68k.md

index 09d152c7b1974eb56a5430d0a2879bb56be30d17..73051fd71015c79e61c314d75eae75be25e78b58 100644 (file)
                  ? \"subq%.w %2,%0\"
                  : \"subq%.l %2,%0\");
        }
-      /* On everything except the 68000 and 68060 it is faster to use 
-        two addqw instructions to add a small integer (8 < N <= 16)
-        to an address register.  Likewise for subqw.*/
-      if (TARGET_68020 && !TARGET_68060 && ADDRESS_REG_P (operands[0]))
+      /* On the 68020 it is faster to use two addqw instructions to
+        add a small integer (8 < N <= 16) to an address register.
+        Likewise for subqw. */
+      if (TARGET_68020 && !TARGET_68040 && !TARGET_68060 
+          && ADDRESS_REG_P (operands[0]))
        {
          if (INTVAL (operands[2]) > 8
              && INTVAL (operands[2]) <= 16)
                                 - INTVAL (operands[2]));
          return \"subq%.w %2,%0\";
        }
-      /* On everything except the 68000 and 68060 it is faster to use 
-        two addqw instructions to add a small integer (8 < N <= 16)
-        to an address register.  Likewise for subqw. */
-      if (TARGET_68020 && !TARGET_68060 && ADDRESS_REG_P (operands[0]))
+      /* On the 68020 it is faster to use two addqw instructions to
+        add a small integer (8 < N <= 16) to an address register.  
+        Likewise for subqw. */
+      if (TARGET_68020 && !TARGET_68040 && !TARGET_68060 
+          && ADDRESS_REG_P (operands[0]))
        {
          if (INTVAL (operands[2]) > 8
              && INTVAL (operands[2]) <= 16)
                                 - INTVAL (operands[1]));
          return \"subq%.w %1,%0\";
        }
-      /* On everything except the 68000 and 68060 it is faster to use 
-        two addqw instructions to add a small integer (8 < N <= 16)
-        to an address register.  Likewise for subqw. */
-      if (TARGET_68020 && !TARGET_68060 && ADDRESS_REG_P (operands[0]))
+      /* On the 68020 it is faster to use two addqw instructions to
+        add a small integer (8 < N <= 16) to an address register. 
+        Likewise for subqw. */
+      if (TARGET_68020 && !TARGET_68040 && !TARGET_68060 
+          && ADDRESS_REG_P (operands[0]))
        {
          if (INTVAL (operands[1]) > 8
              && INTVAL (operands[1]) <= 16)
                                 - INTVAL (operands[1]));
          return \"subq%.w %1,%0\";
        }
-      /* On everything except the 68000 and 68060 it is faster to use 
-        two addqw instructions to add a small integer (8 < N <= 16)
-        to an address register.  Likewise for subqw. */
-      if (TARGET_68020 && !TARGET_68060 && ADDRESS_REG_P (operands[0])) 
+      /* On the 68020 it is faster to use two addqw instructions to
+        add a small integer (8 < N <= 16) to an address register.
+        Likewise for subqw. */
+      if (TARGET_68020 && !TARGET_68040 && !TARGET_68060 
+          && ADDRESS_REG_P (operands[0])) 
        {
          if (INTVAL (operands[1]) > 8
              && INTVAL (operands[1]) <= 16)
This page took 0.10154 seconds and 5 git commands to generate.