OSDN Git Service

* ifcvt.c (noce_emit_store_flag): Don't emit store flag if mode of x
authordanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 21 Jan 2003 02:03:14 +0000 (02:03 +0000)
committerdanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 21 Jan 2003 02:03:14 +0000 (02:03 +0000)
is not a scalar int mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@61525 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/ifcvt.c

index c0ed2d3..ecbd2f9 100644 (file)
@@ -1,3 +1,8 @@
+2003-01-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * ifcvt.c (noce_emit_store_flag): Don't emit store flag if mode of x
+       is not a scalar int mode.
+
 2003-01-20  Roger Sayle  <roger@eyesopen.com>
 
        * cse.c (cse_insn): Avoid RTL sharing when updating the RETVAL
index 72dc2e1..6b069af 100644 (file)
@@ -647,8 +647,8 @@ noce_emit_store_flag (if_info, x, reversep, normalize)
       end_sequence ();
     }
 
-  /* Don't even try if the comparison operands are weird.  */
-  if (cond_complex)
+  /* Don't even try if the comparison operands or the mode of X are weird.  */
+  if (cond_complex || !SCALAR_INT_MODE_P (GET_MODE (x)))
     return NULL_RTX;
 
   return emit_store_flag (x, code, XEXP (cond, 0),