diff options
Diffstat (limited to 'contrib/llvm/lib/IR/MetadataImpl.h')
-rw-r--r-- | contrib/llvm/lib/IR/MetadataImpl.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/contrib/llvm/lib/IR/MetadataImpl.h b/contrib/llvm/lib/IR/MetadataImpl.h index 662a50e..b913746 100644 --- a/contrib/llvm/lib/IR/MetadataImpl.h +++ b/contrib/llvm/lib/IR/MetadataImpl.h @@ -26,6 +26,19 @@ static T *getUniqued(DenseSet<T *, InfoT> &Store, return I == Store.end() ? nullptr : *I; } +template <class T> T *MDNode::storeImpl(T *N, StorageType Storage) { + switch (Storage) { + case Uniqued: + llvm_unreachable("Cannot unique without a uniquing-store"); + case Distinct: + N->storeDistinctInContext(); + break; + case Temporary: + break; + } + return N; +} + template <class T, class StoreT> T *MDNode::storeImpl(T *N, StorageType Storage, StoreT &Store) { switch (Storage) { |