You've already forked linux-packaging-mono
Imported Upstream version 5.18.0.167
Former-commit-id: 289509151e0fee68a1b591a20c9f109c3c789d3a
This commit is contained in:
parent
e19d552987
commit
b084638f15
59
external/llvm/lib/IR/MetadataImpl.h
vendored
59
external/llvm/lib/IR/MetadataImpl.h
vendored
@ -1,59 +0,0 @@
|
||||
//===- MetadataImpl.h - Helpers for implementing metadata -----------------===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// This file has private helpers for implementing metadata types.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#ifndef LLVM_IR_METADATAIMPL_H
|
||||
#define LLVM_IR_METADATAIMPL_H
|
||||
|
||||
#include "llvm/ADT/DenseSet.h"
|
||||
#include "llvm/IR/Metadata.h"
|
||||
|
||||
namespace llvm {
|
||||
|
||||
template <class T, class InfoT>
|
||||
static T *getUniqued(DenseSet<T *, InfoT> &Store,
|
||||
const typename InfoT::KeyTy &Key) {
|
||||
auto I = Store.find_as(Key);
|
||||
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) {
|
||||
case Uniqued:
|
||||
Store.insert(N);
|
||||
break;
|
||||
case Distinct:
|
||||
N->storeDistinctInContext();
|
||||
break;
|
||||
case Temporary:
|
||||
break;
|
||||
}
|
||||
return N;
|
||||
}
|
||||
|
||||
} // end namespace llvm
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user