Do not use typeinfo to identify pass in pass manager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36632 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/opt/GraphPrinters.cpp b/tools/opt/GraphPrinters.cpp
index 5e8a859..cb0b664 100644
--- a/tools/opt/GraphPrinters.cpp
+++ b/tools/opt/GraphPrinters.cpp
@@ -60,6 +60,9 @@
namespace {
struct CallGraphPrinter : public ModulePass {
+ static const int ID; // Pass ID, replacement for typeid
+ CallGraphPrinter() : ModulePass((intptr_t)&ID) {}
+
virtual bool runOnModule(Module &M) {
WriteGraphToFile(std::cerr, "callgraph", &getAnalysis<CallGraph>());
return false;
@@ -74,6 +77,7 @@
}
};
+ const int CallGraphPrinter::ID = 0;
RegisterPass<CallGraphPrinter> P2("print-callgraph",
"Print Call Graph to 'dot' file");
}