LLVM  8.0.1
Modules | Functions

Functions in this group operate on LLVMValueRef instances that correspond to llvm::Function instances. More...

Collaboration diagram for Function values:

Modules

 Function Parameters
 Functions in this group relate to arguments/parameters on functions.
 

Functions

void LLVMDeleteFunction (LLVMValueRef Fn)
 Remove a function from its containing module and deletes it. More...
 
LLVMBool LLVMHasPersonalityFn (LLVMValueRef Fn)
 Check whether the given function has a personality function. More...
 
LLVMValueRef LLVMGetPersonalityFn (LLVMValueRef Fn)
 Obtain the personality function attached to the function. More...
 
void LLVMSetPersonalityFn (LLVMValueRef Fn, LLVMValueRef PersonalityFn)
 Set the personality function attached to the function. More...
 
unsigned LLVMGetIntrinsicID (LLVMValueRef Fn)
 Obtain the ID number from a function instance. More...
 
LLVMValueRef LLVMGetIntrinsicDeclaration (LLVMModuleRef Mod, unsigned ID, LLVMTypeRef *ParamTypes, size_t ParamCount)
 Create or insert the declaration of an intrinsic. More...
 
LLVMTypeRef LLVMIntrinsicGetType (LLVMContextRef Ctx, unsigned ID, LLVMTypeRef *ParamTypes, size_t ParamCount)
 Retrieves the type of an intrinsic. More...
 
const charLLVMIntrinsicGetName (unsigned ID, size_t *NameLength)
 Retrieves the name of an intrinsic. More...
 
const charLLVMIntrinsicCopyOverloadedName (unsigned ID, LLVMTypeRef *ParamTypes, size_t ParamCount, size_t *NameLength)
 Copies the name of an overloaded intrinsic identified by a given list of parameter types. More...
 
LLVMBool LLVMIntrinsicIsOverloaded (unsigned ID)
 Obtain if the intrinsic identified by the given ID is overloaded. More...
 
unsigned LLVMGetFunctionCallConv (LLVMValueRef Fn)
 Obtain the calling function of a function. More...
 
void LLVMSetFunctionCallConv (LLVMValueRef Fn, unsigned CC)
 Set the calling convention of a function. More...
 
const charLLVMGetGC (LLVMValueRef Fn)
 Obtain the name of the garbage collector to use during code generation. More...
 
void LLVMSetGC (LLVMValueRef Fn, const char *Name)
 Define the garbage collector to use during code generation. More...
 
void LLVMAddAttributeAtIndex (LLVMValueRef F, LLVMAttributeIndex Idx, LLVMAttributeRef A)
 Add an attribute to a function. More...
 
unsigned LLVMGetAttributeCountAtIndex (LLVMValueRef F, LLVMAttributeIndex Idx)
 
void LLVMGetAttributesAtIndex (LLVMValueRef F, LLVMAttributeIndex Idx, LLVMAttributeRef *Attrs)
 
LLVMAttributeRef LLVMGetEnumAttributeAtIndex (LLVMValueRef F, LLVMAttributeIndex Idx, unsigned KindID)
 
LLVMAttributeRef LLVMGetStringAttributeAtIndex (LLVMValueRef F, LLVMAttributeIndex Idx, const char *K, unsigned KLen)
 
void LLVMRemoveEnumAttributeAtIndex (LLVMValueRef F, LLVMAttributeIndex Idx, unsigned KindID)
 
void LLVMRemoveStringAttributeAtIndex (LLVMValueRef F, LLVMAttributeIndex Idx, const char *K, unsigned KLen)
 
void LLVMAddTargetDependentFunctionAttr (LLVMValueRef Fn, const char *A, const char *V)
 Add a target-dependent attribute to a function. More...
 

Detailed Description

Functions in this group operate on LLVMValueRef instances that correspond to llvm::Function instances.

See also
llvm::Function

Function Documentation

◆ LLVMAddAttributeAtIndex()

void LLVMAddAttributeAtIndex ( LLVMValueRef  F,
LLVMAttributeIndex  Idx,
LLVMAttributeRef  A 
)

Add an attribute to a function.

See also
llvm::Function::addAttribute()

Definition at line 2360 of file Core.cpp.

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

◆ LLVMAddTargetDependentFunctionAttr()

void LLVMAddTargetDependentFunctionAttr ( LLVMValueRef  Fn,
const char A,
const char V 
)

Add a target-dependent attribute to a function.

See also
llvm::AttrBuilder::addAttribute()

Definition at line 2400 of file Core.cpp.

References llvm::Function::addAttribute(), llvm::AttributeList::FunctionIndex, llvm::Attribute::get(), and llvm::Function::getContext().

◆ LLVMDeleteFunction()

void LLVMDeleteFunction ( LLVMValueRef  Fn)

Remove a function from its containing module and deletes it.

See also
llvm::Function::eraseFromParent()

Definition at line 2272 of file Core.cpp.

◆ LLVMGetAttributeCountAtIndex()

unsigned LLVMGetAttributeCountAtIndex ( LLVMValueRef  F,
LLVMAttributeIndex  Idx 
)

◆ LLVMGetAttributesAtIndex()

void LLVMGetAttributesAtIndex ( LLVMValueRef  F,
LLVMAttributeIndex  Idx,
LLVMAttributeRef Attrs 
)

◆ LLVMGetEnumAttributeAtIndex()

LLVMAttributeRef LLVMGetEnumAttributeAtIndex ( LLVMValueRef  F,
LLVMAttributeIndex  Idx,
unsigned  KindID 
)

Definition at line 2377 of file Core.cpp.

References llvm::wrap().

◆ LLVMGetFunctionCallConv()

unsigned LLVMGetFunctionCallConv ( LLVMValueRef  Fn)

