class PassInstrumentationCallbacks
Declaration
class PassInstrumentationCallbacks { /* full declaration omitted */ };
Description
This class manages callbacks registration, as well as provides a way for PassInstrumentation to pass control to the registered callbacks.
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:66
Member Variables
- private SmallVector<llvm::unique_function<BeforePassFunc>, 4> ShouldRunOptionalPassCallbacks
- These are only run on passes that are not required. They return false when an optional pass should be skipped.
- private SmallVector< llvm::unique_function<BeforeSkippedPassFunc>, 4> BeforeSkippedPassCallbacks
- These are run on passes that are skipped.
- private SmallVector<llvm::unique_function< BeforeNonSkippedPassFunc>, 4> BeforeNonSkippedPassCallbacks
- These are run on passes that are about to be run.
- private SmallVector<llvm::unique_function<AfterPassFunc>, 4> AfterPassCallbacks
- These are run on passes that have just run.
- private SmallVector<llvm::unique_function< AfterPassInvalidatedFunc>, 4> AfterPassInvalidatedCallbacks
- These are run passes that have just run on invalidated IR.
- private SmallVector< llvm::unique_function<BeforeAnalysisFunc>, 4> BeforeAnalysisCallbacks
- These are run on analyses that are about to be run.
- private SmallVector< llvm::unique_function<AfterAnalysisFunc>, 4> AfterAnalysisCallbacks
- These are run on analyses that have been run.
- private SmallVector<llvm::unique_function< AnalysisInvalidatedFunc>, 4> AnalysisInvalidatedCallbacks
- These are run on analyses that have been invalidated.
- private SmallVector< llvm::unique_function<AnalysesClearedFunc>, 4> AnalysesClearedCallbacks
- These are run on analyses that have been cleared.
- private StringMap<std::string> ClassToPassName
Method Overview
- public PassInstrumentationCallbacks()
- public PassInstrumentationCallbacks(const llvm::PassInstrumentationCallbacks &)
- public void addClassToPassName(llvm::StringRef ClassName, llvm::StringRef PassName)
- public llvm::StringRef getPassNameForClassName(llvm::StringRef ClassName)
- public template <typename CallableT>void registerAfterAnalysisCallback(CallableT C)
- public template <typename CallableT>void registerAfterPassCallback(CallableT C)
- public template <typename CallableT>void registerAfterPassInvalidatedCallback(CallableT C)
- public template <typename CallableT>void registerAnalysesClearedCallback(CallableT C)
- public template <typename CallableT>void registerAnalysisInvalidatedCallback(CallableT C)
- public template <typename CallableT>void registerBeforeAnalysisCallback(CallableT C)
- public template <typename CallableT>void registerBeforeNonSkippedPassCallback(CallableT C)
- public template <typename CallableT>void registerBeforeSkippedPassCallback(CallableT C)
- public template <typename CallableT>void registerShouldRunOptionalPassCallback(CallableT C)
Methods
¶PassInstrumentationCallbacks()
PassInstrumentationCallbacks()
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:89
¶PassInstrumentationCallbacks(
const llvm::PassInstrumentationCallbacks&)
PassInstrumentationCallbacks(
const llvm::PassInstrumentationCallbacks&)
Description
Copying PassInstrumentationCallbacks is not intended.
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:92
Parameters
¶void addClassToPassName(llvm::StringRef ClassName,
llvm::StringRef PassName)
void addClassToPassName(llvm::StringRef ClassName,
llvm::StringRef PassName)
Description
Add a class name to pass name mapping for use by pass instrumentation.
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:140
Parameters
- llvm::StringRef ClassName
- llvm::StringRef PassName
¶llvm::StringRef getPassNameForClassName(
llvm::StringRef ClassName)
llvm::StringRef getPassNameForClassName(
llvm::StringRef ClassName)
Description
Get the pass name for a given pass class name.
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:142
Parameters
- llvm::StringRef ClassName
¶template <typename CallableT>
void registerAfterAnalysisCallback(CallableT C)
template <typename CallableT>
void registerAfterAnalysisCallback(CallableT C)
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:125
Templates
- CallableT
Parameters
- CallableT C
¶template <typename CallableT>
void registerAfterPassCallback(CallableT C)
template <typename CallableT>
void registerAfterPassCallback(CallableT C)
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:110
Templates
- CallableT
Parameters
- CallableT C
¶template <typename CallableT>
void registerAfterPassInvalidatedCallback(
CallableT C)
template <typename CallableT>
void registerAfterPassInvalidatedCallback(
CallableT C)
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:115
Templates
- CallableT
Parameters
- CallableT C
¶template <typename CallableT>
void registerAnalysesClearedCallback(CallableT C)
template <typename CallableT>
void registerAnalysesClearedCallback(CallableT C)
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:135
Templates
- CallableT
Parameters
- CallableT C
¶template <typename CallableT>
void registerAnalysisInvalidatedCallback(
CallableT C)
template <typename CallableT>
void registerAnalysisInvalidatedCallback(
CallableT C)
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:130
Templates
- CallableT
Parameters
- CallableT C
¶template <typename CallableT>
void registerBeforeAnalysisCallback(CallableT C)
template <typename CallableT>
void registerBeforeAnalysisCallback(CallableT C)
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:120
Templates
- CallableT
Parameters
- CallableT C
¶template <typename CallableT>
void registerBeforeNonSkippedPassCallback(
CallableT C)
template <typename CallableT>
void registerBeforeNonSkippedPassCallback(
CallableT C)
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:106
Templates
- CallableT
Parameters
- CallableT C
¶template <typename CallableT>
void registerBeforeSkippedPassCallback(
CallableT C)
template <typename CallableT>
void registerBeforeSkippedPassCallback(
CallableT C)
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:101
Templates
- CallableT
Parameters
- CallableT C
¶template <typename CallableT>
void registerShouldRunOptionalPassCallback(
CallableT C)
template <typename CallableT>
void registerShouldRunOptionalPassCallback(
CallableT C)
Declared at: llvm/include/llvm/IR/PassInstrumentation.h:96
Templates
- CallableT
Parameters
- CallableT C