mips.h (ISA_HAS_LDC1_SDC1): New macro.
authorRichard Sandiford <rsandifo@nildram.co.uk>
Sun, 21 Oct 2007 09:09:50 +0000 (09:09 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Sun, 21 Oct 2007 09:09:50 +0000 (09:09 +0000)
gcc/
* config/mips/mips.h (ISA_HAS_LDC1_SDC1): New macro.
* config/mips/mips.c (mips_split_64bit_move_p): Use ISA_HAS_LDC1_SDC1
instead of checking mips_isa.

From-SVN: r129523

gcc/ChangeLog
gcc/config/mips/mips.c
gcc/config/mips/mips.h

index 3005f11..cbc431f 100644 (file)
@@ -1,5 +1,11 @@
 2007-10-21  Richard Sandiford  <rsandifo@nildram.co.uk>
 
+       * config/mips/mips.h (ISA_HAS_LDC1_SDC1): New macro.
+       * config/mips/mips.c (mips_split_64bit_move_p): Use ISA_HAS_LDC1_SDC1
+       instead of checking mips_isa.
+
+2007-10-21  Richard Sandiford  <rsandifo@nildram.co.uk>
+
        * doc/invoke.texi (-mpaired-single): Don't say that the option
        requires 64-bit code.
        * config/mips/mips-protos.h (mips_modes_tieable_p): Declare.
index 419b6a4..0948832 100644 (file)
@@ -3433,9 +3433,8 @@ mips_split_64bit_move_p (rtx dest, rtx src)
   if (FP_REG_RTX_P (src) && FP_REG_RTX_P (dest))
     return false;
 
-  /* Check for floating-point loads and stores.  They can be done using
-     ldc1 and sdc1 on MIPS II and above.  */
-  if (mips_isa > 1)
+  /* Check for floating-point loads and stores.  */
+  if (ISA_HAS_LDC1_SDC1)
     {
       if (FP_REG_RTX_P (dest) && MEM_P (src))
        return false;
index 2b14f30..96af71e 100644 (file)
@@ -735,6 +735,9 @@ enum mips_code_readable_setting {
                                 && !TARGET_MIPS5500                    \
                                 && !TARGET_MIPS16)
 
+/* ISA has LDC1 and SDC1.  */
+#define ISA_HAS_LDC1_SDC1      (!ISA_MIPS1 && !TARGET_MIPS16)
+
 /* ISA has the mips4 FP condition code instructions: FP-compare to CC,
    branch on CC, and move (both FP and non-FP) on CC.  */
 #define ISA_HAS_8CC            (ISA_MIPS4                              \