Lines Matching refs:FalseVal
78 Value *FalseVal) { in foldSelectWithBinaryOp() argument
108 m_Specific(FalseVal)), in foldSelectWithBinaryOp()
113 if (X == TrueVal || X == FalseVal || Y == TrueVal || Y == FalseVal) in foldSelectWithBinaryOp()
114 return BinOpCode == BinaryOperator::Or ? TrueVal : FalseVal; in foldSelectWithBinaryOp()
4213 static Value *simplifySelectBitTest(Value *TrueVal, Value *FalseVal, Value *X, in simplifySelectBitTest() argument
4219 if (FalseVal == X && match(TrueVal, m_And(m_Specific(X), m_APInt(C))) && in simplifySelectBitTest()
4221 return TrueWhenUnset ? FalseVal : TrueVal; in simplifySelectBitTest()
4225 if (TrueVal == X && match(FalseVal, m_And(m_Specific(X), m_APInt(C))) && in simplifySelectBitTest()
4227 return TrueWhenUnset ? FalseVal : TrueVal; in simplifySelectBitTest()
4232 if (FalseVal == X && match(TrueVal, m_Or(m_Specific(X), m_APInt(C))) && in simplifySelectBitTest()
4234 return TrueWhenUnset ? TrueVal : FalseVal; in simplifySelectBitTest()
4238 if (TrueVal == X && match(FalseVal, m_Or(m_Specific(X), m_APInt(C))) && in simplifySelectBitTest()
4240 return TrueWhenUnset ? TrueVal : FalseVal; in simplifySelectBitTest()
4250 Value *TrueVal, Value *FalseVal) { in simplifySelectWithFakeICmpEq() argument
4256 return simplifySelectBitTest(TrueVal, FalseVal, X, &Mask, in simplifySelectWithFakeICmpEq()
4263 Value *FalseVal, in simplifySelectWithICmpCond() argument
4274 std::swap(TrueVal, FalseVal); in simplifySelectWithICmpCond()
4283 matchDecomposedSelectPattern(cast<ICmpInst>(CondVal), TrueVal, FalseVal, in simplifySelectWithICmpCond()
4298 if (Value *V = simplifySelectBitTest(TrueVal, FalseVal, X, Y, in simplifySelectWithICmpCond()
4308 if (match(TrueVal, isFsh) && FalseVal == X && CmpLHS == ShAmt) in simplifySelectWithICmpCond()
4321 if (match(FalseVal, isRotate) && TrueVal == X && CmpLHS == ShAmt && in simplifySelectWithICmpCond()
4323 return FalseVal; in simplifySelectWithICmpCond()
4328 match(FalseVal, m_Neg(m_Intrinsic<Intrinsic::abs>(m_Specific(CmpLHS))))) in simplifySelectWithICmpCond()
4329 return FalseVal; in simplifySelectWithICmpCond()
4332 match(FalseVal, m_Intrinsic<Intrinsic::abs>(m_Specific(CmpLHS)))) in simplifySelectWithICmpCond()
4333 return FalseVal; in simplifySelectWithICmpCond()
4338 simplifySelectWithFakeICmpEq(CmpLHS, CmpRHS, Pred, TrueVal, FalseVal)) in simplifySelectWithICmpCond()
4347 if (simplifyWithOpReplaced(FalseVal, CmpLHS, CmpRHS, Q, in simplifySelectWithICmpCond()
4350 simplifyWithOpReplaced(FalseVal, CmpRHS, CmpLHS, Q, in simplifySelectWithICmpCond()
4353 return FalseVal; in simplifySelectWithICmpCond()
4356 MaxRecurse) == FalseVal || in simplifySelectWithICmpCond()
4359 MaxRecurse) == FalseVal) in simplifySelectWithICmpCond()
4360 return FalseVal; in simplifySelectWithICmpCond()
4399 static Value *simplifySelectInst(Value *Cond, Value *TrueVal, Value *FalseVal, in simplifySelectInst() argument
4403 if (auto *FalseC = dyn_cast<Constant>(FalseVal)) in simplifySelectInst()
4412 return isa<Constant>(FalseVal) ? FalseVal : TrueVal; in simplifySelectInst()
4421 return FalseVal; in simplifySelectInst()
4426 assert(TrueVal->getType() == FalseVal->getType() && in simplifySelectInst()
4431 if (match(TrueVal, m_One()) && match(FalseVal, m_ZeroInt())) in simplifySelectInst()
4436 if (match(FalseVal, m_ZeroInt())) { in simplifySelectInst()
4447 if (TrueVal == FalseVal) in simplifySelectInst()
4457 isGuaranteedNotToBePoison(FalseVal, Q.AC, Q.CxtI, Q.DT))) in simplifySelectInst()
4458 return FalseVal; in simplifySelectInst()
4461 if (isa<PoisonValue>(FalseVal) || in simplifySelectInst()
4462 (Q.isUndefValue(FalseVal) && in simplifySelectInst()
4470 match(FalseVal, m_Constant(FalseC))) { in simplifySelectInst()
4499 simplifySelectWithICmpCond(Cond, TrueVal, FalseVal, Q, MaxRecurse)) in simplifySelectInst()
4502 if (Value *V = simplifySelectWithFCmp(Cond, TrueVal, FalseVal, Q)) in simplifySelectInst()
4505 if (Value *V = foldSelectWithBinaryOp(Cond, TrueVal, FalseVal)) in simplifySelectInst()
4510 return *Imp ? TrueVal : FalseVal; in simplifySelectInst()
4515 Value *llvm::simplifySelectInst(Value *Cond, Value *TrueVal, Value *FalseVal, in simplifySelectInst() argument
4517 return ::simplifySelectInst(Cond, TrueVal, FalseVal, Q, RecursionLimit); in simplifySelectInst()