14 #ifndef LLVM_IR_TRACKINGMDREF_H 15 #define LLVM_IR_TRACKINGMDREF_H 95 assert(MD == X.MD &&
"Expected values to match");
118 Ref = std::move(
X.Ref);
127 T *
get()
const {
return (
T *)Ref.
get(); }
128 operator T *()
const {
return get(); }
178 #endif // LLVM_IR_TRACKINGMDREF_H static SimpleType getSimplifiedValue(const TrackingMDRef &MD)
static GCMetadataPrinterRegistry::Add< ErlangGCPrinter > X("erlang", "erlang-compatible garbage collector")
TrackingMDRef & operator=(TrackingMDRef &&X)
This class represents lattice values for constants.
Tracking metadata reference.
bool operator==(const TypedTrackingMDRef &X) const
Metadata & operator*() const
TypedTrackingMDRef & operator=(const TypedTrackingMDRef &X)
TypedTrackingMDRef(T *MD)
The access may reference the value stored in memory.
TypedTrackingMDRef & operator=(TypedTrackingMDRef &&X)
TypedTrackingMDRef(const TypedTrackingMDRef &X)
TrackingMDRef(TrackingMDRef &&X)
static SimpleType getSimplifiedValue(TypedTrackingMDRef< T > &MD)
TrackingMDRef(const TrackingMDRef &X)
static SimpleType getSimplifiedValue(const TypedTrackingMDRef< T > &MD)
Metadata * operator->() const
bool operator!=(const TrackingMDRef &X) const
bool operator!=(const TypedTrackingMDRef &X) const
TrackingMDRef & operator=(const TrackingMDRef &X)
bool hasTrivialDestructor() const
Check whether this has a trivial destructor.
TrackingMDRef(Metadata *MD)
bool hasTrivialDestructor() const
Check whether this has a trivial destructor.
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
static SimpleType getSimplifiedValue(TrackingMDRef &MD)
bool operator==(const TrackingMDRef &X) const
TypedTrackingMDRef(TypedTrackingMDRef &&X)