Enable optimization for integer ABS on X86 if Subtarget has CMOV.
authorManman Ren <mren@apple.com>
Fri, 8 Jun 2012 18:58:26 +0000 (18:58 +0000)
committerManman Ren <mren@apple.com>
Fri, 8 Jun 2012 18:58:26 +0000 (18:58 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158220 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86ISelLowering.cpp

index 99bb470c7aa050d6e2675d8f2702e43535682d97..b27af484c197c27f1d1ba6e7be087f4a3656b858 100644 (file)
@@ -14548,9 +14548,11 @@ static SDValue PerformXorCombine(SDNode *N, SelectionDAG &DAG,
   if (DCI.isBeforeLegalizeOps())
     return SDValue();
 
-  SDValue RV = performIntegerAbsCombine(N, DAG);
-  if (RV.getNode())
-    return RV;
+  if (Subtarget->hasCMov()) {
+    SDValue RV = performIntegerAbsCombine(N, DAG);
+    if (RV.getNode())
+      return RV;
+  }
 
   // Try forming BMI if it is available.
   if (!Subtarget->hasBMI())