LLVM 17.0.0git
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
llvm::ChangeReporter< IRUnitT > Class Template Referenceabstract

#include "llvm/Passes/StandardInstrumentations.h"

Inheritance diagram for llvm::ChangeReporter< IRUnitT >:
Inheritance graph
[legend]
Collaboration diagram for llvm::ChangeReporter< IRUnitT >:
Collaboration graph
[legend]

Public Member Functions

virtual ~ChangeReporter ()
 
void saveIRBeforePass (Any IR, StringRef PassID, StringRef PassName)
 
void handleIRAfterPass (Any IR, StringRef PassID, StringRef PassName)
 
void handleInvalidatedPass (StringRef PassID)
 

Protected Member Functions

 ChangeReporter (bool RunInVerboseMode)
 
void registerRequiredCallbacks (PassInstrumentationCallbacks &PIC)
 
virtual void handleInitialIR (Any IR)=0
 
virtual void generateIRRepresentation (Any IR, StringRef PassID, IRUnitT &Output)=0
 
virtual void omitAfter (StringRef PassID, std::string &Name)=0
 
virtual void handleAfter (StringRef PassID, std::string &Name, const IRUnitT &Before, const IRUnitT &After, Any)=0
 
virtual void handleInvalidated (StringRef PassID)=0
 
virtual void handleFiltered (StringRef PassID, std::string &Name)=0
 
virtual void handleIgnored (StringRef PassID, std::string &Name)=0
 

Protected Attributes

std::vector< IRUnitT > BeforeStack
 
bool InitialIR = true
 
const bool VerboseMode
 

Detailed Description

template<typename IRUnitT>
class llvm::ChangeReporter< IRUnitT >

Definition at line 174 of file StandardInstrumentations.h.

Constructor & Destructor Documentation

◆ ChangeReporter()

template<typename IRUnitT >
llvm::ChangeReporter< IRUnitT >::ChangeReporter ( bool  RunInVerboseMode)
inlineprotected

Definition at line 176 of file StandardInstrumentations.h.

◆ ~ChangeReporter()

template<typename T >
ChangeReporter::~ChangeReporter
virtual

Definition at line 321 of file StandardInstrumentations.cpp.

References assert().

Member Function Documentation

◆ generateIRRepresentation()

template<typename IRUnitT >
virtual void llvm::ChangeReporter< IRUnitT >::generateIRRepresentation ( Any  IR,
StringRef  PassID,
IRUnitT &  Output 
)
protectedpure virtual

Implemented in llvm::DotCfgChangeReporter.

◆ handleAfter()

template<typename IRUnitT >
virtual void llvm::ChangeReporter< IRUnitT >::handleAfter ( StringRef  PassID,
std::string &  Name,
const IRUnitT &  Before,
const IRUnitT &  After,
Any   
)
protectedpure virtual

Implemented in llvm::DotCfgChangeReporter.

◆ handleFiltered()

template<typename IRUnitT >
virtual void llvm::ChangeReporter< IRUnitT >::handleFiltered ( StringRef  PassID,
std::string &  Name 
)
protectedpure virtual

◆ handleIgnored()

template<typename IRUnitT >
virtual void llvm::ChangeReporter< IRUnitT >::handleIgnored ( StringRef  PassID,
std::string &  Name 
)
protectedpure virtual

◆ handleInitialIR()

template<typename IRUnitT >
virtual void llvm::ChangeReporter< IRUnitT >::handleInitialIR ( Any  IR)
protectedpure virtual

◆ handleInvalidated()

template<typename IRUnitT >
virtual void llvm::ChangeReporter< IRUnitT >::handleInvalidated ( StringRef  PassID)
protectedpure virtual

◆ handleInvalidatedPass()

template<typename T >
void ChangeReporter::handleInvalidatedPass ( StringRef  PassID)

Definition at line 379 of file StandardInstrumentations.cpp.

References assert().

◆ handleIRAfterPass()

template<typename T >
void ChangeReporter::handleIRAfterPass ( Any  IR,
StringRef  PassID,
StringRef  PassName 
)

Definition at line 349 of file StandardInstrumentations.cpp.

References assert(), IR, isInteresting(), Name, and PassName.

◆ omitAfter()

template<typename IRUnitT >
virtual void llvm::ChangeReporter< IRUnitT >::omitAfter ( StringRef  PassID,
std::string &  Name 
)
protectedpure virtual

◆ registerRequiredCallbacks()

template<typename T >
void ChangeReporter::registerRequiredCallbacks ( PassInstrumentationCallbacks PIC)
protected

◆ saveIRBeforePass()

template<typename T >
void ChangeReporter::saveIRBeforePass ( Any  IR,
StringRef  PassID,
StringRef  PassName 
)

Definition at line 326 of file StandardInstrumentations.cpp.

References IR.

Member Data Documentation

◆ BeforeStack

template<typename IRUnitT >
std::vector<IRUnitT> llvm::ChangeReporter< IRUnitT >::BeforeStack
protected

Definition at line 212 of file StandardInstrumentations.h.

◆ InitialIR

template<typename IRUnitT >
bool llvm::ChangeReporter< IRUnitT >::InitialIR = true
protected

Definition at line 214 of file StandardInstrumentations.h.

◆ VerboseMode

template<typename IRUnitT >
const bool llvm::ChangeReporter< IRUnitT >::VerboseMode
protected

Definition at line 217 of file StandardInstrumentations.h.


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