diff options
author | Owen Anderson <resistor@mac.com> | 2009-07-16 23:44:30 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2009-07-16 23:44:30 +0000 |
commit | ce032b483ca96093b84f69178cdb2d047e124332 (patch) | |
tree | 786a371b3156bf0711bb6843d058d1392f268977 /lib/VMCore/LLVMContextImpl.h | |
parent | b8e9ac834a9c253e3f8f5caa8f229bafba0b4fcf (diff) |
Privatize the MDNode uniquing table.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76126 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore/LLVMContextImpl.h')
-rw-r--r-- | lib/VMCore/LLVMContextImpl.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/VMCore/LLVMContextImpl.h b/lib/VMCore/LLVMContextImpl.h index 3a5f7c17a4..129a759cd9 100644 --- a/lib/VMCore/LLVMContextImpl.h +++ b/lib/VMCore/LLVMContextImpl.h @@ -19,6 +19,7 @@ #include "llvm/ADT/APFloat.h" #include "llvm/ADT/APInt.h" #include "llvm/ADT/DenseMap.h" +#include "llvm/ADT/FoldingSet.h" #include "llvm/ADT/StringMap.h" namespace llvm { @@ -26,8 +27,10 @@ namespace llvm { class ConstantInt; class ConstantFP; class MDString; +class MDNode; class LLVMContext; class Type; +class Value; struct DenseMapAPIntKeyInfo { struct KeyTy { @@ -94,6 +97,8 @@ class LLVMContextImpl { StringMap<MDString*> MDStringCache; + FoldingSet<MDNode> MDNodeSet; + LLVMContext &Context; LLVMContextImpl(); LLVMContextImpl(const LLVMContextImpl&); @@ -108,8 +113,10 @@ public: MDString *getMDString(const char *StrBegin, const char *StrEnd); + MDNode *getMDNode(Value*const* Vals, unsigned NumVals); void erase(MDString *M); + void erase(MDNode *M); }; } |