003 File Manager
Current Path:
/usr/src/contrib/llvm-project/llvm/tools/opt
usr
/
src
/
contrib
/
llvm-project
/
llvm
/
tools
/
opt
/
📁
..
📄
AnalysisWrappers.cpp
(2.49 KB)
📄
BreakpointPrinter.cpp
(2.05 KB)
📄
BreakpointPrinter.h
(747 B)
📄
GraphPrinters.cpp
(1.62 KB)
📄
NewPMDriver.cpp
(16.38 KB)
📄
NewPMDriver.h
(2.32 KB)
📄
PassPrinters.cpp
(6.42 KB)
📄
PassPrinters.h
(1.23 KB)
📄
PrintSCC.cpp
(3.88 KB)
📄
opt.cpp
(34.52 KB)
Editing: GraphPrinters.cpp
//===- GraphPrinters.cpp - DOT printers for various graph types -----------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file defines several printers for various different types of graphs used // by the LLVM infrastructure. It uses the generic graph interface to convert // the graph into a .dot graph. These graphs can then be processed with the // "dot" tool to convert them to postscript or some other suitable format. // //===----------------------------------------------------------------------===// #include "llvm/IR/Dominators.h" #include "llvm/Pass.h" using namespace llvm; //===----------------------------------------------------------------------===// // DomInfoPrinter Pass //===----------------------------------------------------------------------===// namespace { class DomInfoPrinter : public FunctionPass { public: static char ID; // Pass identification, replacement for typeid DomInfoPrinter() : FunctionPass(ID) {} void getAnalysisUsage(AnalysisUsage &AU) const override { AU.setPreservesAll(); AU.addRequired<DominatorTreeWrapperPass>(); } bool runOnFunction(Function &F) override { getAnalysis<DominatorTreeWrapperPass>().print(dbgs()); return false; } }; } char DomInfoPrinter::ID = 0; static RegisterPass<DomInfoPrinter> DIP("print-dom-info", "Dominator Info Printer", true, true);
Upload File
Create Folder