* config/i386/i386.c (ix86_prepare_fp_compare_args): Fix is_sse test.
authorRichard Henderson <rth@redhat.com>
Sat, 22 Jan 2005 22:56:11 +0000 (14:56 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Sat, 22 Jan 2005 22:56:11 +0000 (14:56 -0800)
From-SVN: r94085

gcc/ChangeLog
gcc/config/i386/i386.c

index 95546071b0fd45b920fe43fe25339e1bedbf2e02..29a1c6fd4311571765a01c2e58de50f02a295a0d 100644 (file)
@@ -1,3 +1,7 @@
+2005-01-22  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.c (ix86_prepare_fp_compare_args): Fix is_sse test.
+
 2005-01-22  Richard Henderson  <rth@redhat.com>
 
        * genopinit.c (optabs): Use smin/smax for floating point too.
index e0fa5107160eb359d0cced5c3ce480783b92eec9..bb7d827cba2a8a4dbd0b024dde4b175d396ba32d 100644 (file)
@@ -8331,7 +8331,7 @@ ix86_prepare_fp_compare_args (enum rtx_code code, rtx *pop0, rtx *pop1)
   enum machine_mode fpcmp_mode = ix86_fp_compare_mode (code);
   rtx op0 = *pop0, op1 = *pop1;
   enum machine_mode op_mode = GET_MODE (op0);
-  int is_sse = SSE_REG_P (op0) || SSE_REG_P (op1);
+  int is_sse = TARGET_SSE_MATH && SSE_FLOAT_MODE_P (op_mode);
 
   /* All of the unordered compare instructions only work on registers.
      The same is true of the fcomi compare instructions.  The same is