Fix inverted condition noticed by Frits van Bommel.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122331 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/InstructionSimplify.cpp b/lib/Analysis/InstructionSimplify.cpp
index df94497..157193d 100644
--- a/lib/Analysis/InstructionSimplify.cpp
+++ b/lib/Analysis/InstructionSimplify.cpp
@@ -491,7 +491,7 @@
     return Constant::getAllOnesValue(Op0->getType());
 
   /// i1 add -> xor.
-  if (!MaxRecurse && Op0->getType()->isIntegerTy(1))
+  if (MaxRecurse && Op0->getType()->isIntegerTy(1))
     return SimplifyXorInst(Op0, Op1, TD, DT, MaxRecurse-1);
 
   // Try some generic simplifications for associative operations.
@@ -554,7 +554,7 @@
     return X;
 
   /// i1 sub -> xor.
-  if (!MaxRecurse && Op0->getType()->isIntegerTy(1))
+  if (MaxRecurse && Op0->getType()->isIntegerTy(1))
     return SimplifyXorInst(Op0, Op1, TD, DT, MaxRecurse-1);
 
   // Mul distributes over Sub.  Try some generic simplifications based on this.
@@ -607,7 +607,7 @@
     return Op0;
 
   /// i1 mul -> and.
-  if (!MaxRecurse && Op0->getType()->isIntegerTy(1))
+  if (MaxRecurse && Op0->getType()->isIntegerTy(1))
     return SimplifyAndInst(Op0, Op1, TD, DT, MaxRecurse-1);
 
   // Try some generic simplifications for associative operations.