summaryrefslogtreecommitdiff
path: root/lib/Transforms/Scalar/ScalarReplAggregates.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Transforms/Scalar/ScalarReplAggregates.cpp')
-rw-r--r--lib/Transforms/Scalar/ScalarReplAggregates.cpp12
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) {