diff options
-rw-r--r-- | llvm/include/llvm/CodeGen/FunctionLiveVarInfo.h | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/llvm/include/llvm/CodeGen/FunctionLiveVarInfo.h b/llvm/include/llvm/CodeGen/FunctionLiveVarInfo.h index 9120d8eb751..94db382b89e 100644 --- a/llvm/include/llvm/CodeGen/FunctionLiveVarInfo.h +++ b/llvm/include/llvm/CodeGen/FunctionLiveVarInfo.h @@ -61,6 +61,7 @@ #ifndef FUNCTION_LIVE_VAR_INFO_H #define FUNCTION_LIVE_VAR_INFO_H +#include "Support/hash_map" #include "llvm/Pass.h" #include "llvm/CodeGen/ValueSet.h" @@ -69,10 +70,12 @@ class MachineInstr; class FunctionLiveVarInfo : public FunctionPass { // Machine Instr to LiveVarSet Map for providing LVset BEFORE each inst - std::map<const MachineInstr *, const ValueSet *> MInst2LVSetBI; + // These sets are owned by this map and will be freed in releaseMemory(). + hash_map<const MachineInstr *, ValueSet *> MInst2LVSetBI; - // Machine Instr to LiveVarSet Map for providing LVset AFTER each inst - std::map<const MachineInstr *, const ValueSet *> MInst2LVSetAI; + // Machine Instr to LiveVarSet Map for providing LVset AFTER each inst. + // These sets are just pointers to sets in MInst2LVSetBI or BBLiveVar. + hash_map<const MachineInstr *, ValueSet *> MInst2LVSetAI; // Stored Function that the data is computed with respect to const Function *M; @@ -104,11 +107,13 @@ public: // --------- Functions to access analysis results ------------------- - // gets OutSet of a BB + // get OutSet of a BB const ValueSet &getOutSetOfBB(const BasicBlock *BB) const; + ValueSet &getOutSetOfBB(const BasicBlock *BB) ; - // gets InSet of a BB + // get InSet of a BB const ValueSet &getInSetOfBB(const BasicBlock *BB) const; + ValueSet &getInSetOfBB(const BasicBlock *BB) ; // gets the Live var set BEFORE an instruction. // if BB is specified and the live var set has not yet been computed, |