From 25fc6214e3705977d82cf1c6052f8f37891a92e5 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Thu, 18 Jul 1996 19:06:22 -0400 Subject: [PATCH] (add patterns): Don't use two addqw instructions when... (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 | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md index 09d152c7b19..73051fd7101 100644 --- a/gcc/config/m68k/m68k.md +++ b/gcc/config/m68k/m68k.md @@ -2249,10 +2249,11 @@ ? \"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) @@ -2316,10 +2317,11 @@ - 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) @@ -2376,10 +2378,11 @@ - 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) @@ -2430,10 +2433,11 @@ - 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) -- 2.30.2