Lines Matching refs:SelI
622 bool matchLeftShift(SelectInst *SelI, Value *CIV, ParsedValues &PV);
623 bool matchRightShift(SelectInst *SelI, ParsedValues &PV);
683 bool PolynomialMultiplyRecognize::matchLeftShift(SelectInst *SelI, in matchLeftShift() argument
692 Value *CondV = SelI->getCondition(); in matchLeftShift()
693 Value *TrueV = SelI->getTrueValue(); in matchLeftShift()
694 Value *FalseV = SelI->getFalseValue(); in matchLeftShift()
766 if (!SelI->hasOneUse()) in matchLeftShift()
772 Value *U = *SelI->user_begin(); in matchLeftShift()
773 if (!match(U, m_Xor(m_Specific(SelI), m_Value(R))) && in matchLeftShift()
774 !match(U, m_Xor(m_Value(R), m_Specific(SelI)))) in matchLeftShift()
798 bool PolynomialMultiplyRecognize::matchRightShift(SelectInst *SelI, in matchRightShift() argument
807 Value *CondV = SelI->getCondition(); in matchRightShift()
808 Value *TrueV = SelI->getTrueValue(); in matchRightShift()
809 Value *FalseV = SelI->getFalseValue(); in matchRightShift()
873 bool PolynomialMultiplyRecognize::scanSelect(SelectInst *SelI, in scanSelect() argument
915 if (matchLeftShift(SelI, CIV, PV)) { in scanSelect()
924 if (SelI != RPhi->getIncomingValueForBlock(LoopB)) in scanSelect()
926 PV.Res = SelI; in scanSelect()
966 if (matchRightShift(SelI, PV)) { in scanSelect()
1834 SelectInst *SelI = (T && isa<SelectInst>(T)) ? cast<SelectInst>(T) : SI; in recognize() local
1835 LLVM_DEBUG(dbgs() << "scanSelect(pre-scan): " << PE(C, SelI) << '\n'); in recognize()
1836 if (scanSelect(SelI, LoopB, EntryB, CIV, PV, true)) { in recognize()
1838 if (SelI != SI) { in recognize()
1868 SelectInst *SelI = dyn_cast_or_null<SelectInst>(T); in recognize() local
1869 if (SelI != SI) { in recognize()
1885 SelectInst *SelI = dyn_cast<SelectInst>(&In); in recognize() local
1886 if (!SelI) in recognize()
1888 LLVM_DEBUG(dbgs() << "scanSelect: " << *SelI << '\n'); in recognize()
1889 FoundScan = scanSelect(SelI, LoopB, EntryB, CIV, PV, false); in recognize()