Don't use ConstantExpr::getShift anymore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10791 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y
index 600ce48..a63c19a 100644
--- a/lib/AsmParser/llvmAsmParser.y
+++ b/lib/AsmParser/llvmAsmParser.y
@@ -1218,7 +1218,7 @@
ThrowException("Shift count for shift constant must be unsigned byte!");
if (!$3->getType()->isInteger())
ThrowException("Shift constant expression requires integer operand!");
- $$ = ConstantExpr::getShift($1, $3, $5);
+ $$ = ConstantExpr::get($1, $3, $5);
};
diff --git a/lib/Bytecode/Reader/ConstantReader.cpp b/lib/Bytecode/Reader/ConstantReader.cpp
index 3d5ffd4..660566b 100644
--- a/lib/Bytecode/Reader/ConstantReader.cpp
+++ b/lib/Bytecode/Reader/ConstantReader.cpp
@@ -182,8 +182,6 @@
} else if (Opcode == Instruction::GetElementPtr) { // GetElementPtr
std::vector<Constant*> IdxList(ArgVec.begin()+1, ArgVec.end());
return ConstantExpr::getGetElementPtr(ArgVec[0], IdxList);
- } else if (Opcode == Instruction::Shl || Opcode == Instruction::Shr) {
- return ConstantExpr::getShift(Opcode, ArgVec[0], ArgVec[1]);
} else { // All other 2-operand expressions
return ConstantExpr::get(Opcode, ArgVec[0], ArgVec[1]);
}
diff --git a/lib/Transforms/Scalar/SCCP.cpp b/lib/Transforms/Scalar/SCCP.cpp
index 7a28281..4e5e515 100644
--- a/lib/Transforms/Scalar/SCCP.cpp
+++ b/lib/Transforms/Scalar/SCCP.cpp
@@ -596,19 +596,11 @@
Result.markOverdefined();
break; // Cannot fold this operation over the PHI nodes!
} else if (In1.isConstant() && In2.isConstant()) {
- Constant *Val = 0;
- if (isa<BinaryOperator>(I))
- Val = ConstantExpr::get(I.getOpcode(), In1.getConstant(),
- In2.getConstant());
- else {
- assert(isa<ShiftInst>(I) &&
- "Can only handle binops and shifts here!");
- Val = ConstantExpr::getShift(I.getOpcode(), In1.getConstant(),
- In2.getConstant());
- }
+ Constant *V = ConstantExpr::get(I.getOpcode(), In1.getConstant(),
+ In2.getConstant());
if (Result.isUndefined())
- Result.markConstant(Val);
- else if (Result.isConstant() && Result.getConstant() != Val) {
+ Result.markConstant(V);
+ else if (Result.isConstant() && Result.getConstant() != V) {
Result.markOverdefined();
break;
}
@@ -652,17 +644,8 @@
markOverdefined(IV, &I);
} else if (V1State.isConstant() && V2State.isConstant()) {
- Constant *Result = 0;
- if (isa<BinaryOperator>(I))
- Result = ConstantExpr::get(I.getOpcode(), V1State.getConstant(),
- V2State.getConstant());
- else {
- assert (isa<ShiftInst>(I) && "Can only handle binops and shifts here!");
- Result = ConstantExpr::getShift(I.getOpcode(), V1State.getConstant(),
- V2State.getConstant());
- }
-
- markConstant(IV, &I, Result); // This instruction constant folds!
+ markConstant(IV, &I, ConstantExpr::get(I.getOpcode(), V1State.getConstant(),
+ V2State.getConstant()));
}
}