diff options
Diffstat (limited to 'include/llvm/Analysis')
-rw-r--r-- | include/llvm/Analysis/CallGraph.h | 2 | ||||
-rw-r--r-- | include/llvm/Analysis/DataStructure.h | 2 | ||||
-rw-r--r-- | include/llvm/Analysis/DataStructure/DataStructure.h | 2 | ||||
-rw-r--r-- | include/llvm/Analysis/Dominators.h | 20 | ||||
-rw-r--r-- | include/llvm/Analysis/FindUnsafePointerTypes.h | 2 | ||||
-rw-r--r-- | include/llvm/Analysis/FindUsedTypes.h | 1 | ||||
-rw-r--r-- | include/llvm/Analysis/IntervalPartition.h | 2 | ||||
-rw-r--r-- | include/llvm/Analysis/LiveVar/FunctionLiveVarInfo.h | 2 | ||||
-rw-r--r-- | include/llvm/Analysis/LoopInfo.h | 2 |
9 files changed, 35 insertions, 0 deletions
diff --git a/include/llvm/Analysis/CallGraph.h b/include/llvm/Analysis/CallGraph.h index 6169387..035d4ab 100644 --- a/include/llvm/Analysis/CallGraph.h +++ b/include/llvm/Analysis/CallGraph.h @@ -115,6 +115,8 @@ public: CallGraph(AnalysisID AID) : Root(0) { assert(AID == ID); } ~CallGraph() { destroy(); } + virtual const char *getPassName() const { return "Call Graph Construction"; } + // run - Compute the call graph for the specified module. virtual bool run(Module *TheModule); diff --git a/include/llvm/Analysis/DataStructure.h b/include/llvm/Analysis/DataStructure.h index 90a4b5d..f6b60b8 100644 --- a/include/llvm/Analysis/DataStructure.h +++ b/include/llvm/Analysis/DataStructure.h @@ -439,6 +439,8 @@ public: DataStructure(AnalysisID id) { assert(id == ID); } ~DataStructure() { releaseMemory(); } + virtual const char *getPassName() const { return "Data Structure Analysis"; } + // run - Do nothing, because methods are analyzed lazily virtual bool run(Module *TheModule) { return false; } diff --git a/include/llvm/Analysis/DataStructure/DataStructure.h b/include/llvm/Analysis/DataStructure/DataStructure.h index 90a4b5d..f6b60b8 100644 --- a/include/llvm/Analysis/DataStructure/DataStructure.h +++ b/include/llvm/Analysis/DataStructure/DataStructure.h @@ -439,6 +439,8 @@ public: DataStructure(AnalysisID id) { assert(id == ID); } ~DataStructure() { releaseMemory(); } + virtual const char *getPassName() const { return "Data Structure Analysis"; } + // run - Do nothing, because methods are analyzed lazily virtual bool run(Module *TheModule) { return false; } diff --git a/include/llvm/Analysis/Dominators.h b/include/llvm/Analysis/Dominators.h index 3a29eec..e3038da 100644 --- a/include/llvm/Analysis/Dominators.h +++ b/include/llvm/Analysis/Dominators.h @@ -63,6 +63,11 @@ public: DominatorSet(AnalysisID id) : DominatorBase(id == PostDomID) {} + virtual const char *getPassName() const { + if (isPostDominator()) return "Post-Dominator Set Construction"; + else return "Dominator Set Construction"; + } + virtual bool runOnFunction(Function *F); // Accessor interface: @@ -115,6 +120,11 @@ public: ImmediateDominators(AnalysisID id) : DominatorBase(id == PostDomID) {} + virtual const char *getPassName() const { + if (isPostDominator()) return "Immediate Post-Dominators Construction"; + else return "Immediate Dominators Construction"; + } + virtual bool runOnFunction(Function *F) { IDoms.clear(); // Reset from the last time we were run... DominatorSet *DS; @@ -206,6 +216,11 @@ public: DominatorTree(AnalysisID id) : DominatorBase(id == PostDomID) {} ~DominatorTree() { reset(); } + virtual const char *getPassName() const { + if (isPostDominator()) return "Post-Dominator Tree Construction"; + else return "Dominator Tree Construction"; + } + virtual bool runOnFunction(Function *F) { reset(); DominatorSet *DS; @@ -262,6 +277,11 @@ public: DominanceFrontier(AnalysisID id) : DominatorBase(id == PostDomID) {} + virtual const char *getPassName() const { + if (isPostDominator()) return "Post-Dominance Frontier Construction"; + else return "Dominance Frontier Construction"; + } + virtual bool runOnFunction(Function *) { Frontiers.clear(); DominatorTree *DT; diff --git a/include/llvm/Analysis/FindUnsafePointerTypes.h b/include/llvm/Analysis/FindUnsafePointerTypes.h index 82cc28a..98f530c 100644 --- a/include/llvm/Analysis/FindUnsafePointerTypes.h +++ b/include/llvm/Analysis/FindUnsafePointerTypes.h @@ -30,6 +30,8 @@ public: FindUnsafePointerTypes(AnalysisID id) { assert(ID == id); } + virtual const char *getPassName() const { return "Find Unsafe Pointer Types";} + // Accessor for underlying type set... inline const std::set<PointerType*> &getUnsafeTypes() const { return UnsafeTypes; diff --git a/include/llvm/Analysis/FindUsedTypes.h b/include/llvm/Analysis/FindUsedTypes.h index 5c02b2c..ece390e 100644 --- a/include/llvm/Analysis/FindUsedTypes.h +++ b/include/llvm/Analysis/FindUsedTypes.h @@ -24,6 +24,7 @@ public: static AnalysisID IncludeSymbolTableID; FindUsedTypes(AnalysisID id) : IncludeSymbolTables(id != ID) {} + virtual const char *getPassName() const { return "Find Used Types"; } // getTypes - After the pass has been run, return the set containing all of // the types used in the module. diff --git a/include/llvm/Analysis/IntervalPartition.h b/include/llvm/Analysis/IntervalPartition.h index 281b32e..ab16250 100644 --- a/include/llvm/Analysis/IntervalPartition.h +++ b/include/llvm/Analysis/IntervalPartition.h @@ -39,6 +39,8 @@ public: IntervalPartition(AnalysisID AID) : RootInterval(0) { assert(AID == ID); } + const char *getPassName() const { return "Interval Partition Construction"; } + // run - Calculate the interval partition for this function virtual bool runOnFunction(Function *F); diff --git a/include/llvm/Analysis/LiveVar/FunctionLiveVarInfo.h b/include/llvm/Analysis/LiveVar/FunctionLiveVarInfo.h index 4f7db3f..dab6d3c 100644 --- a/include/llvm/Analysis/LiveVar/FunctionLiveVarInfo.h +++ b/include/llvm/Analysis/LiveVar/FunctionLiveVarInfo.h @@ -105,6 +105,8 @@ public: FunctionLiveVarInfo(AnalysisID id = ID) { assert(id == ID); } + virtual const char *getPassName() const { return "Live Variable Analysis"; } + // --------- Implement the FunctionPass interface ---------------------- // runOnFunction - Perform analysis, update internal data structures. diff --git a/include/llvm/Analysis/LoopInfo.h b/include/llvm/Analysis/LoopInfo.h index b56de0f..bb9058c 100644 --- a/include/llvm/Analysis/LoopInfo.h +++ b/include/llvm/Analysis/LoopInfo.h @@ -72,6 +72,8 @@ public: LoopInfo(AnalysisID id) { assert(id == ID); } ~LoopInfo() { releaseMemory(); } + const char *getPassName() const { return "Natural Loop Analysis"; } + const std::vector<Loop*> &getTopLevelLoops() const { return TopLevelLoops; } // getLoopFor - Return the inner most loop that BB lives in. If a basic block |