diff --git a/lib/Transforms/Scalar/InstructionCombining.cpp b/lib/Transforms/Scalar/InstructionCombining.cpp index 767fc9582b0..3febd1dd46f 100644 --- a/lib/Transforms/Scalar/InstructionCombining.cpp +++ b/lib/Transforms/Scalar/InstructionCombining.cpp @@ -2496,6 +2496,9 @@ Instruction *InstCombiner::visitShiftInst(ShiftInst &I) { switch (Op0BO->getOpcode()) { default: isValid = false; break; // Do not perform transform! + case Instruction::Add: + isValid = isLeftShift; + break; case Instruction::Or: case Instruction::Xor: highBitSet = false;