15#ifndef LLVM_ANALYSIS_CYCLEANALYSIS_H
16#define LLVM_ANALYSIS_CYCLEANALYSIS_H
39 void releaseMemory()
override;
60 FunctionAnalysisManager::Invalidator &);
static void print(raw_ostream &Out, object::Archive::Kind Kind, T Val)
This file declares the LLVM IR specialization of the GenericCycle templates.
static bool runOnFunction(Function &F, bool PostInlining)
This header defines various interfaces for pass management in LLVM.
Represent the analysis usage information of a pass.
Analysis pass which computes a CycleInfo.
LLVM_ABI bool invalidate(Function &F, const PreservedAnalyses &PA, FunctionAnalysisManager::Invalidator &)
CycleInfo Result
Provide the result typedef for this analysis pass.
CycleInfoWrapperPass LegacyWrapper
LLVM_ABI CycleInfo run(Function &F, FunctionAnalysisManager &)
Run the analysis pass over a function and produce a dominator tree.
LLVM_ABI CycleInfoPrinterPass(raw_ostream &OS)
LLVM_ABI PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM)
Legacy analysis pass which computes a CycleInfo.
const CycleInfo & getResult() const
A Module instance is used to store all the information related to an LLVM module.
A set of analyses that are preserved following a run of a transformation pass.
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.
AnalysisManager< Function > FunctionAnalysisManager
Convenience typedef for the Function analysis manager.
A CRTP mix-in that provides informational APIs needed for analysis passes.
A special type used by analysis passes to provide an address that identifies that particular analysis...
LLVM_ABI PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM)
A CRTP mix-in for passes that should not be skipped.