LLVM 22.0.0git
llvm::PassInstrumentationCallbacks Class Reference

This class manages callbacks registration, as well as provides a way for PassInstrumentation to pass control to the registered callbacks. More...

#include "llvm/IR/PassInstrumentation.h"

Public Types

using BeforePassFunc = bool(StringRef, Any)
using BeforeSkippedPassFunc = void(StringRef, Any)
using BeforeNonSkippedPassFunc = void(StringRef, Any)
using AfterPassFunc = void(StringRef, Any, const PreservedAnalyses &)
using AfterPassInvalidatedFunc = void(StringRef, const PreservedAnalyses &)
using BeforeAnalysisFunc = void(StringRef, Any)
using AfterAnalysisFunc = void(StringRef, Any)
using AnalysisInvalidatedFunc = void(StringRef, Any)
using AnalysesClearedFunc = void(StringRef)

Public Member Functions

 PassInstrumentationCallbacks ()=default
 PassInstrumentationCallbacks (const PassInstrumentationCallbacks &)=delete
 Copying PassInstrumentationCallbacks is not intended.
void operator= (const PassInstrumentationCallbacks &)=delete
template<typename CallableT>
void registerShouldRunOptionalPassCallback (CallableT C)
template<typename CallableT>
void registerBeforeSkippedPassCallback (CallableT C)
template<typename CallableT>
void registerBeforeNonSkippedPassCallback (CallableT C)
template<typename CallableT>
void registerAfterPassCallback (CallableT C, bool ToFront=false)
template<typename CallableT>
void registerAfterPassInvalidatedCallback (CallableT C, bool ToFront=false)
template<typename CallableT>
void registerBeforeAnalysisCallback (CallableT C)
template<typename CallableT>
void registerAfterAnalysisCallback (CallableT C, bool ToFront=false)
template<typename CallableT>
void registerAnalysisInvalidatedCallback (CallableT C)
template<typename CallableT>
void registerAnalysesClearedCallback (CallableT C)
template<typename CallableT>
void registerClassToPassNameCallback (CallableT C)
LLVM_ABI void addClassToPassName (StringRef ClassName, StringRef PassName)
 Add a class name to pass name mapping for use by pass instrumentation.
LLVM_ABI StringRef getPassNameForClassName (StringRef ClassName)
 Get the pass name for a given pass class name. Empty if no match found.

Friends

class PassInstrumentation

Detailed Description

This class manages callbacks registration, as well as provides a way for PassInstrumentation to pass control to the registered callbacks.

Definition at line 75 of file PassInstrumentation.h.

Member Typedef Documentation

◆ AfterAnalysisFunc

◆ AfterPassFunc

◆ AfterPassInvalidatedFunc

◆ AnalysesClearedFunc

◆ AnalysisInvalidatedFunc

◆ BeforeAnalysisFunc

◆ BeforeNonSkippedPassFunc

◆ BeforePassFunc

◆ BeforeSkippedPassFunc

Constructor & Destructor Documentation

◆ PassInstrumentationCallbacks() [1/2]

llvm::PassInstrumentationCallbacks::PassInstrumentationCallbacks ( )
default

◆ PassInstrumentationCallbacks() [2/2]

llvm::PassInstrumentationCallbacks::PassInstrumentationCallbacks ( const PassInstrumentationCallbacks & )
delete

Copying PassInstrumentationCallbacks is not intended.

References PassInstrumentationCallbacks().

Member Function Documentation

◆ addClassToPassName()

void llvm::PassInstrumentationCallbacks::addClassToPassName ( StringRef ClassName,
StringRef PassName )

Add a class name to pass name mapping for use by pass instrumentation.

Definition at line 24 of file PassInstrumentation.cpp.

References assert(), and PassName.

◆ getPassNameForClassName()

StringRef llvm::PassInstrumentationCallbacks::getPassNameForClassName ( StringRef ClassName)

Get the pass name for a given pass class name. Empty if no match found.

Definition at line 31 of file PassInstrumentation.cpp.

References llvm::StringRef::find().

◆ operator=()

void llvm::PassInstrumentationCallbacks::operator= ( const PassInstrumentationCallbacks & )
delete

◆ registerAfterAnalysisCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerAfterAnalysisCallback ( CallableT C,
bool ToFront = false )
inline

Definition at line 142 of file PassInstrumentation.h.

References llvm::CallingConv::C.

◆ registerAfterPassCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerAfterPassCallback ( CallableT C,
bool ToFront = false )
inline

Definition at line 120 of file PassInstrumentation.h.

References llvm::CallingConv::C.

◆ registerAfterPassInvalidatedCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerAfterPassInvalidatedCallback ( CallableT C,
bool ToFront = false )
inline

Definition at line 128 of file PassInstrumentation.h.

References llvm::CallingConv::C.

◆ registerAnalysesClearedCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerAnalysesClearedCallback ( CallableT C)
inline

Definition at line 156 of file PassInstrumentation.h.

References llvm::CallingConv::C.

◆ registerAnalysisInvalidatedCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerAnalysisInvalidatedCallback ( CallableT C)
inline

Definition at line 151 of file PassInstrumentation.h.

References llvm::CallingConv::C.

◆ registerBeforeAnalysisCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerBeforeAnalysisCallback ( CallableT C)
inline

Definition at line 137 of file PassInstrumentation.h.

References llvm::CallingConv::C.

◆ registerBeforeNonSkippedPassCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerBeforeNonSkippedPassCallback ( CallableT C)
inline

◆ registerBeforeSkippedPassCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerBeforeSkippedPassCallback ( CallableT C)
inline

Definition at line 110 of file PassInstrumentation.h.

References llvm::CallingConv::C.

◆ registerClassToPassNameCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerClassToPassNameCallback ( CallableT C)
inline

Definition at line 161 of file PassInstrumentation.h.

References llvm::CallingConv::C.

◆ registerShouldRunOptionalPassCallback()

template<typename CallableT>
void llvm::PassInstrumentationCallbacks::registerShouldRunOptionalPassCallback ( CallableT C)
inline

Definition at line 105 of file PassInstrumentation.h.

References llvm::CallingConv::C.

◆ PassInstrumentation

friend class PassInstrumentation
friend

Definition at line 171 of file PassInstrumentation.h.

References PassInstrumentation.

Referenced by PassInstrumentation.


The documentation for this class was generated from the following files: