Fix bug in previous checkin
authorChris Lattner <sabre@nondot.org>
Mon, 12 Jan 2004 19:47:05 +0000 (19:47 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 12 Jan 2004 19:47:05 +0000 (19:47 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10798 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/InstructionCombining.cpp

index 978a3db7387f2dd0975a19a0d2ae5bd308a3341b..14e2c70a8c9b6b1495c2e8eab931fa2feb534fd0 100644 (file)
@@ -768,7 +768,9 @@ Instruction *InstCombiner::OptAndOp(Instruction *Op,
                                     ConstantIntegral *AndRHS,
                                     BinaryOperator &TheAnd) {
   Value *X = Op->getOperand(0);
-  Constant *Together = ConstantExpr::get(Instruction::And, AndRHS, OpRHS);
+  Constant *Together = 0;
+  if (!isa<ShiftInst>(Op))
+    Together = ConstantExpr::get(Instruction::And, AndRHS, OpRHS);
 
   switch (Op->getOpcode()) {
   case Instruction::Xor: