docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
global_cfg_dump_pass.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace docc::passes {
8
9class GlobalCFGPrinterPass : public llvm::PassInfoMixin<GlobalCFGPrinterPass> {
10private:
11 const std::string* out_path_;
12
13public:
14 GlobalCFGPrinterPass(const std::string* out_path = nullptr) : out_path_(out_path) {
15 }
16
20
21 llvm::PreservedAnalyses run(llvm::Module& Mod, llvm::ModuleAnalysisManager& MAM, analysis::AnalysisManager& GAM);
22
23 static std::string escapeDot(std::string input);
24
25 void dumpToConsole(llvm::Module& Mod, analysis::GlobalCFGAnalysis& cfg);
26
27 void dumpToDotFile(const std::string& path, llvm::Module& Mod, analysis::GlobalCFGAnalysis& cfg);
28};
29
30} // namespace docc::passes
Definition analysis.h:25
static bool available(AnalysisManager &AM)
Definition analysis.h:39
Definition global_cfg_analysis.h:114
static std::string escapeDot(std::string input)
GlobalCFGPrinterPass(const std::string *out_path=nullptr)
Definition global_cfg_dump_pass.h:14
static bool available(analysis::AnalysisManager &AM)
Definition global_cfg_dump_pass.h:17
llvm::PreservedAnalyses run(llvm::Module &Mod, llvm::ModuleAnalysisManager &MAM, analysis::AnalysisManager &GAM)
void dumpToDotFile(const std::string &path, llvm::Module &Mod, analysis::GlobalCFGAnalysis &cfg)
void dumpToConsole(llvm::Module &Mod, analysis::GlobalCFGAnalysis &cfg)
Definition code_generation_pass.h:14