mips.c (reg_or_const_float_1_operand): Reimplement in terms of const_float_1_operand.
authorRichard Sandiford <rsandifo@redhat.com>
Fri, 25 Jun 2004 06:59:03 +0000 (06:59 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Fri, 25 Jun 2004 06:59:03 +0000 (06:59 +0000)
* config/mips/mips.c (reg_or_const_float_1_operand): Reimplement
in terms of const_float_1_operand.

From-SVN: r83640

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

index c99ac82..80c7a80 100644 (file)
@@ -1,5 +1,10 @@
 2004-06-25  Richard Sandiford  <rsandifo@redhat.com>
 
+       * config/mips/mips.c (reg_or_const_float_1_operand): Reimplement
+       in terms of const_float_1_operand.
+
+2004-06-25  Richard Sandiford  <rsandifo@redhat.com>
+
        PR target/16144
        * config/mips/mips.md (divsf, divdf): Don't FAIL if the first operand
        is 1.0; force it into a register instead.
index f481c4b..fe3e66d 100644 (file)
@@ -1428,26 +1428,13 @@ reg_or_0_operand (rtx op, enum machine_mode mode)
     }
 }
 
-/* Accept a register or the floating point constant 1 in the appropriate mode.  */
+/* Accept a register or the floating point constant 1 in the
+   appropriate mode.  */
 
 int
 reg_or_const_float_1_operand (rtx op, enum machine_mode mode)
 {
-  REAL_VALUE_TYPE d;
-
-  switch (GET_CODE (op))
-    {
-    case CONST_DOUBLE:
-      if (mode != GET_MODE (op)
-         || (mode != DFmode && mode != SFmode))
-       return 0;
-
-      REAL_VALUE_FROM_CONST_DOUBLE (d, op);
-      return REAL_VALUES_EQUAL (d, dconst1);
-
-    default:
-      return register_operand (op, mode);
-    }
+  return const_float_1_operand (op, mode) || register_operand (op, mode);
 }
 
 /* Accept the floating point constant 1 in the appropriate mode.  */