17#define DEBUG_TYPE "loop-accesses"
23 OS <<
"Printing analysis 'Loop Access Analysis' for function '" <<
F.getName()
28 while (!Worklist.
empty()) {
30 OS.
indent(2) << L->getHeader()->getName() <<
":\n";
31 LAIs.getInfo(*L).print(OS, 4);
This file provides a priority worklist.
A container for analyses that lazily runs them and caches their results.
PassT::Result & getResult(IRUnitT &IR, ExtraArgTs... ExtraArgs)
Get the result of an analysis pass for a given IR unit.
This analysis provides dependence information for the memory accesses of a loop.
PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM)
Analysis pass that exposes the LoopInfo for a function.
Represents a single loop in the control flow graph.
A set of analyses that are preserved following a run of a transformation pass.
static PreservedAnalyses all()
Construct a special preserved set that preserves all passes.
bool empty() const
Determine if the PriorityWorklist is empty or not.
A version of PriorityWorklist that selects small size optimized data structures for the vector and ma...
raw_ostream & indent(unsigned NumSpaces)
indent - Insert 'NumSpaces' spaces.
This is an optimization pass for GlobalISel generic memory operations.
void appendLoopsToWorklist(RangeT &&, SmallPriorityWorklist< Loop *, 4 > &)
Utility that implements appending of loops onto a worklist given a range.