LLVM  14.0.0git
Functions
Call Sites and Invocations

Functions in this group apply to instructions that refer to call sites and invocations. These correspond to C++ types in the llvm::CallInst class tree. More...

Collaboration diagram for Call Sites and Invocations:

Functions

unsigned LLVMGetNumArgOperands (LLVMValueRef Instr)
 Obtain the argument count for a call instruction. More...
 
void LLVMSetInstructionCallConv (LLVMValueRef Instr, unsigned CC)
 Set the calling convention for a call instruction. More...
 
unsigned LLVMGetInstructionCallConv (LLVMValueRef Instr)
 Obtain the calling convention for a call instruction. More...
 
void LLVMSetInstrParamAlignment (LLVMValueRef Instr, LLVMAttributeIndex Idx, unsigned Align)
 
void LLVMAddCallSiteAttribute (LLVMValueRef C, LLVMAttributeIndex Idx, LLVMAttributeRef A)
 
unsigned LLVMGetCallSiteAttributeCount (LLVMValueRef C, LLVMAttributeIndex Idx)
 
void LLVMGetCallSiteAttributes (LLVMValueRef C, LLVMAttributeIndex Idx, LLVMAttributeRef *Attrs)
 
LLVMAttributeRef LLVMGetCallSiteEnumAttribute (LLVMValueRef C, LLVMAttributeIndex Idx, unsigned KindID)
 
LLVMAttributeRef LLVMGetCallSiteStringAttribute (LLVMValueRef C, LLVMAttributeIndex Idx, const char *K, unsigned KLen)
 
void LLVMRemoveCallSiteEnumAttribute (LLVMValueRef C, LLVMAttributeIndex Idx, unsigned KindID)
 
void LLVMRemoveCallSiteStringAttribute (LLVMValueRef C, LLVMAttributeIndex Idx, const char *K, unsigned KLen)
 
LLVMTypeRef LLVMGetCalledFunctionType (LLVMValueRef C)
 Obtain the function type called by this instruction. More...
 
LLVMValueRef LLVMGetCalledValue (LLVMValueRef Instr)
 Obtain the pointer to the function invoked by this instruction. More...
 
LLVMBool LLVMIsTailCall (LLVMValueRef CallInst)
 Obtain whether a call instruction is a tail call. More...
 
void LLVMSetTailCall (LLVMValueRef CallInst, LLVMBool IsTailCall)
 Set whether a call instruction is a tail call. More...
 
LLVMBasicBlockRef LLVMGetNormalDest (LLVMValueRef InvokeInst)
 Return the normal destination basic block. More...
 
LLVMBasicBlockRef LLVMGetUnwindDest (LLVMValueRef InvokeInst)
 Return the unwind destination basic block. More...
 
void LLVMSetNormalDest (LLVMValueRef InvokeInst, LLVMBasicBlockRef B)
 Set the normal destination basic block. More...
 
void LLVMSetUnwindDest (LLVMValueRef InvokeInst, LLVMBasicBlockRef B)
 Set the unwind destination basic block. More...
 

Detailed Description

Functions in this group apply to instructions that refer to call sites and invocations. These correspond to C++ types in the llvm::CallInst class tree.

Function Documentation

◆ LLVMAddCallSiteAttribute()

void LLVMAddCallSiteAttribute ( LLVMValueRef  C,
LLVMAttributeIndex  Idx,
LLVMAttributeRef  A 
)

Definition at line 2869 of file Core.cpp.

References llvm::unwrap().

◆ LLVMGetCalledFunctionType()

LLVMTypeRef LLVMGetCalledFunctionType ( LLVMValueRef  C)

Obtain the function type called by this instruction.

See also
llvm::CallBase::getFunctionType()

Definition at line 2917 of file Core.cpp.

References llvm::wrap().

◆ LLVMGetCalledValue()

LLVMValueRef LLVMGetCalledValue ( LLVMValueRef  Instr)

Obtain the pointer to the function invoked by this instruction.

This expects an LLVMValueRef that corresponds to a llvm::CallInst or llvm::InvokeInst.

See also
llvm::CallInst::getCalledOperand()
llvm::InvokeInst::getCalledOperand()

Definition at line 2913 of file Core.cpp.

References llvm::wrap().

◆ LLVMGetCallSiteAttributeCount()

unsigned LLVMGetCallSiteAttributeCount ( LLVMValueRef  C,
LLVMAttributeIndex  Idx 
)

Definition at line 2874 of file Core.cpp.

◆ LLVMGetCallSiteAttributes()

void LLVMGetCallSiteAttributes ( LLVMValueRef  C,
LLVMAttributeIndex  Idx,
LLVMAttributeRef Attrs 
)

Definition at line 2881 of file Core.cpp.

References Attrs, and llvm::wrap().

◆ LLVMGetCallSiteEnumAttribute()

