diff options
Diffstat (limited to 'lib/Transforms/Scalar/ScalarReplAggregates.cpp')
-rw-r--r-- | lib/Transforms/Scalar/ScalarReplAggregates.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/Transforms/Scalar/ScalarReplAggregates.cpp b/lib/Transforms/Scalar/ScalarReplAggregates.cpp index e307ea7008..a7f33c9b19 100644 --- a/lib/Transforms/Scalar/ScalarReplAggregates.cpp +++ b/lib/Transforms/Scalar/ScalarReplAggregates.cpp @@ -655,9 +655,9 @@ void SROA::ConvertUsesToScalar(Value *Ptr, AllocaInst *NewAI, unsigned Offset) { } else { assert(NV->getType()->isInteger() && "Unknown promotion!"); if (Offset && Offset < TD.getTypeSize(NV->getType())*8) { - NV = new ShiftInst(Instruction::LShr, NV, - ConstantInt::get(Type::Int8Ty, Offset), - LI->getName(), LI); + NV = BinaryOperator::create(Instruction::LShr, NV, + ConstantInt::get(NV->getType(), Offset), + LI->getName(), LI); } // If the result is an integer, this is a trunc or bitcast. @@ -740,9 +740,9 @@ void SROA::ConvertUsesToScalar(Value *Ptr, AllocaInst *NewAI, unsigned Offset) { SV = CastInst::createZExtOrBitCast(SV, AllocaType, SV->getName(), SI); if (Offset && Offset < AllocaType->getPrimitiveSizeInBits()) - SV = new ShiftInst(Instruction::Shl, SV, - ConstantInt::get(Type::Int8Ty, Offset), - SV->getName()+".adj", SI); + SV = BinaryOperator::create(Instruction::Shl, SV, + ConstantInt::get(SV->getType(), Offset), + SV->getName()+".adj", SI); // Mask out the bits we are about to insert from the old value. unsigned TotalBits = TD.getTypeSize(SV->getType())*8; if (TotalBits != SrcSize) { |