forked from OSchip/llvm-project
adopt getAdjustedAnalysisPointer in BasicCallGraph.
llvm-svn: 94015
This commit is contained in:
parent
4f8a57112f
commit
397af34e6f
|
@ -26,7 +26,7 @@ namespace {
|
|||
//===----------------------------------------------------------------------===//
|
||||
// BasicCallGraph class definition
|
||||
//
|
||||
class BasicCallGraph : public CallGraph, public ModulePass {
|
||||
class BasicCallGraph : public ModulePass, public CallGraph {
|
||||
// Root is root of the call graph, or the external node if a 'main' function
|
||||
// couldn't be found.
|
||||
//
|
||||
|
@ -82,6 +82,16 @@ public:
|
|||
destroy();
|
||||
}
|
||||
|
||||
/// getAdjustedAnalysisPointer - This method is used when a pass implements
|
||||
/// an analysis interface through multiple inheritance. If needed, it should
|
||||
/// override this to adjust the this pointer as needed for the specified pass
|
||||
/// info.
|
||||
virtual void *getAdjustedAnalysisPointer(const PassInfo *PI) {
|
||||
if (PI->isPassID(&CallGraph::ID))
|
||||
return (CallGraph*)this;
|
||||
return this;
|
||||
}
|
||||
|
||||
CallGraphNode* getExternalCallingNode() const { return ExternalCallingNode; }
|
||||
CallGraphNode* getCallsExternalNode() const { return CallsExternalNode; }
|
||||
|
||||
|
|
Loading…
Reference in New Issue