Lines Matching refs:BaseInst
374 Instruction *BaseInst; member
890 if (hasUsesOutsideLoop(DRS.BaseInst, L)) in validateRootSet()
902 const auto *ADR = dyn_cast<SCEVAddRecExpr>(SE->getSCEV(DRS.BaseInst)); in validateRootSet()
944 DRS.BaseInst = nullptr; in findRootsBase()
949 if (!DRS.BaseInst) { in findRootsBase()
950 DRS.BaseInst = KV.second; in findRootsBase()
963 DRS.BaseInst = KV.second; in findRootsBase()
1034 Exclude.insert(DRS.BaseInst); in collectUsedInstructions()
1040 collectInLoopUserSet(DRS.BaseInst, Exclude, PossibleRedSet, VBase); in collectUsedInstructions()
1074 Exclude.insert(DRS.BaseInst); in collectUsedInstructions()
1108 if (DRS.BaseInst == I) in isBaseInst()
1244 Instruction *BaseInst = BaseIt->first; in validate() local
1249 if (isBaseInst(BaseInst)) { in validate()
1250 Visited.insert(BaseInst); in validate()
1262 if (!BaseInst->isSameOperationAs(RootInst)) { in validate()
1276 !BaseInst->isSameOperationAs(TryIt->first) && in validate()
1285 << *BaseInst << " vs. " << *RootInst << "\n"); in validate()
1321 LLVM_DEBUG(dbgs() << "LRR: iteration root match failed at " << *BaseInst in validate()
1333 << *BaseInst << " vs. " << *RootInst in validate()
1343 if (FutureSideEffects && ((!isUnorderedLoadStore(BaseInst) && in validate()
1344 !isSafeToSpeculativelyExecute(BaseInst)) || in validate()
1347 LLVM_DEBUG(dbgs() << "LRR: iteration root match failed at " << *BaseInst in validate()
1363 bool InReduction = Reductions.isPairInSame(BaseInst, RootInst); in validate()
1365 if (!(InReduction && BaseInst->isAssociative())) { in validate()
1367 for (unsigned j = 0; j < BaseInst->getNumOperands(); ++j) { in validate()
1384 Op2 = DRS.BaseInst; in validate()
1390 if (BaseInst->getOperand(Swapped ? unsigned(!j) : j) != Op2) { in validate()
1396 if (!Swapped && BaseInst->isCommutative() && !SomeOpMatched && in validate()
1397 BaseInst->getOperand(!j) == Op2) { in validate()
1401 << "LRR: iteration root match failed at " << *BaseInst in validate()
1411 if ((!PossibleRedLastSet.count(BaseInst) && in validate()
1412 hasUsesOutsideLoop(BaseInst, L)) || in validate()
1415 LLVM_DEBUG(dbgs() << "LRR: iteration root match failed at " << *BaseInst in validate()
1420 Reductions.recordPair(BaseInst, RootInst, Iter); in validate()
1421 BaseMap.insert(std::make_pair(RootInst, BaseInst)); in validate()
1424 Visited.insert(BaseInst); in validate()
1448 cast<SCEVAddRecExpr>(SE->getSCEV(DRS.BaseInst)); in replace()
1501 Instruction *Inst = DRS.BaseInst; in replaceIV()