llvm::UnderlyingObject

Synopsis

Declared in <llvm/CodeGen/ScheduleDAGInstrs.h>

struct UnderlyingObject
    : PointerIntPair<ValueType, 1, bool>

Base Classes

NameDescription
PointerIntPair<ValueType, 1, bool>PointerIntPair - This class implements a pair of a pointer and small integer. It is designed to represent this in the space required by one pointer by bitmangling the integer into the low part of the pointer. This can only be done for small integers: typically up to 3 bits, but it depends on the number of bits available according to PointerLikeTypeTraits for the type.

Member Functions

NameDescription
UnderlyingObject [constructor]
getAddrOfPointer Return the address of the stored pointer when the integer bits are clear.
getInt Return the integer portion of the pair.
getOpaqueValue Return the packed bits as an opaque void pointer.
getPointer Return the pointer portion of the pair.
getValue
initWithPointer Initialize with PtrVal and clear the integer field.
mayAlias
setFromOpaqueValue Replace the packed bits with those from opaque pointer Val.
setInt Replace the integer portion, preserving the pointer bits.
setPointer Replace the pointer portion, preserving the integer bits.
setPointerAndInt Pack both PtrVal and IntVal into the stored bit pattern.
operator== Compare two pairs for equality of their packed bits.
operator!= Compare two pairs for inequality of their packed bits.
operator< Order pairs by their packed bit pattern.
operator<= Return true if this pair's bits are less than or equal to RHS.
operator> Return true if this pair's bits are greater than RHS.
operator>= Return true if this pair's bits are greater than or equal to RHS.

Static Member Functions

NameDescription
getFromOpaqueValue getFromOpaqueValue overloads

Non-Member Functions

NameDescription
getStructured-binding accessor: index 0 is the pointer, index 1 is the int.