diff options
Diffstat (limited to 'include/llvm/CodeGen/LexicalScopes.h')
-rw-r--r-- | include/llvm/CodeGen/LexicalScopes.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/include/llvm/CodeGen/LexicalScopes.h b/include/llvm/CodeGen/LexicalScopes.h index 31d40ff588..31d6872674 100644 --- a/include/llvm/CodeGen/LexicalScopes.h +++ b/include/llvm/CodeGen/LexicalScopes.h @@ -21,6 +21,7 @@ #include "llvm/ADT/DenseMap.h" #include "llvm/ADT/SmallPtrSet.h" #include "llvm/ADT/SmallVector.h" +#include "llvm/ADT/STLExtras.h" #include "llvm/IR/DebugLoc.h" #include "llvm/IR/Metadata.h" #include "llvm/IR/ValueHandle.h" @@ -185,9 +186,7 @@ public: /// findInlinedScope - Find an inlined scope for the given DebugLoc or return /// NULL. - LexicalScope *findInlinedScope(DebugLoc DL) { - return InlinedLexicalScopeMap.lookup(DL); - } + LexicalScope *findInlinedScope(DebugLoc DL); /// findLexicalScope - Find regular lexical scope or return null. LexicalScope *findLexicalScope(const MDNode *N) { @@ -230,7 +229,9 @@ private: /// InlinedLexicalScopeMap - Tracks inlined function scopes in current /// function. - DenseMap<DebugLoc, LexicalScope *> InlinedLexicalScopeMap; + std::unordered_map<std::pair<const MDNode *, const MDNode *>, LexicalScope, + pair_hash<const MDNode *, const MDNode *>> + InlinedLexicalScopeMap; /// AbstractScopeMap - These scopes are not included LexicalScopeMap. // Use an unordered_map to ensure value pointer validity over insertion. |