forked from OSchip/llvm-project
[JumpThreading] Change a dyn_cast that is already protected by an isa check to a static cast. Combine the with another static cast. NFC
Differential Revision: https://reviews.llvm.org/D32874 llvm-svn: 302197
This commit is contained in:
parent
117b667bd9
commit
930689ada4
|
@ -581,16 +581,16 @@ bool JumpThreadingPass::ComputeValueKnownInPredecessors(
|
|||
// If comparing a live-in value against a constant, see if we know the
|
||||
// live-in value on any predecessors.
|
||||
if (isa<Constant>(Cmp->getOperand(1)) && Cmp->getType()->isIntegerTy()) {
|
||||
Constant *CmpConst = cast<Constant>(Cmp->getOperand(1));
|
||||
|
||||
if (!isa<Instruction>(Cmp->getOperand(0)) ||
|
||||
cast<Instruction>(Cmp->getOperand(0))->getParent() != BB) {
|
||||
Constant *RHSCst = cast<Constant>(Cmp->getOperand(1));
|
||||
|
||||
for (BasicBlock *P : predecessors(BB)) {
|
||||
// If the value is known by LazyValueInfo to be a constant in a
|
||||
// predecessor, use that information to try to thread this block.
|
||||
LazyValueInfo::Tristate Res =
|
||||
LVI->getPredicateOnEdge(Cmp->getPredicate(), Cmp->getOperand(0),
|
||||
RHSCst, P, BB, CxtI ? CxtI : Cmp);
|
||||
CmpConst, P, BB, CxtI ? CxtI : Cmp);
|
||||
if (Res == LazyValueInfo::Unknown)
|
||||
continue;
|
||||
|
||||
|
@ -603,7 +603,6 @@ bool JumpThreadingPass::ComputeValueKnownInPredecessors(
|
|||
|
||||
// Try to find a constant value for the LHS of a comparison,
|
||||
// and evaluate it statically if we can.
|
||||
if (Constant *CmpConst = dyn_cast<Constant>(Cmp->getOperand(1))) {
|
||||
PredValueInfoTy LHSVals;
|
||||
ComputeValueKnownInPredecessors(I->getOperand(0), BB, LHSVals,
|
||||
WantInteger, CxtI);
|
||||
|
@ -619,7 +618,6 @@ bool JumpThreadingPass::ComputeValueKnownInPredecessors(
|
|||
return !Result.empty();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (SelectInst *SI = dyn_cast<SelectInst>(I)) {
|
||||
// Handle select instructions where at least one operand is a known constant
|
||||
|
|
Loading…
Reference in New Issue