LLVMAttributeRef LLVMGetCallSiteEnumAttribute ( LLVMValueRef  C,
LLVMAttributeIndex  Idx,
unsigned  KindID 
)

Definition at line 2889 of file Core.cpp.

References llvm::wrap().

◆ LLVMGetCallSiteStringAttribute()

LLVMAttributeRef LLVMGetCallSiteStringAttribute ( LLVMValueRef  C,
LLVMAttributeIndex  Idx,
const char *  K,
unsigned  KLen 
)

Definition at line 2896 of file Core.cpp.

References llvm::wrap().

◆ LLVMGetInstructionCallConv()

unsigned LLVMGetInstructionCallConv ( LLVMValueRef  Instr)

Obtain the calling convention for a call instruction.

This is the opposite of LLVMSetInstructionCallConv(). Reads its usage.

See also
LLVMSetInstructionCallConv()

Definition at line 2852 of file Core.cpp.

◆ LLVMGetNormalDest()

LLVMBasicBlockRef LLVMGetNormalDest ( LLVMValueRef  InvokeInst)

Return the normal destination basic block.

This only works on llvm::InvokeInst instructions.

See also
llvm::InvokeInst::getNormalDest()

Definition at line 2933 of file Core.cpp.

References llvm::wrap().

◆ LLVMGetNumArgOperands()

unsigned LLVMGetNumArgOperands ( LLVMValueRef  Instr)

Obtain the argument count for a call instruction.

This expects an LLVMValueRef that corresponds to a llvm::CallInst, llvm::InvokeInst, or llvm:FuncletPadInst.

See also
llvm::CallInst::getNumArgOperands()
llvm::InvokeInst::getNumArgOperands()
llvm::FuncletPadInst::getNumArgOperands()

Definition at line 2843 of file Core.cpp.

References llvm::unwrap().

◆ LLVMGetUnwindDest()

LLVMBasicBlockRef LLVMGetUnwindDest ( LLVMValueRef  InvokeInst)

◆ LLVMIsTailCall()

LLVMBool LLVMIsTailCall ( LLVMValueRef  CallInst)

Obtain whether a call instruction is a tail call.

This only works on llvm::CallInst instructions.

See also
llvm::CallInst::isTailCall()

Definition at line 2923 of file Core.cpp.

◆ LLVMRemoveCallSiteEnumAttribute()

void LLVMRemoveCallSiteEnumAttribute ( LLVMValueRef  C,
LLVMAttributeIndex  Idx,
unsigned  KindID 
)

Definition at line 2903 of file Core.cpp.

◆ LLVMRemoveCallSiteStringAttribute()

void LLVMRemoveCallSiteStringAttribute ( LLVMValueRef  C,
LLVMAttributeIndex  Idx,
const char *  K,
unsigned  KLen 
)

Definition at line 2908 of file Core.cpp.

◆ LLVMSetInstrParamAlignment()

void LLVMSetInstrParamAlignment ( LLVMValueRef  Instr,
LLVMAttributeIndex  Idx,
unsigned  Align 
)

Definition at line 2861 of file Core.cpp.

References align, and llvm::Attribute::getWithAlignment().

◆ LLVMSetInstructionCallConv()

void LLVMSetInstructionCallConv ( LLVMValueRef  Instr,
unsigned  CC 
)

Set the calling convention for a call instruction.

This expects an LLVMValueRef that corresponds to a llvm::CallInst or llvm::InvokeInst.

See also
llvm::CallInst::setCallingConv()
llvm::InvokeInst::setCallingConv()

Definition at line 2856 of file Core.cpp.

◆ LLVMSetNormalDest()

void LLVMSetNormalDest ( LLVMValueRef  InvokeInst,
LLVMBasicBlockRef  B 
)

Set the normal destination basic block.

This only works on llvm::InvokeInst instructions.

See also
llvm::InvokeInst::setNormalDest()

Definition at line 2946 of file Core.cpp.

References B, and llvm::unwrap().

◆ LLVMSetTailCall()

void LLVMSetTailCall ( LLVMValueRef  CallInst,
LLVMBool  IsTailCall 
)

Set whether a call instruction is a tail call.

This only works on llvm::CallInst instructions.

See also
llvm::CallInst::setTailCall()

Definition at line 2927 of file Core.cpp.

◆ LLVMSetUnwindDest()

void LLVMSetUnwindDest ( LLVMValueRef  InvokeInst,
LLVMBasicBlockRef  B 
)

Set the unwind destination basic block.

Works on llvm::InvokeInst, llvm::CleanupReturnInst, and llvm::CatchSwitchInst instructions.

See also
llvm::InvokeInst::setUnwindDest()
llvm::CleanupReturnInst::setUnwindDest()
llvm::CatchSwitchInst::setUnwindDest()

Definition at line 2950 of file Core.cpp.

References B, and llvm::unwrap().