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

References

include/llvm/Transforms/Scalar/LoopPassManager.h
  348       assert(L->isRecursivelyLCSSAForm(LAR.DT, LI) &&
lib/Analysis/IVUsers.cpp
   41   return IVUsers(&L, &AR.AC, &AR.LI, &AR.DT, &AR.SE);
lib/Analysis/InstructionSimplify.cpp
 5505   return {DL, &AR.TLI, &AR.DT, &AR.AC};
lib/Analysis/LoopAccessAnalysis.cpp
 2455   return LoopAccessInfo(&L, &AR.SE, &AR.TLI, &AR.AA, &AR.DT, &AR.LI);
lib/Transforms/Scalar/GuardWidening.cpp
  837   if (!GuardWideningImpl(AR.DT, nullptr, AR.LI, BPI,
  838                          AR.DT.getNode(RootBB),
lib/Transforms/Scalar/IndVarSimplify.cpp
 3145   IndVarSimplify IVS(&AR.LI, &AR.SE, &AR.DT, DL, &AR.TLI, &AR.TTI);
lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
 1756   InductiveRangeCheckElimination IRCE(AR.SE, BPI, AR.DT, AR.LI);
lib/Transforms/Scalar/LICM.cpp
  290   if (!LICM.runOnLoop(&L, &AR.AA, &AR.LI, &AR.DT, &AR.TLI, &AR.TTI, &AR.SE,
lib/Transforms/Scalar/LoopDeletion.cpp
  215   auto Result = deleteLoopIfDead(&L, AR.DT, AR.SE, AR.LI);
lib/Transforms/Scalar/LoopIdiomRecognize.cpp
  323   LoopIdiomRecognize LIR(&AR.AA, &AR.DT, &AR.LI, &AR.SE, &AR.TLI, &AR.TTI, DL,
lib/Transforms/Scalar/LoopInstSimplify.cpp
  231   if (!simplifyLoopInst(L, AR.DT, AR.LI, AR.AC, AR.TLI,
lib/Transforms/Scalar/LoopPassManager.cpp
   61     assert(L.isRecursivelyLCSSAForm(AR.DT, AR.LI) &&
lib/Transforms/Scalar/LoopRotation.cpp
   47   bool Changed = LoopRotation(&L, &AR.LI, &AR.TTI, &AR.AC, &AR.DT, &AR.SE,
lib/Transforms/Scalar/LoopSimplifyCFG.cpp
  696   if (!simplifyLoopCFG(L, AR.DT, AR.LI, AR.SE,
lib/Transforms/Scalar/LoopStrengthReduce.cpp
 5757                           AR.DT, AR.LI, AR.TTI, AR.AC, AR.TLI))
lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
  511       &L, AR.DT, &AR.LI, AR.SE, AR.TTI, AR.AC, DI, *ORE, OptLevel);
lib/Transforms/Scalar/LoopUnrollPass.cpp
 1319   bool Changed = tryToUnrollLoop(&L, AR.DT, &AR.LI, AR.SE, AR.TTI, AR.AC, *ORE,
lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
 2876   if (!unswitchLoop(L, AR.DT, AR.LI, AR.AC, AR.TTI, NonTrivial, UnswitchCB,
 2885   assert(AR.DT.verify(DominatorTree::VerificationLevel::Fast));
unittests/Transforms/Scalar/LoopPassManagerTest.cpp
  965         AR.DT.addNewBlock(NewLoop010PHBB, &Loop01BB);
  966         AR.DT.addNewBlock(NewLoop010BB, NewLoop010PHBB);
  967         AR.DT.addNewBlock(NewLoop01LatchBB, NewLoop010BB);
  968         EXPECT_TRUE(AR.DT.verify());
 1007         AR.DT.addNewBlock(NewLoop011PHBB, NewLoop010BB);
 1008         auto *NewDTNode = AR.DT.addNewBlock(NewLoop011BB, NewLoop011PHBB);
 1009         AR.DT.changeImmediateDominator(AR.DT[NewLoop01LatchBB], NewDTNode);
 1009         AR.DT.changeImmediateDominator(AR.DT[NewLoop01LatchBB], NewDTNode);
 1010         EXPECT_TRUE(AR.DT.verify());
 1153         AR.DT.addNewBlock(NewLoop01PHBB, &Loop00BB);
 1154         auto *NewDTNode = AR.DT.addNewBlock(NewLoop01BB, NewLoop01PHBB);
 1155         AR.DT.changeImmediateDominator(AR.DT[&Loop02PHBB], NewDTNode);
 1155         AR.DT.changeImmediateDominator(AR.DT[&Loop02PHBB], NewDTNode);
 1156         EXPECT_TRUE(AR.DT.verify());
 1215         AR.DT.addNewBlock(NewLoop03PHBB, &Loop02BB);
 1216         AR.DT.addNewBlock(NewLoop03BB, NewLoop03PHBB);
 1217         AR.DT.addNewBlock(NewLoop04PHBB, NewLoop03BB);
 1218         auto *NewDTNode = AR.DT.addNewBlock(NewLoop04BB, NewLoop04PHBB);
 1219         AR.DT.changeImmediateDominator(AR.DT[&Loop0LatchBB], NewDTNode);
 1219         AR.DT.changeImmediateDominator(AR.DT[&Loop0LatchBB], NewDTNode);
 1220         AR.DT.addNewBlock(NewLoop040PHBB, NewLoop04BB);
 1221         AR.DT.addNewBlock(NewLoop040BB, NewLoop040PHBB);
 1222         AR.DT.addNewBlock(NewLoop04LatchBB, NewLoop040BB);
 1223         EXPECT_TRUE(AR.DT.verify());
 1275         AR.DT.addNewBlock(NewLoop1PHBB, &Loop0BB);
 1276         auto *NewDTNode = AR.DT.addNewBlock(NewLoop1BB, NewLoop1PHBB);
 1277         AR.DT.changeImmediateDominator(AR.DT[&Loop2PHBB], NewDTNode);
 1277         AR.DT.changeImmediateDominator(AR.DT[&Loop2PHBB], NewDTNode);
 1278         EXPECT_TRUE(AR.DT.verify());
 1390       SmallVector<DomTreeNode *, 4> ChildNodes(AR.DT[LoopBB]->begin(),
 1391                                                AR.DT[LoopBB]->end());
 1393         AR.DT.changeImmediateDominator(ChildNode, AR.DT[&IDomBB]);
 1393         AR.DT.changeImmediateDominator(ChildNode, AR.DT[&IDomBB]);
 1394       AR.DT.eraseNode(LoopBB);
 1512             AR.DT.addNewBlock(NewLoop03PHBB, &Loop02PHBB);
 1513             AR.DT.addNewBlock(NewLoop03BB, NewLoop03PHBB);
 1514             AR.DT.changeImmediateDominator(AR.DT[&Loop0LatchBB],
 1514             AR.DT.changeImmediateDominator(AR.DT[&Loop0LatchBB],
 1515                                            AR.DT[NewLoop03BB]);
 1516             EXPECT_TRUE(AR.DT.verify());