llvm::DOTGraphTraitsPrinter

Pass mixin that writes an analysis graph for a function to a DOT file.

Synopsis

Declared in <llvm/Analysis/DOTGraphTraitsPass.h>

template<
    typename AnalysisT,
    bool IsSimple,
    typename GraphT = AnalysisT::Result*,
    typename AnalysisGraphTraitsT = DefaultAnalysisGraphTraits<AnalysisT::Result&, GraphT>>
struct DOTGraphTraitsPrinter
    : RequiredPassInfoMixin<DOTGraphTraitsPrinter<AnalysisT, IsSimple, GraphT, AnalysisGraphTraitsT>>

Base Classes

NameDescription
RequiredPassInfoMixin<DOTGraphTraitsPrinter<AnalysisT, IsSimple, GraphT, AnalysisGraphTraitsT>>A CRTP mix-in for passes that should not be skipped.

Member Functions

NameDescription
DOTGraphTraitsPrinter [constructor]Construct a printer pass with the given graph name.
printPipeline Print this pass as a single name in a textual pipeline.
processFunction [virtual]Return true if this function should be processed.
run Write the analysis graph for F to a DOT file.

Static Member Functions

NameDescription
isRequired Return true; required passes cannot be skipped.

Protected Member Functions

NameDescription
~DOTGraphTraitsPrinter [destructor]Avoid compiler warning "has virtual functions but non-virtual destructor [-Wnon-virtual-dtor]" in derived classes.

Derived Classes

NameDescription
DomOnlyPrinter Pass that writes a function dominator tree to a DOT file without block bodies.
DomPrinter Pass that writes a function dominator tree to a DOT file.
PostDomOnlyPrinter Pass that writes a function post-dominator tree without block bodies.
PostDomPrinter Pass that writes a function post-dominator tree to a DOT file.