[InstCombine] use SelectInst operand names to make code clearer; NFC

Cleanup step for D51433.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@341850 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Sanjay Patel
2018-09-10 18:37:59 +00:00
parent a82b93eaf8
commit 4eef9f6908
@@ -1260,13 +1260,15 @@ Value *InstCombiner::SimplifyDemandedVectorElts(Value *V, APInt DemandedElts,
break;
}
case Instruction::Select: {
SelectInst *Sel = cast<SelectInst>(I);
Value *Cond = Sel->getCondition();
APInt DemandedLHS(DemandedElts), DemandedRHS(DemandedElts);
if (auto *CV = dyn_cast<ConstantVector>(I->getOperand(0))) {
if (auto *CV = dyn_cast<ConstantVector>(Cond)) {
for (unsigned i = 0; i < VWidth; i++) {
// isNullValue() always returns false when called on a ConstantExpr.
// Skip constant expressions to avoid propagating incorrect information.
Constant *CElt = CV->getAggregateElement(i);
// Method isNullValue always returns false when called on a
// ConstantExpr. If CElt is a ConstantExpr then skip it in order to
// to avoid propagating incorrect information.
if (isa<ConstantExpr>(CElt))
continue;
if (CElt->isNullValue())
@@ -1276,15 +1278,15 @@ Value *InstCombiner::SimplifyDemandedVectorElts(Value *V, APInt DemandedElts,
}
}
if (Value *V = SimplifyDemandedVectorElts(I->getOperand(1), DemandedLHS,
if (Value *V = SimplifyDemandedVectorElts(Sel->getTrueValue(), DemandedLHS,
UndefElts2, Depth + 1)) {
I->setOperand(1, V);
Sel->setTrueValue(V);
MadeChange = true;
}
if (Value *V = SimplifyDemandedVectorElts(I->getOperand(2), DemandedRHS,
if (Value *V = SimplifyDemandedVectorElts(Sel->getFalseValue(), DemandedRHS,
UndefElts3, Depth + 1)) {
I->setOperand(2, V);
Sel->setFalseValue(V);
MadeChange = true;
}