i386.c (ix86_cc_modes_compatible): Declare CCZmode compatible with CCGOCmode and...
authorUros Bizjak <ubizjak@gmail.com>
Fri, 2 Mar 2012 18:41:21 +0000 (19:41 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Fri, 2 Mar 2012 18:41:21 +0000 (19:41 +0100)
* config/i386/i386.c (ix86_cc_modes_compatible): Declare CCZmode
compatible with CCGOCmode and CCGCmode.

From-SVN: r184813

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

index 677a90b0deeeb88542c645cf08e3d418934960e3..284fd07235ed9204411d7cef028e9b646867d4c9 100644 (file)
@@ -1,3 +1,8 @@
+2012-03-02  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.c (ix86_cc_modes_compatible): Declare CCZmode
+       compatible with CCGOCmode and CCGCmode.
+
 2012-03-02  Peter Bergner  <bergner@vnet.ibm.com>
 
        * config/rs6000/vsx.md (vsx_set_<mode>): Reorder operands.
index 65c4c421d1f8fdcc6720f0682bea60310623eb0c..d68131a997e378c4b79b44d9d24942f64b21123f 100644 (file)
@@ -17827,6 +17827,11 @@ ix86_cc_modes_compatible (enum machine_mode m1, enum machine_mode m2)
       || (m1 == CCGOCmode && m2 == CCGCmode))
     return CCGCmode;
 
+  if (m1 == CCZmode && (m2 == CCGCmode || m2 == CCGOCmode))
+    return m2;
+  else if (m2 == CCZmode && (m1 == CCGCmode || m1 == CCGOCmode))
+    return m1;
+
   switch (m1)
     {
     default:
index 27872a3e328798ef8d63154c90c7919376de4508..4e11259608fad344e1ed48f7d6f93e1cbaa7183a 100644 (file)
@@ -9,7 +9,7 @@
 2012-03-02  Uros Bizjak  <ubizjak@gmail.com>
 
        PR target/46716
-       * gcc.target/i386/pr46176.c: New test.
+       * gcc.target/i386/pr46716.c: New test.
 
 2012-03-02  Paolo Carlini  <paolo.carlini@oracle.com>