struct AnalysisPassConcept
Declaration
template <typename IRUnitT,
typename PreservedAnalysesT,
typename InvalidatorT,
typename... ExtraArgTs>
struct AnalysisPassConcept { /* full declaration omitted */ };
Description
Abstract concept of an analysis pass. This concept is parameterized over the IR unit that it can run over and produce an analysis result.
Declared at: llvm/include/llvm/IR/PassManagerInternal.h:271
Templates
- IRUnitT
- PreservedAnalysesT
- InvalidatorT
- ExtraArgTs
Method Overview
- public virtual llvm::StringRef name() const
- public virtual std::unique_ptr<AnalysisResultConcept<IRUnitT, PreservedAnalysesT, InvalidatorT>> run(IRUnitT & IR, AnalysisManager<IRUnitT, ExtraArgTs...> & AM, ExtraArgTs... ExtraArgs)
- public virtual ~AnalysisPassConcept<IRUnitT, PreservedAnalysesT, InvalidatorT, ExtraArgTs...>()
Methods
¶virtual llvm::StringRef name() const
virtual llvm::StringRef name() const
Description
Polymorphic method to access the name of a pass.
Declared at: llvm/include/llvm/IR/PassManagerInternal.h:283
¶virtual std::unique_ptr<
AnalysisResultConcept<IRUnitT,
PreservedAnalysesT,
InvalidatorT>>
run(IRUnitT& IR,
AnalysisManager<IRUnitT, ExtraArgTs...>& AM,
ExtraArgTs... ExtraArgs)
virtual std::unique_ptr<
AnalysisResultConcept<IRUnitT,
PreservedAnalysesT,
InvalidatorT>>
run(IRUnitT& IR,
AnalysisManager<IRUnitT, ExtraArgTs...>& AM,
ExtraArgTs... ExtraArgs)
Description
Method to run this analysis over a unit of IR.
Declared at: llvm/include/llvm/IR/PassManagerInternal.h:279
Parameters
- IRUnitT& IR
- AnalysisManager<IRUnitT, ExtraArgTs...>& AM
- ExtraArgTs... ExtraArgs
Returns
A unique_ptr to the analysis result object to be queried by users.
¶virtual ~AnalysisPassConcept<IRUnitT,
PreservedAnalysesT,
InvalidatorT,
ExtraArgTs...>()
virtual ~AnalysisPassConcept<IRUnitT,
PreservedAnalysesT,
InvalidatorT,
ExtraArgTs...>()
Declared at: llvm/include/llvm/IR/PassManagerInternal.h:272