Lines Matching refs:BaseInst
343 Instruction *BaseInst; member
911 DRS.BaseInst = nullptr; in findRootsBase()
914 if (!DRS.BaseInst) { in findRootsBase()
915 DRS.BaseInst = KV.second; in findRootsBase()
924 DRS.BaseInst = KV.second; in findRootsBase()
967 const auto *ADR = dyn_cast<SCEVAddRecExpr>(SE->getSCEV(V.BaseInst)); in findRoots()
1014 Exclude.insert(DRS.BaseInst); in collectUsedInstructions()
1020 collectInLoopUserSet(DRS.BaseInst, Exclude, PossibleRedSet, VBase); in collectUsedInstructions()
1054 Exclude.insert(DRS.BaseInst); in collectUsedInstructions()
1083 if (DRS.BaseInst == I) in isBaseInst()
1219 Instruction *BaseInst = BaseIt->first; in validate() local
1224 if (isBaseInst(BaseInst)) { in validate()
1225 Visited.insert(BaseInst); in validate()
1237 if (!BaseInst->isSameOperationAs(RootInst)) { in validate()
1251 !BaseInst->isSameOperationAs(TryIt->first) && in validate()
1259 DEBUG(dbgs() << "LRR: iteration root match failed at " << *BaseInst << in validate()
1296 DEBUG(dbgs() << "LRR: iteration root match failed at " << *BaseInst << in validate()
1307 DEBUG(dbgs() << "LRR: iteration root match failed at " << *BaseInst << in validate()
1317 if (FutureSideEffects && ((!isSimpleLoadStore(BaseInst) && in validate()
1318 !isSafeToSpeculativelyExecute(BaseInst)) || in validate()
1321 DEBUG(dbgs() << "LRR: iteration root match failed at " << *BaseInst << in validate()
1337 bool InReduction = Reductions.isPairInSame(BaseInst, RootInst); in validate()
1339 if (!(InReduction && BaseInst->isAssociative())) { in validate()
1341 for (unsigned j = 0; j < BaseInst->getNumOperands(); ++j) { in validate()
1358 Op2 = DRS.BaseInst; in validate()
1364 if (BaseInst->getOperand(Swapped ? unsigned(!j) : j) != Op2) { in validate()
1370 if (!Swapped && BaseInst->isCommutative() && !SomeOpMatched && in validate()
1371 BaseInst->getOperand(!j) == Op2) { in validate()
1374 DEBUG(dbgs() << "LRR: iteration root match failed at " << *BaseInst in validate()
1384 if ((!PossibleRedLastSet.count(BaseInst) && in validate()
1385 hasUsesOutsideLoop(BaseInst, L)) || in validate()
1388 DEBUG(dbgs() << "LRR: iteration root match failed at " << *BaseInst << in validate()
1393 Reductions.recordPair(BaseInst, RootInst, Iter); in validate()
1394 BaseMap.insert(std::make_pair(RootInst, BaseInst)); in validate()
1397 Visited.insert(BaseInst); in validate()
1437 replaceIV(DRS.BaseInst, IV, IterCount); in replace()