#include "llvm/Analysis/DomPrinter.h"
#include "llvm/Analysis/DOTGraphTraitsPass.h"
#include "llvm/Analysis/PostDominators.h"
#include "llvm/InitializePasses.h"
usingnamespacellvm;
void DominatorTree::viewGraph(const Twine &Name, const Twine &Title) { … }
void DominatorTree::viewGraph() { … }
namespace {
struct LegacyDominatorTreeWrapperPassAnalysisGraphTraits { … };
struct DomViewerWrapperPass
: public DOTGraphTraitsViewerWrapperPass<
DominatorTreeWrapperPass, false, DominatorTree *,
LegacyDominatorTreeWrapperPassAnalysisGraphTraits> { … };
struct DomOnlyViewerWrapperPass
: public DOTGraphTraitsViewerWrapperPass<
DominatorTreeWrapperPass, true, DominatorTree *,
LegacyDominatorTreeWrapperPassAnalysisGraphTraits> { … };
struct LegacyPostDominatorTreeWrapperPassAnalysisGraphTraits { … };
struct PostDomViewerWrapperPass
: public DOTGraphTraitsViewerWrapperPass<
PostDominatorTreeWrapperPass, false, PostDominatorTree *,
LegacyPostDominatorTreeWrapperPassAnalysisGraphTraits> { … };
struct PostDomOnlyViewerWrapperPass
: public DOTGraphTraitsViewerWrapperPass<
PostDominatorTreeWrapperPass, true, PostDominatorTree *,
LegacyPostDominatorTreeWrapperPassAnalysisGraphTraits> { … };
}
char DomViewerWrapperPass::ID = …;
INITIALIZE_PASS(…)
char DomOnlyViewerWrapperPass::ID = …;
INITIALIZE_PASS(…)
char PostDomViewerWrapperPass::ID = …;
INITIALIZE_PASS(…)
char PostDomOnlyViewerWrapperPass::ID = …;
INITIALIZE_PASS(…)
namespace {
struct DomPrinterWrapperPass
: public DOTGraphTraitsPrinterWrapperPass<
DominatorTreeWrapperPass, false, DominatorTree *,
LegacyDominatorTreeWrapperPassAnalysisGraphTraits> { … };
struct DomOnlyPrinterWrapperPass
: public DOTGraphTraitsPrinterWrapperPass<
DominatorTreeWrapperPass, true, DominatorTree *,
LegacyDominatorTreeWrapperPassAnalysisGraphTraits> { … };
struct PostDomPrinterWrapperPass
: public DOTGraphTraitsPrinterWrapperPass<
PostDominatorTreeWrapperPass, false, PostDominatorTree *,
LegacyPostDominatorTreeWrapperPassAnalysisGraphTraits> { … };
struct PostDomOnlyPrinterWrapperPass
: public DOTGraphTraitsPrinterWrapperPass<
PostDominatorTreeWrapperPass, true, PostDominatorTree *,
LegacyPostDominatorTreeWrapperPassAnalysisGraphTraits> { … };
}
char DomPrinterWrapperPass::ID = …;
INITIALIZE_PASS(…)
char DomOnlyPrinterWrapperPass::ID = …;
INITIALIZE_PASS(…)
char PostDomPrinterWrapperPass::ID = …;
INITIALIZE_PASS(…)
char PostDomOnlyPrinterWrapperPass::ID = …;
INITIALIZE_PASS(…)
FunctionPass *llvm::createDomPrinterWrapperPassPass() { … }
FunctionPass *llvm::createDomOnlyPrinterWrapperPassPass() { … }
FunctionPass *llvm::createDomViewerWrapperPassPass() { … }
FunctionPass *llvm::createDomOnlyViewerWrapperPassPass() { … }
FunctionPass *llvm::createPostDomPrinterWrapperPassPass() { … }
FunctionPass *llvm::createPostDomOnlyPrinterWrapperPassPass() { … }
FunctionPass *llvm::createPostDomViewerWrapperPassPass() { … }
FunctionPass *llvm::createPostDomOnlyViewerWrapperPassPass() { … }