summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/lib/IR/MetadataImpl.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm/lib/IR/MetadataImpl.h')
-rw-r--r--contrib/llvm/lib/IR/MetadataImpl.h13
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) {
OpenPOWER on IntegriCloud