LLVM 20.0.0git
Functions

Functions in this group operate on LLVMOperandBundleRef instances that correspond to llvm::OperandBundleDef instances. More...

Collaboration diagram for Operand Bundles:

Functions

LLVMOperandBundleRef LLVMCreateOperandBundle (const char *Tag, size_t TagLen, LLVMValueRef *Args, unsigned NumArgs)
 Create a new operand bundle.
 
void LLVMDisposeOperandBundle (LLVMOperandBundleRef Bundle)
 Destroy an operand bundle.
 
const charLLVMGetOperandBundleTag (LLVMOperandBundleRef Bundle, size_t *Len)
 Obtain the tag of an operand bundle as a string.
 
unsigned LLVMGetNumOperandBundleArgs (LLVMOperandBundleRef Bundle)
 Obtain the number of operands for an operand bundle.
 
LLVMValueRef LLVMGetOperandBundleArgAtIndex (LLVMOperandBundleRef Bundle, unsigned Index)
 Obtain the operand for an operand bundle at the given index.
 

Detailed Description

Functions in this group operate on LLVMOperandBundleRef instances that correspond to llvm::OperandBundleDef instances.

See also
llvm::OperandBundleDef

Function Documentation

◆ LLVMCreateOperandBundle()

LLVMOperandBundleRef LLVMCreateOperandBundle ( const char Tag,
size_t  TagLen,
LLVMValueRef Args,
unsigned  NumArgs 
)

Create a new operand bundle.

Every invocation should be paired with LLVMDisposeOperandBundle() or memory will be leaked.

Parameters
TagTag name of the operand bundle
TagLenLength of Tag
ArgsMemory address of an array of bundle operands
NumArgsLength of Args

Definition at line 2744 of file Core.cpp.

References unwrap(), and llvm::wrap().

◆ LLVMDisposeOperandBundle()

void LLVMDisposeOperandBundle ( LLVMOperandBundleRef  Bundle)

Destroy an operand bundle.

This must be called for every created operand bundle or memory will be leaked.

Definition at line 2751 of file Core.cpp.

References unwrap().

◆ LLVMGetNumOperandBundleArgs()

unsigned LLVMGetNumOperandBundleArgs ( LLVMOperandBundleRef  Bundle)

Obtain the number of operands for an operand bundle.

Parameters
BundleOperand bundle to obtain operand count of.
Returns
The number of operands.
See also
OperandBundleDef::input_size()

Definition at line 2761 of file Core.cpp.

References llvm::BasicBlock::size(), and unwrap().

◆ LLVMGetOperandBundleArgAtIndex()

LLVMValueRef LLVMGetOperandBundleArgAtIndex ( LLVMOperandBundleRef  Bundle,
unsigned  Index 
)

Obtain the operand for an operand bundle at the given index.

Parameters
BundleOperand bundle to obtain operand of.
IndexAn operand index, must be less than LLVMGetNumOperandBundleArgs().
Returns
The operand.

Definition at line 2765 of file Core.cpp.

References unwrap(), and llvm::wrap().

◆ LLVMGetOperandBundleTag()

const char * LLVMGetOperandBundleTag ( LLVMOperandBundleRef  Bundle,
size_t *  Len 
)

Obtain the tag of an operand bundle as a string.

Parameters
BundleOperand bundle to obtain tag of.
LenOut parameter which holds the length of the returned string.
Returns
The tag name of Bundle.
See also
OperandBundleDef::getTag()

Definition at line 2755 of file Core.cpp.

References unwrap().