Home
last modified time | relevance | path

Searched refs:SPF (Results 1 – 10 of 10) sorted by relevance

/llvm-project-15.0.7/llvm/include/llvm/Analysis/
H A DValueTracking.h730 static bool isMinOrMax(SelectPatternFlavor SPF) { in isMinOrMax()
731 return SPF != SPF_UNKNOWN && SPF != SPF_ABS && SPF != SPF_NABS; in isMinOrMax()
775 CmpInst::Predicate getMinMaxPred(SelectPatternFlavor SPF,
780 SelectPatternFlavor getInverseMinMaxFlavor(SelectPatternFlavor SPF);
786 CmpInst::Predicate getInverseMinMaxPred(SelectPatternFlavor SPF);
790 APInt getMinMaxLimit(SelectPatternFlavor SPF, unsigned BitWidth);
/llvm-project-15.0.7/llvm/lib/Transforms/Scalar/
H A DEarlyCSE.cpp234 SelectPatternFlavor SPF; in getHashValueImpl() local
236 if (matchSelectWithOptionalNotCond(Inst, Cond, A, B, SPF)) { in getHashValueImpl()
242 if (SPF == SPF_SMIN || SPF == SPF_SMAX || in getHashValueImpl()
243 SPF == SPF_UMIN || SPF == SPF_UMAX) { in getHashValueImpl()
246 return hash_combine(Inst->getOpcode(), SPF, A, B); in getHashValueImpl()
/llvm-project-15.0.7/llvm/lib/Transforms/InstCombine/
H A DInstCombineSelect.cpp1099 if (SPF == SelectPatternFlavor::SPF_ABS || in canonicalizeSPF()
1100 SPF == SelectPatternFlavor::SPF_NABS) { in canonicalizeSPF()
1105 bool IntMinIsPoison = SPF == SelectPatternFlavor::SPF_ABS && in canonicalizeSPF()
1112 if (SPF == SelectPatternFlavor::SPF_NABS) in canonicalizeSPF()
1117 if (SelectPatternResult::isMinOrMax(SPF)) { in canonicalizeSPF()
1119 switch (SPF) { in canonicalizeSPF()
2952 auto SPF = SPR.Flavor; in visitSelectInst() local
2953 if (SPF) { in visitSelectInst()
2957 RHS2, SI, SPF, RHS)) in visitSelectInst()
2961 RHS2, SI, SPF, LHS)) in visitSelectInst()
[all …]
H A DInstCombineMulDivRem.cpp240 SelectPatternFlavor SPF = matchSelectPattern(Op0, X, Y).Flavor; in visitMul() local
241 if (SPF == SPF_ABS || SPF == SPF_NABS) in visitMul()
H A DInstCombineCalls.cpp559 SelectPatternFlavor SPF = matchSelectPattern(Op0, X, Y).Flavor; in foldCttzCtlz() local
560 if (SPF == SPF_ABS || SPF == SPF_NABS) in foldCttzCtlz()
H A DInstCombineCompares.cpp5536 SelectPatternFlavor SPF = matchSelectPattern(Cmp.user_back(), A, B).Flavor; in foldICmpUsingKnownBits() local
5537 if (!SelectPatternResult::isMinOrMax(SPF)) in foldICmpUsingKnownBits()
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DValueTracking.cpp1157 switch (SPF) { in computeKnownBitsFromOperator()
1182 if (SPF == SPF_ABS) { in computeKnownBitsFromOperator()
2980 if (SPF != SPF_SMAX && SPF != SPF_SMIN) in isSignedMinMaxClamp()
2994 if (SPF == SPF_SMIN) in isSignedMinMaxClamp()
6408 if (SPF == SPF_FMINNUM) in getMinMaxPred()
6410 if (SPF == SPF_FMAXNUM) in getMinMaxPred()
6416 if (SPF == SPF_SMIN) return SPF_SMAX; in getInverseMinMaxFlavor()
6417 if (SPF == SPF_UMIN) return SPF_UMAX; in getInverseMinMaxFlavor()
6418 if (SPF == SPF_SMAX) return SPF_SMIN; in getInverseMinMaxFlavor()
6419 if (SPF == SPF_UMAX) return SPF_UMIN; in getInverseMinMaxFlavor()
[all …]
H A DInstructionSimplify.cpp4282 SelectPatternFlavor SPF = in simplifySelectWithICmpCond() local
4286 if (SelectPatternResult::isMinOrMax(SPF) && Pred == getMinMaxPred(SPF)) { in simplifySelectWithICmpCond()
4287 APInt LimitC = getMinMaxLimit(getInverseMinMaxFlavor(SPF), in simplifySelectWithICmpCond()
/llvm-project-15.0.7/llvm/lib/Target/ARM/
H A DARMTargetTransformInfo.cpp952 SelectPatternFlavor SPF = matchSelectPattern(Sel, LHS, RHS).Flavor; in getCmpSelInstrCost() local
954 switch (SPF) { in getCmpSelInstrCost()
/llvm-project-15.0.7/llvm/test/Transforms/InstCombine/
H A Dminmax-fold.ll1050 ; used as part of a umax to avoid breaking the SPF pattern.