[llvm-commits] [bug_122] CVS: llvm/include/llvm/Analysis/SlotCalculator.h
LLVM
llvm at cs.uiuc.edu
Wed May 12 11:34:10 PDT 2004
Changes in directory llvm/include/llvm/Analysis:
SlotCalculator.h updated: 1.18 -> 1.18.6.1
---
Log message:
Change SymbolTable to not subclass from std::map but to embed one instead
and cleanup use of SymbolTable in rest of LLVM. Also, add some new methods
to SymbolTable for small/utility cases and substitute calls to them in
LLVM.
---
Diffs of the changes: (+17 -0)
Index: llvm/include/llvm/Analysis/SlotCalculator.h
diff -u llvm/include/llvm/Analysis/SlotCalculator.h:1.18 llvm/include/llvm/Analysis/SlotCalculator.h:1.18.6.1
--- llvm/include/llvm/Analysis/SlotCalculator.h:1.18 Tue Jan 20 13:50:12 2004
+++ llvm/include/llvm/Analysis/SlotCalculator.h Wed May 12 11:33:43 2004
@@ -26,6 +26,7 @@
namespace llvm {
class Value;
+class Type;
class Module;
class Function;
class SymbolTable;
@@ -140,6 +141,22 @@
void buildCompactionTable(const Function *F);
unsigned getOrCreateCompactionTableSlot(const Value *V);
void pruneCompactionTable();
+
+ struct ProcessSymbolTableFunctor {
+ inline void operator() (
+ const Type*Ty, const std::string& name, const Value* V );
+ SlotCalculator* sc;
+ };
+ struct ProcessSymbolTableConstantsFunctor {
+ inline void operator() (
+ const Type*Ty, const std::string& name, const Value* V );
+ SlotCalculator* sc;
+ };
+ struct CompactionTableFunctor {
+ inline void operator() (
+ const Type*Ty, const std::string& name,const Value* V );
+ SlotCalculator* sc;
+ };
};
} // End llvm namespace
More information about the llvm-commits
mailing list