From 94046b4d103cb72734611708d24674e438e16aae Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 28 Apr 2006 22:21:41 +0000 Subject: [PATCH] Fix InstCombine/2006-04-28-ShiftShiftLongLong.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28019 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Scalar/InstructionCombining.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Transforms/Scalar/InstructionCombining.cpp b/lib/Transforms/Scalar/InstructionCombining.cpp index 590e0d9d97e..7e9c3841cce 100644 --- a/lib/Transforms/Scalar/InstructionCombining.cpp +++ b/lib/Transforms/Scalar/InstructionCombining.cpp @@ -4435,7 +4435,7 @@ Instruction *InstCombiner::FoldShiftByConstant(Value *Op0, ConstantUInt *Op1, // this case, C1 == C2 and C1 is 8, 16, or 32. if (ShiftAmt1 == ShiftAmt2) { const Type *SExtType = 0; - switch (ShiftAmt1) { + switch (Op0->getType()->getPrimitiveSizeInBits() - ShiftAmt1) { case 8 : SExtType = Type::SByteTy; break; case 16: SExtType = Type::ShortTy; break; case 32: SExtType = Type::IntTy; break;