Lines Matching defs:FalseVal

84                                      Value *FalseVal) {
114 m_Specific(FalseVal)),
119 if (X == TrueVal || X == FalseVal || Y == TrueVal || Y == FalseVal)
120 return BinOpCode == BinaryOperator::Or ? TrueVal : FalseVal;
4492 static Value *simplifySelectBitTest(Value *TrueVal, Value *FalseVal, Value *X,
4498 if (FalseVal == X && match(TrueVal, m_And(m_Specific(X), m_APInt(C))) &&
4500 return TrueWhenUnset ? FalseVal : TrueVal;
4504 if (TrueVal == X && match(FalseVal, m_And(m_Specific(X), m_APInt(C))) &&
4506 return TrueWhenUnset ? FalseVal : TrueVal;
4511 if (FalseVal == X && match(TrueVal, m_Or(m_Specific(X), m_APInt(C))) &&
4516 return TrueWhenUnset ? TrueVal : FalseVal;
4521 if (TrueVal == X && match(FalseVal, m_Or(m_Specific(X), m_APInt(C))) &&
4524 if (!TrueWhenUnset && cast<PossiblyDisjointInst>(FalseVal)->isDisjoint())
4526 return TrueWhenUnset ? TrueVal : FalseVal;
4609 Value *TrueVal, Value *FalseVal) {
4615 return simplifySelectBitTest(TrueVal, FalseVal, X, &Mask,
4622 Value *TrueVal, Value *FalseVal,
4625 if (simplifyWithOpReplaced(FalseVal, CmpLHS, CmpRHS, Q.getWithoutUndef(),
4628 return FalseVal;
4631 /* DropFlags */ nullptr, MaxRecurse) == FalseVal)
4632 return FalseVal;
4640 Value *FalseVal,
4648 if (Value *V = simplifyCmpSelOfMaxMin(CmpLHS, CmpRHS, Pred, TrueVal, FalseVal))
4654 std::swap(TrueVal, FalseVal);
4663 matchDecomposedSelectPattern(cast<ICmpInst>(CondVal), TrueVal, FalseVal,
4678 if (Value *V = simplifySelectBitTest(TrueVal, FalseVal, X, Y,
4688 if (match(TrueVal, isFsh) && FalseVal == X && CmpLHS == ShAmt)
4701 if (match(FalseVal, isRotate) && TrueVal == X && CmpLHS == ShAmt &&
4703 return FalseVal;
4708 match(FalseVal, m_Neg(m_Intrinsic<Intrinsic::abs>(m_Specific(CmpLHS)))))
4709 return FalseVal;
4712 match(FalseVal, m_Intrinsic<Intrinsic::abs>(m_Specific(CmpLHS))))
4713 return FalseVal;
4718 simplifySelectWithFakeICmpEq(CmpLHS, CmpRHS, Pred, TrueVal, FalseVal))
4725 if (Value *V = simplifySelectWithICmpEq(CmpLHS, CmpRHS, TrueVal, FalseVal,
4728 if (Value *V = simplifySelectWithICmpEq(CmpRHS, CmpLHS, TrueVal, FalseVal,
4738 if (Value *V = simplifySelectWithICmpEq(X, CmpRHS, TrueVal, FalseVal, Q,
4741 if (Value *V = simplifySelectWithICmpEq(Y, CmpRHS, TrueVal, FalseVal, Q,
4750 if (Value *V = simplifySelectWithICmpEq(X, CmpRHS, TrueVal, FalseVal, Q,
4753 if (Value *V = simplifySelectWithICmpEq(Y, CmpRHS, TrueVal, FalseVal, Q,
4795 static Value *simplifySelectInst(Value *Cond, Value *TrueVal, Value *FalseVal,
4799 if (auto *FalseC = dyn_cast<Constant>(FalseVal))
4809 return isa<Constant>(FalseVal) ? FalseVal : TrueVal;
4818 return FalseVal;
4823 assert(TrueVal->getType() == FalseVal->getType() &&
4828 if (match(TrueVal, m_One()) && match(FalseVal, m_ZeroInt()))
4832 if (match(Cond, m_c_LogicalAnd(m_Specific(TrueVal), m_Specific(FalseVal))))
4833 return FalseVal;
4836 if (match(Cond, m_c_LogicalOr(m_Specific(TrueVal), m_Specific(FalseVal))))
4840 if (match(Cond, m_c_LogicalOr(m_Specific(FalseVal), m_Value())) &&
4845 if (match(FalseVal, m_ZeroInt())) {
4873 if (match(Cond, m_Not(m_c_LogicalAnd(m_Specific(FalseVal), m_Value()))))
4876 if (match(FalseVal, m_Not(m_c_LogicalAnd(m_Specific(Cond), m_Value()))))
4880 if (match(Cond, m_c_LogicalAnd(m_Specific(FalseVal), m_Value())))
4881 return FalseVal;
4883 if (match(FalseVal, m_c_LogicalAnd(m_Specific(Cond), m_Value())))
4889 if (TrueVal == FalseVal)
4894 if (match(FalseVal, m_ZeroInt()))
4897 if (match(FalseVal, m_One()))
4900 if (Cond == FalseVal) {
4915 (Q.isUndefValue(TrueVal) && impliesPoison(FalseVal, Cond)))
4916 return FalseVal;
4919 if (isa<PoisonValue>(FalseVal) ||
4920 (Q.isUndefValue(FalseVal) && impliesPoison(TrueVal, Cond)))
4927 match(FalseVal, m_Constant(FalseC))) {
4956 simplifySelectWithICmpCond(Cond, TrueVal, FalseVal, Q, MaxRecurse))
4959 if (Value *V = simplifySelectWithFCmp(Cond, TrueVal, FalseVal, Q))
4962 if (Value *V = foldSelectWithBinaryOp(Cond, TrueVal, FalseVal))
4967 return *Imp ? TrueVal : FalseVal;
4972 Value *llvm::simplifySelectInst(Value *Cond, Value *TrueVal, Value *FalseVal,
4974 return ::simplifySelectInst(Cond, TrueVal, FalseVal, Q, RecursionLimit);