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

References

lib/Transforms/Scalar/LICM.cpp
  332   assert(L->isLCSSAForm(*DT) && "Loop is not in LCSSA form.");
  336   if (hasDisableLICMTransformsHint(L)) {
  347     CurAST = collectAliasInfoForLoop(L, LI, AA);
  353     for (auto *BB : L->getBlocks()) {
  370   BasicBlock *Preheader = L->getLoopPreheader();
  374   SafetyInfo.computeLoopSafetyInfo(L);
  388   if (L->hasDedicatedExits())
  389     Changed |= sinkRegion(DT->getNode(L->getHeader()), AA, LI, DT, TLI, TTI, L,
  389     Changed |= sinkRegion(DT->getNode(L->getHeader()), AA, LI, DT, TLI, TTI, L,
  393     Changed |= hoistRegion(DT->getNode(L->getHeader()), AA, LI, DT, TLI, L,
  393     Changed |= hoistRegion(DT->getNode(L->getHeader()), AA, LI, DT, TLI, L,
  403   if (!DisablePromotion && Preheader && L->hasDedicatedExits() &&
  407     L->getUniqueExitBlocks(ExitBlocks);
  432         CurAST = collectAliasInfoForLoopWithMSSA(L, AA, MSSAU.get());
  440             !L->isLoopInvariant(AS.begin()->getValue()))
  453             DT, TLI, L, CurAST.get(), MSSAU.get(), &SafetyInfo, ORE);
  463         formLCSSARecursively(*L, *DT, LI, SE);
  472   assert(L->isLCSSAForm(*DT) && "Loop not left in LCSSA form after LICM!");
  473   assert((!L->getParentLoop() || L->getParentLoop()->isLCSSAForm(*DT)) &&
  473   assert((!L->getParentLoop() || L->getParentLoop()->isLCSSAForm(*DT)) &&
  478   if (!MSSAU.get() && CurAST.get() && L->getParentLoop() && !DeleteAST)
  479     LoopToAliasSetMap[L] = std::move(CurAST);
  485     SE->forgetLoopDispositions(L);