Go to the documentation of this file.
13 #ifndef LLVM_IR_TRACKINGMDREF_H
14 #define LLVM_IR_TRACKINGMDREF_H
94 assert(MD ==
X.MD &&
"Expected values to match");
127 operator T *()
const {
return get(); }
177 #endif // LLVM_IR_TRACKINGMDREF_H
TypedTrackingMDRef(TypedTrackingMDRef &&X)
This is an optimization pass for GlobalISel generic memory operations.
TypedTrackingMDRef(T *MD)
TrackingMDRef & operator=(const TrackingMDRef &X)
bool operator==(const TrackingMDRef &X) const
Metadata * operator->() const
TrackingMDRef(const TrackingMDRef &X)
TypedTrackingMDRef & operator=(TypedTrackingMDRef &&X)
@ Ref
The access may reference the value stored in memory.
static SimpleType getSimplifiedValue(TrackingMDRef &MD)
Define a template that can be specialized by smart pointers to reflect the fact that they are automat...
TypedTrackingMDRef(const TypedTrackingMDRef &X)
TypedTrackingMDRef()=default
static GCMetadataPrinterRegistry::Add< ErlangGCPrinter > X("erlang", "erlang-compatible garbage collector")
static SimpleType getSimplifiedValue(const TypedTrackingMDRef< T > &MD)
bool hasTrivialDestructor() const
Check whether this has a trivial destructor.
bool operator!=(const TrackingMDRef &X) const
TrackingMDRef(Metadata *MD)
compiles ldr LCPI1_0 ldr ldr mov lsr tst moveq r1 ldr LCPI1_1 and r0 bx lr It would be better to do something like to fold the shift into the conditional move
static SimpleType getSimplifiedValue(TypedTrackingMDRef< T > &MD)
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
bool operator!=(const TypedTrackingMDRef &X) const
bool hasTrivialDestructor() const
Check whether this has a trivial destructor.
bool operator==(const TypedTrackingMDRef &X) const
static SimpleType getSimplifiedValue(const TrackingMDRef &MD)
TypedTrackingMDRef & operator=(const TypedTrackingMDRef &X)
TrackingMDRef & operator=(TrackingMDRef &&X)
Metadata & operator*() const
Tracking metadata reference.
TrackingMDRef(TrackingMDRef &&X)