diff options
-rw-r--r-- | lib/Transforms/ExprTypeConvert.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Transforms/ExprTypeConvert.cpp b/lib/Transforms/ExprTypeConvert.cpp index 06added377..d8f6519bab 100644 --- a/lib/Transforms/ExprTypeConvert.cpp +++ b/lib/Transforms/ExprTypeConvert.cpp @@ -190,9 +190,10 @@ static Value *ConvertExpressionToType(Value *V, const Type *Ty, case Instruction::Shl: case Instruction::Shr: - Res = new ShiftInst(cast<ShiftInst>(I)->getOpcode(), - ConvertExpressionToType(I->getOperand(0), Ty, VMC), + Res = new ShiftInst(cast<ShiftInst>(I)->getOpcode(), Dummy, I->getOperand(1), Name); + VMC.ExprMap[I] = Res; + Res->setOperand(0, ConvertExpressionToType(I->getOperand(0), Ty, VMC)); break; case Instruction::Load: { |