reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/InstCombine/InstCombineSelect.cpp
 2212   if (Value *V = SimplifySelectInst(CondVal, TrueVal, FalseVal,
 2227   if (match(CondVal, m_OneUse(m_ICmp(Pred, m_Value(), m_Value()))) &&
 2230     CmpInst *Cond = cast<CmpInst>(CondVal);
 2240       TrueVal->getType() == CondVal->getType()) {
 2243       return BinaryOperator::CreateOr(CondVal, FalseVal);
 2247       Value *NotCond = Builder.CreateNot(CondVal, "not." + CondVal->getName());
 2247       Value *NotCond = Builder.CreateNot(CondVal, "not." + CondVal->getName());
 2252       return BinaryOperator::CreateAnd(CondVal, TrueVal);
 2256       Value *NotCond = Builder.CreateNot(CondVal, "not." + CondVal->getName());
 2256       Value *NotCond = Builder.CreateNot(CondVal, "not." + CondVal->getName());
 2262     if (CondVal == TrueVal)
 2263       return BinaryOperator::CreateOr(CondVal, FalseVal);
 2264     if (CondVal == FalseVal)
 2265       return BinaryOperator::CreateAnd(CondVal, TrueVal);
 2269     if (match(TrueVal, m_Not(m_Specific(CondVal))))
 2271     if (match(FalseVal, m_Not(m_Specific(CondVal))))
 2282       CondVal->getType()->isVectorTy() == SelType->isVectorTy()) {
 2285       return new ZExtInst(CondVal, SelType);
 2289       return new SExtInst(CondVal, SelType);
 2293       Value *NotCond = Builder.CreateNot(CondVal, "not." + CondVal->getName());
 2293       Value *NotCond = Builder.CreateNot(CondVal, "not." + CondVal->getName());
 2299       Value *NotCond = Builder.CreateNot(CondVal, "not." + CondVal->getName());
 2299       Value *NotCond = Builder.CreateNot(CondVal, "not." + CondVal->getName());
 2305   if (FCmpInst *FCI = dyn_cast<FCmpInst>(CondVal)) {
 2353   if (match(CondVal, m_FCmp(Pred, m_Specific(FalseVal), m_AnyZeroFP())) &&
 2361   if (match(CondVal, m_FCmp(Pred, m_Specific(TrueVal), m_AnyZeroFP())) &&
 2372   if (match(CondVal, m_FCmp(Pred, m_Specific(FalseVal), m_AnyZeroFP())) &&
 2384   if (match(CondVal, m_FCmp(Pred, m_Specific(TrueVal), m_AnyZeroFP())) &&
 2395   if (ICmpInst *ICI = dyn_cast<ICmpInst>(CondVal))
 2441       Value *CmpLHS = cast<CmpInst>(CondVal)->getOperand(0);
 2442       Value *CmpRHS = cast<CmpInst>(CondVal)->getOperand(1);
 2532     if (TrueSI->getCondition()->getType() == CondVal->getType()) {
 2534       if (TrueSI->getCondition() == CondVal) {
 2544         Value *And = Builder.CreateAnd(CondVal, TrueSI->getCondition());
 2552     if (FalseSI->getCondition()->getType() == CondVal->getType()) {
 2554       if (FalseSI->getCondition() == CondVal) {
 2562         Value *Or = Builder.CreateOr(CondVal, FalseSI->getCondition());
 2590       if (TrueBOSI->getCondition() == CondVal) {
 2597       if (TrueBOSI->getCondition() == CondVal) {
 2610       if (FalseBOSI->getCondition() == CondVal) {
 2617       if (FalseBOSI->getCondition() == CondVal) {
 2626   if (match(CondVal, m_Not(m_Value(NotCond)))) {
 2650   if (!CondVal->getType()->isVectorTy() && !AC.assumptions().empty()) {
 2652     computeKnownBits(CondVal, Known, 0, &SI);