LLVM 20.0.0git
|
#include "llvm/Analysis/DOTGraphTraitsPass.h"
Public Member Functions | |
DOTGraphTraitsPrinter (StringRef GraphName) | |
virtual bool | processFunction (Function &F, const typename AnalysisT::Result &Result) |
Return true if this function should be processed. | |
PreservedAnalyses | run (Function &F, FunctionAnalysisManager &FAM) |
Public Member Functions inherited from llvm::PassInfoMixin< DerivedT > | |
void | printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName) |
Protected Member Functions | |
~DOTGraphTraitsPrinter () | |
Avoid compiler warning "has virtual functions but non-virtual destructor
[-Wnon-virtual-dtor]" in derived classes. | |
Additional Inherited Members | |
Static Public Member Functions inherited from llvm::PassInfoMixin< DerivedT > | |
static StringRef | name () |
Gets the name of the pass we are mixed into. | |
Definition at line 129 of file DOTGraphTraitsPass.h.
|
inline |
Definition at line 132 of file DOTGraphTraitsPass.h.
|
inlineprotected |
Avoid compiler warning "has virtual functions but non-virtual destructor [-Wnon-virtual-dtor]" in derived classes.
DOTGraphTraitsPrinter is also used as a mixin for avoiding repeated implementation of printer passes, ie there should be no runtime-polymorphisms/downcasting involving this class and hence no virtual destructor needed. Making this dtor protected stops accidental invocation when the derived class destructor should have been called. Those derived classes sould be marked final to avoid the warning.
Definition at line 167 of file DOTGraphTraitsPass.h.
|
inlinevirtual |
Return true if this function should be processed.
An implementation of this class my override this function to indicate that only certain functions should be viewed.
Result | The current analysis result for this function. |
Definition at line 140 of file DOTGraphTraitsPass.h.
Referenced by llvm::DOTGraphTraitsPrinter< AnalysisT, IsSimple, GraphT, AnalysisGraphTraitsT >::run().
|
inline |
Definition at line 145 of file DOTGraphTraitsPass.h.
References llvm::PreservedAnalyses::all(), F, FAM, llvm::printGraphForFunction(), and llvm::DOTGraphTraitsPrinter< AnalysisT, IsSimple, GraphT, AnalysisGraphTraitsT >::processFunction().