Synopsis

Declared in <llvm/IR/DebugInfoMetadata.h>

class DITemplateValueParameter
    : public DITemplateParameter

Base Classes

Name

Description

DITemplateParameter

Base class for template parameters.

Type Aliases

Enums

Name

Description

DIFlags

Debug info flags.

MetadataKind

Member Functions

Name

Description

operator= [deleted]

clone

dump

User‐friendly dump.

dumpTree

User‐friendly dump in tree shape.

getContext

getMetadataID

getName

getNumOperands

Return number of MDNode operands.

getNumTemporaryUses

getOperand

getRawName

getRawType

getTag

getType

getValue

isAlwaysReplaceable

isDefault

isDistinct

isReplaceable

isResolved

Check if node is fully resolved.

isTBAAVtableAccess

Check whether MDNode is a vtable access.

isTemporary

isUniqued

op_begin

op_end

operands

operator new [deleted]

print

Print.

printAsOperand

Print as operand.

printTree

Print in tree shape.

replaceAllUsesWith

RAUW a temporary.

replaceOperandWith

Replace a specific operand.

resolve

Resolve a unique, unresolved node.

resolveCycles

Resolve cycles.

Static Member Functions

Name

Description

classof

concatenate

Methods for metadata merging.

deleteTemporary

Deallocate a node created by getTemporary.

fromCaptureComponents

Convert CaptureComponents to !captures metadata. The return value may be nullptr.

get

getDistinct

getFlag

getFlagString

getIfExists

getMergedAllocTokenMetadata

getMergedCalleeTypeMetadata

getMergedCallsiteMetadata

getMergedMemProfMetadata

getMergedProfMetadata

Merge !prof metadata from two instructions. Currently only implemented with direct callsites with branch weights.

getMostGenericAliasScope

getMostGenericAlignmentOrDereferenceable

getMostGenericFPMath

getMostGenericNoFPClass

getMostGenericNoaliasAddrspace

getMostGenericRange

getMostGenericTBAA

getTemporary

intersect

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.

splitFlags

Split up a flags bitfield.

toCaptureComponents

Convert !captures metadata to CaptureComponents. MD may be nullptr.

Static Data Members

Name

Description

PoisonGeneratingIDs

Metadata IDs that may generate poison.

Protected Type Aliases

Protected Enums

Name

Description

StorageType

Active type of storage.

Protected Member Functions

Name

Description

dropAllReferences

getNumUnresolved

getOperandAs

getStringOperand

handleChangedOperand

Default handling of a changed operand, which asserts.

mutable_begin

mutable_end

mutable_operands

operator delete

Required by std, but never called.

operator new

resize

Resize the node to hold NumOps operands.

setNumUnresolved

setOperand

Set an operand.

setTag

Allow subclasses to mutate the tag.

storeDistinctInContext

Protected Static Member Functions

Protected Data Members

Name

Description

Storage

Storage flag for non‐uniqued, otherwise unowned, metadata.

SubclassData1

SubclassData16

SubclassData32

Friends

Name

Description

llvm::MDNode

Metadata node.

llvm::LLVMContextImpl

Non-Member Functions

Name

Description

MapMetadata

Lookup or compute a mapping for a piece of metadata.

MapMetadata

Version of MapMetadata with type safety for MDNode.

UpgradeTBAANode

If the given TBAA tag uses the scalar TBAA format, create a new node corresponding to the upgrade to the struct‐path aware TBAA format. Otherwise return the TBAANode itself.

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.

hasBranchWeightOrigin

Check if Branch Weight Metadata has an "expected" field from an llvm.expect* intrinsic

isBranchWeightMD

Checks if an MDNode contains Branch Weight 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.

memprof::getMIBAllocType

Returns the allocation type from an MIB metadata node.

memprof::getMIBStackNode

Returns the stack node from an MIB metadata node.

Created with MrDocs