Macro
Synopsis
Declared in <llvm/IR/DebugInfoMetadata.h>
class DIMacro
: public DIMacroNode
Description
Uses the SubclassData32 Metadata slot.
Base Classes
Name |
Description |
Macro Info DWARF‐like metadata node. |
Type Aliases
Name |
Description |
Iterator over this node's operands. |
|
Range of this node's operands. |
Enums
Name |
Description |
RTTI identifiers for concrete metadata subclasses. |
Member Functions
Name |
Description |
|
Copy assignment is deleted; MDNode is non‐copyable. |
Return a (temporary) clone of this. |
|
|
|
|
|
Return the LLVM context that owns this node. |
|
Return the line. |
|
Return the macinfo type. |
|
Return the metadata kind ID for this node. |
|
Return the name. |
|
Return number of MDNode operands. |
|
Return the number of uses of this temporary metadata node. |
|
Return the operand at index |
|
Return the raw name operand. |
|
Return the raw value operand. |
|
Return the value. |
|
Return true if this node kind is always RAUW‐replaceable (e.g. DIAssignID). |
|
Return true if this node is distinct (not uniqued). |
|
Return true if this node supports RAUW replacement. |
|
Check if node is fully resolved. |
|
Check whether MDNode is a vtable access. |
|
Return true if this is a temporary (forward‐declaration) metadata node. |
|
Return true if this node is uniqued in the context. |
|
Return an iterator to the first operand. |
|
Return an iterator past the last operand. |
|
Return this node's operands as an array reference. |
|
|
Ordinary allocation is deleted; use the custom MDNode allocators. |
|
|
|
|
|
|
RAUW a temporary. |
|
Replace a specific operand. |
|
Resolve a unique, unresolved node. |
|
Resolve cycles. |
Static Member Functions
Name |
Description |
Check whether |
|
Methods for metadata merging. Concatenate metadata nodes |
|
Deallocate a node created by getTemporary. |
|
Convert CaptureComponents to !captures metadata. The return value may be nullptr. |
|
|
|
|
|
|
|
Merge alloc‐token metadata from two instructions. |
|
Merge callee‐type metadata from two instructions. |
|
Merge callsite metadata from two instructions. |
|
Merge memprof metadata from two instructions. |
|
Merge !prof metadata from two instructions. Currently only implemented with direct callsites with branch weights. |
|
Merge alias‐scope metadata, keeping scopes present in both. |
|
Merge align/dereferenceable metadata, returning the most generic bound. |
|
Merge FP‐math metadata, returning the most generic accuracy. |
|
Merge |
|
Merge noalias address‐space metadata, returning the most generic set. |
|
Merge !range metadata by taking the union of the integer intervals. |
|
Merge TBAA metadata, returning the most generic common tag. |
|
|
|
Intersect metadata nodes |
|
Replace a temporary node with a distinct one. |
|
Replace a temporary node with a permanent one. |
|
Replace a temporary node with a uniqued one. |
|
Convert !captures metadata to CaptureComponents. MD may be nullptr. |
Static Data Members
Name |
Description |
Metadata IDs that may generate poison. |
Protected Type Aliases
Name |
Description |
Range type over mutable |
Protected Enums
Name |
Description |
Active type of storage. |
Protected Member Functions
Name |
Description |
Drop all references held by this metadata node. |
|
Return the number of unresolved operands in this node. |
|
Return the operand as. |
|
Return the string operand. |
|
Default handling of a changed operand, which asserts. |
|
Return an iterator to the first mutable operand. |
|
Return an iterator past the last mutable operand. |
|
Return a mutable range over this node's operands. |
|
Delete operators |
|
Allocate an |
|
Resize the node to hold NumOps operands. |
|
Set the number of unresolved operands in this node. |
|
Set an operand. |
|
Register this node as a distinct MDNode owned by the LLVMContext. |
Protected Static Member Functions
Name |
Description |
Return the canonical md string. |
|
|
Protected Data Members
Name |
Description |
Storage flag for non‐uniqued, otherwise unowned, metadata. |
|
One bit of subclass‐specific state packed into the metadata header. |
|
Sixteen bits of subclass‐specific state packed into the metadata header. |
|
Thirty‐two bits of subclass‐specific state packed into the metadata header. |
Friends
Name |
Description |
Metadata node. |
|
Private implementation details of |
Non-Member Functions
Name |
Description |
Return the named unroll hint metadata operand from loop id |
|
Lookup or compute a mapping for a piece of metadata. |
|
Version of MapMetadata with type safety for MDNode. |
|
Upgrade a scalar TBAA tag to the struct‐path aware TBAA format. |
|
Compute known bits from the range metadata. |
|
Extract branch weights from MD_prof metadata |
|
Faster version of extractBranchWeights() that skips checks and must only be called with "branch_weights" metadata nodes. Supports uint32_t. |
|
Faster version of extractBranchWeights() that skips checks and must only be called with "branch_weights" metadata nodes. Supports uint64_t. |
|
Retrieve the total of all weights from MD_prof data. |
|
Find and return the loop attribute node for the attribute |
|
Return the offset to the first branch weight data |
|
Parse out a conservative ConstantRange from !range metadata. |
|
Find subprogram that is enclosing this scope. |
|
Return the number of branch weights stored in |
|
Check if Branch Weight Metadata has an "expected" field from an llvm.expect* intrinsic |
|
Checks if an MDNode contains Branch Weight Metadata |
|
Check whether |
|
Return whether an MDNode might represent an access group. |
|
Checks if an MDNode contains value profiling Metadata |
|
Create a new loop identifier for a loop created from a loop transformation. |
|
Compute the union of two access‐group lists. |
|
Upgrade the loop attachment metadata node. |
|
Wrap a |
|
Returns the allocation type from an MIB metadata node. |
|
Returns the stack node from an MIB metadata node. |
Created with MrDocs