Assignment ID linking stores to dbg.assign intrinsics.
Used to link stores (as an attachment) and dbg.assigns (as an operand). DIAssignID metadata is never uniqued as we compare instances using referential equality (the instance/address is the ID).
| Name | Description |
|---|---|
MDNode | Metadata node. |
| Name | Description |
|---|---|
op_iterator | Iterator over this node's operands. |
op_range | Range of this node's operands. |
| Name | Description |
|---|---|
MetadataKind | RTTI identifiers for concrete metadata subclasses. |
| Name | Description |
|---|---|
operator= [deleted] | Copy assignment is deleted; MDNode is non-copyable. |
clone | Create a (temporary) clone of this. |
dump | dump overloads |
dumpTree | dumpTree overloads |
getAllDbgVariableRecordUsers | Return the all dbg variable record users. |
getContext | Return the LLVM context that owns this node. |
getMetadataID | Return the metadata kind ID for this node. |
getNumOperands | Return number of MDNode operands. |
getNumTemporaryUses | Return the number of uses of this temporary metadata node. |
getOperand | Return the operand at index I. |
isAlwaysReplaceable | Return true if this node kind is always RAUW-replaceable (e.g. DIAssignID). |
isDistinct | Return true if this node is distinct (not uniqued). |
isReplaceable | Return true if this node supports RAUW replacement. |
isResolved | Check if node is fully resolved. |
isTBAAVtableAccess | Check whether MDNode is a vtable access. |
isTemporary | Return true if this is a temporary (forward-declaration) metadata node. |
isUniqued | Return true if this node is uniqued in the context. |
op_begin | Return an iterator to the first operand. |
op_end | Return an iterator past the last operand. |
operands | Return this node's operands as an array reference. |
operator new [deleted] | Ordinary allocation is deleted; use the custom MDNode allocators. |
print | print overloads |
printAsOperand | printAsOperand overloads |
printTree | printTree overloads |
replaceAllUsesWith | RAUW a temporary. |
replaceOperandWith [deleted] | Replace the operand with. |
resolve | Resolve a unique, unresolved node. |
resolveCycles | Resolve cycles. |
| Name | Description |
|---|---|
classof | Check whether MD is this kind of metadata. |
concatenate | Methods for metadata merging. Concatenate metadata nodes A and B. |
deleteTemporary | Deallocate a node created by getTemporary. |
fromCaptureComponents | Convert CaptureComponents to !captures metadata. The return value may be nullptr. |
get | Return a uniqued tuple metadata node with operands MDs. |
getDistinct | getDistinct overloads |
getIfExists | Return an existing uniqued tuple for MDs, or null if none. |
getMergedAllocTokenMetadata | Merge alloc-token metadata from two instructions. |
getMergedCalleeTypeMetadata | Merge callee-type metadata from two instructions. |
getMergedCallsiteMetadata | Merge callsite metadata from two instructions. |
getMergedMemProfMetadata | Merge memprof metadata from two instructions. |
getMergedProfMetadata | Merge !prof metadata from two instructions. Currently only implemented with direct callsites with branch weights. |
getMostGenericAliasScope | Merge alias-scope metadata, keeping scopes present in both. |
getMostGenericAlignmentOrDereferenceable | Merge align/dereferenceable metadata, returning the most generic bound. |
getMostGenericFPMath | Merge FP-math metadata, returning the most generic accuracy. |
getMostGenericNoFPClass | Merge !nofpclass metadata by intersecting the allowed FP classes. |
getMostGenericNoaliasAddrspace | Merge noalias address-space metadata, returning the most generic set. |
getMostGenericRange | Merge !range metadata by taking the union of the integer intervals. |
getMostGenericTBAA | Merge TBAA metadata, returning the most generic common tag. |
getTemporary | getTemporary overloads |
intersect | Intersect metadata nodes A and B. |
replaceWithDistinct | Replace a temporary node with a distinct one. |
replaceWithPermanent | Replace a temporary node with a permanent one. |
replaceWithUniqued | Replace a temporary node with a uniqued one. |
toCaptureComponents | Convert !captures metadata to CaptureComponents. MD may be nullptr. |
| Name | Description |
|---|---|
PoisonGeneratingIDs | Metadata IDs that may generate poison. |
| Name | Description |
|---|---|
mutable_op_range | Range type over mutable MDOperand elements. |
| Name | Description |
|---|---|
StorageType | Active type of storage. |
| Name | Description |
|---|---|
dropAllReferences | Drop all references held by this metadata node. |
getNumUnresolved | Return the number of unresolved operands in this node. |
handleChangedOperand | Default handling of a changed operand, which asserts. |
mutable_begin | Return an iterator to the first mutable operand. |
mutable_end | Return an iterator past the last mutable operand. |
mutable_operands | Return a mutable range over this node's operands. |
operator delete | Delete operators |
operator new | Allocate an MDNode with NumOps operand slots and Storage kind. |
resize | Resize the node to hold NumOps operands. |
setNumUnresolved | Set the number of unresolved operands in this node. |
setOperand | Set an operand. |
storeDistinctInContext | Register this node as a distinct MDNode owned by the LLVMContext. |
| Name | Description |
|---|---|
storeImpl | storeImpl overloads |
| Name | Description |
|---|---|
Storage | Storage flag for non-uniqued, otherwise unowned, metadata. |
SubclassData1 | One bit of subclass-specific state packed into the metadata header. |
SubclassData16 | Sixteen bits of subclass-specific state packed into the metadata header. |
SubclassData32 | Thirty-two bits of subclass-specific state packed into the metadata header. |
| Name | Description |
|---|---|
llvm::MDNode | Metadata node. |
llvm::LLVMContextImpl | Private implementation details of LLVMContext. |
| Name | Description |
|---|---|
GetUnrollMetadata | Return the named unroll hint metadata operand from loop id LoopID. |
MapMetadata | Lookup or compute a mapping for a piece of metadata. |
MapMetadata | Version of MapMetadata with type safety for MDNode. |
UpgradeTBAANode | Upgrade a scalar TBAA tag to the struct-path aware TBAA format. |
computeKnownBitsFromRangeMetadata | Compute known bits from the range metadata. KnownZero the set of bits that are known to be zero KnownOne the set of bits that are known to be one |
extractBranchWeights | Extract branch weights from MD_prof metadata |
extractFromBranchWeightMD32 | Faster version of extractBranchWeights() that skips checks and must only be called with "branch_weights" metadata nodes. Supports uint32_t. |
extractFromBranchWeightMD64 | Faster version of extractBranchWeights() that skips checks and must only be called with "branch_weights" metadata nodes. Supports uint64_t. |
extractProfTotalWeight | Retrieve the total of all weights from MD_prof data. |
findOptionMDForLoopID | Find and return the loop attribute node for the attribute Name in LoopID. Return nullptr if there is no such attribute. |
getBranchWeightOffset | Return the offset to the first branch weight data |
getConstantRangeFromMetadata | Parse out a conservative ConstantRange from !range metadata. |
getDISubprogram | Find subprogram that is enclosing this scope. |
getNumBranchWeights | Return the number of branch weights stored in ProfileData |
hasBranchWeightOrigin | Check if Branch Weight Metadata has an "expected" field from an llvm.expect* intrinsic |
isBranchWeightMD | Checks if an MDNode contains Branch Weight Metadata |
isExplicitlyUnknownProfileMetadata | Check whether MD is explicitly-unknown profile metadata. |
isValidAsAccessGroup | Return whether an MDNode might represent an access group. |
isValueProfileMD | Checks if an MDNode contains value profiling Metadata |
makeFollowupLoopID | Create a new loop identifier for a loop created from a loop transformation. |
uniteAccessGroups | Compute the union of two access-group lists. |
upgradeInstructionLoopAttachment | Upgrade the loop attachment metadata node. |
wrap | Wrap a Metadata pointer as an opaque LLVMMetadataRef. |
at::RAUW | Replace all uses (and attachments) of Old with New. |
at::getAssignmentInsts | Return instructions that have ID as a DIAssignID attachment. |
memprof::getMIBAllocType | Returns the allocation type from an MIB metadata node. |
memprof::getMIBStackNode | Returns the stack node from an MIB metadata node. |