Obtain the calling function of a function.

The returned value corresponds to the LLVMCallConv enumeration.

See also
llvm::Function::getCallingConv()

Definition at line 2338 of file Core.cpp.

◆ LLVMGetGC()

const char* LLVMGetGC ( LLVMValueRef  Fn)

Obtain the name of the garbage collector to use during code generation.

See also
llvm::Function::getGC()

Definition at line 2347 of file Core.cpp.

References F(), llvm::Function::getGC(), and llvm::Function::hasGC().

◆ LLVMGetIntrinsicDeclaration()

LLVMValueRef LLVMGetIntrinsicDeclaration ( LLVMModuleRef  Mod,
unsigned  ID,
LLVMTypeRef ParamTypes,
size_t  ParamCount 
)

Create or insert the declaration of an intrinsic.

For overloaded intrinsics, parameter types must be provided to uniquely identify an overload.

See also
llvm::Intrinsic::getDeclaration()

Definition at line 2299 of file Core.cpp.

References llvm::Intrinsic::getDeclaration(), llvm_map_to_intrinsic_id(), llvm::unwrap(), and llvm::wrap().

◆ LLVMGetIntrinsicID()

unsigned LLVMGetIntrinsicID ( LLVMValueRef  Fn)

Obtain the ID number from a function instance.

See also
llvm::Function::getIntrinsicID()

Definition at line 2288 of file Core.cpp.

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

◆ LLVMGetPersonalityFn()

LLVMValueRef LLVMGetPersonalityFn ( LLVMValueRef  Fn)

Obtain the personality function attached to the function.

See also
llvm::Function::getPersonalityFn()

Definition at line 2280 of file Core.cpp.

References llvm::wrap().

◆ LLVMGetStringAttributeAtIndex()

LLVMAttributeRef LLVMGetStringAttributeAtIndex ( LLVMValueRef  F,
LLVMAttributeIndex  Idx,
const char K,
unsigned  KLen 
)

Definition at line 2384 of file Core.cpp.

References llvm::wrap().

◆ LLVMHasPersonalityFn()

LLVMBool LLVMHasPersonalityFn ( LLVMValueRef  Fn)

Check whether the given function has a personality function.

See also
llvm::Function::hasPersonalityFn()

Definition at line 2276 of file Core.cpp.

◆ LLVMIntrinsicCopyOverloadedName()

const char* LLVMIntrinsicCopyOverloadedName ( unsigned  ID,
LLVMTypeRef ParamTypes,
size_t  ParamCount,
size_t *  NameLength 
)

Copies the name of an overloaded intrinsic identified by a given list of parameter types.

Unlike LLVMIntrinsicGetName, the caller is responsible for freeing the returned string.

See also
llvm::Intrinsic::getName()

Definition at line 2322 of file Core.cpp.

References llvm::Intrinsic::getName(), llvm_map_to_intrinsic_id(), and llvm::unwrap().

◆ LLVMIntrinsicGetName()

const char* LLVMIntrinsicGetName ( unsigned  ID,
size_t *  NameLength 
)

Retrieves the name of an intrinsic.

See also
llvm::Intrinsic::getName()

Definition at line 2308 of file Core.cpp.

References llvm::Intrinsic::getName(), and llvm_map_to_intrinsic_id().

◆ LLVMIntrinsicGetType()

LLVMTypeRef LLVMIntrinsicGetType ( LLVMContextRef  Ctx,
unsigned  ID,
LLVMTypeRef ParamTypes,
size_t  ParamCount 
)

Retrieves the type of an intrinsic.

For overloaded intrinsics, parameter types must be provided to uniquely identify an overload.

See also
llvm::Intrinsic::getType()

Definition at line 2315 of file Core.cpp.

References llvm::Intrinsic::getType(), llvm_map_to_intrinsic_id(), llvm::unwrap(), and llvm::wrap().

◆ LLVMIntrinsicIsOverloaded()

LLVMBool LLVMIntrinsicIsOverloaded ( unsigned  ID)

Obtain if the intrinsic identified by the given ID is overloaded.

See also
llvm::Intrinsic::isOverloaded()

Definition at line 2333 of file Core.cpp.

References llvm::Intrinsic::isOverloaded(), and llvm_map_to_intrinsic_id().

◆ LLVMRemoveEnumAttributeAtIndex()

void LLVMRemoveEnumAttributeAtIndex ( LLVMValueRef  F,
LLVMAttributeIndex  Idx,
unsigned  KindID 
)

Definition at line 2390 of file Core.cpp.

References F().

◆ LLVMRemoveStringAttributeAtIndex()

void LLVMRemoveStringAttributeAtIndex ( LLVMValueRef  F,
LLVMAttributeIndex  Idx,
const char K,
unsigned  KLen 
)

Definition at line 2395 of file Core.cpp.

References F().

◆ LLVMSetFunctionCallConv()

void LLVMSetFunctionCallConv ( LLVMValueRef  Fn,
unsigned  CC 
)

Set the calling convention of a function.

See also
llvm::Function::setCallingConv()
Parameters
FnFunction to operate on
CCLLVMCallConv to set calling convention to

Definition at line 2342 of file Core.cpp.

◆ LLVMSetGC()

void LLVMSetGC ( LLVMValueRef  Fn,
const char Name 
)

Define the garbage collector to use during code generation.

See also
llvm::Function::setGC()

Definition at line 2352 of file Core.cpp.

References llvm::Function::clearGC(), F(), and llvm::Function::setGC().

◆ LLVMSetPersonalityFn()

void LLVMSetPersonalityFn ( LLVMValueRef  Fn,
LLVMValueRef  PersonalityFn 
)

Set the personality function attached to the function.

See also
llvm::Function::setPersonalityFn()

Definition at line 2284 of file Core.cpp.