LLVM  14.0.0git
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.
 
 IFuncs
 Functions in this group relate to indirect 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 LLVMLookupIntrinsicID (const char *Name, size_t NameLen)
 Obtain the intrinsic ID number which matches the given function name. 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 char * LLVMIntrinsicGetName (unsigned ID, size_t *NameLength)
 Retrieves the name of an intrinsic. More...
 
const char * LLVMIntrinsicCopyOverloadedName (unsigned ID, LLVMTypeRef *ParamTypes, size_t ParamCount, size_t *NameLength)
 Deprecated: Use LLVMIntrinsicCopyOverloadedName2 instead. More...
 
const char * LLVMIntrinsicCopyOverloadedName2 (LLVMModuleRef Mod, 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 char * LLVMGetGC (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 2461 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 2502 of file Core.cpp.

References llvm::Attribute::get().

◆ LLVMDeleteFunction()

void LLVMDeleteFunction ( LLVMValueRef  Fn)

Remove a function from its containing module and deletes it.

See also
llvm::Function::eraseFromParent()

Definition at line 2358 of file Core.cpp.

◆ LLVMGetAttributeCountAtIndex()

unsigned LLVMGetAttributeCountAtIndex ( LLVMValueRef  F,
LLVMAttributeIndex  Idx 
)

Definition at line 2466 of file Core.cpp.

References F.

◆ LLVMGetAttributesAtIndex()

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

Definition at line 2471 of file Core.cpp.

References Attrs, F, and llvm::wrap().

◆ LLVMGetEnumAttributeAtIndex()

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

Definition at line 2478 of file Core.cpp.

References F, and 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 2439 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 2448 of file Core.cpp.

References F.

◆ 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 2385 of file Core.cpp.

References llvm::Intrinsic::getDeclaration(), llvm_map_to_intrinsic_id(), Mod, 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 2374 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 2366 of file Core.cpp.

References llvm::wrap().

◆ LLVMGetStringAttributeAtIndex()

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

Definition at line 2485 of file Core.cpp.

References F, and llvm::wrap().

◆ LLVMHasPersonalityFn()

LLVMBool LLVMHasPersonalityFn ( LLVMValueRef  Fn)

Check whether the given function has a personality function.

See also
llvm::Function::hasPersonalityFn()

Definition at line 2362 of file Core.cpp.

◆ LLVMIntrinsicCopyOverloadedName()

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

Deprecated: Use LLVMIntrinsicCopyOverloadedName2 instead.

Definition at line 2408 of file Core.cpp.

References llvm::Intrinsic::getNameNoUnnamedTypes(), llvm_map_to_intrinsic_id(), llvm::ARM::NameLength, and llvm::unwrap().

◆ LLVMIntrinsicCopyOverloadedName2()

const char* LLVMIntrinsicCopyOverloadedName2 ( LLVMModuleRef  Mod,
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.

This version also supports unnamed types.

See also
llvm::Intrinsic::getName()

Definition at line 2419 of file Core.cpp.

References llvm::Intrinsic::getName(), llvm_map_to_intrinsic_id(), Mod, llvm::ARM::NameLength, 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 2394 of file Core.cpp.

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

◆ 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 2401 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 2434 of file Core.cpp.

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

◆ LLVMLookupIntrinsicID()

unsigned LLVMLookupIntrinsicID ( const char *  Name,
size_t  NameLen 
)

Obtain the intrinsic ID number which matches the given function name.

See also
llvm::Function::lookupIntrinsicID()

Definition at line 2430 of file Core.cpp.

References llvm::Function::lookupIntrinsicID().

◆ LLVMRemoveEnumAttributeAtIndex()

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

Definition at line 2492 of file Core.cpp.

References F.

◆ LLVMRemoveStringAttributeAtIndex()

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

Definition at line 2497 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 2443 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 2453 of file Core.cpp.

References F.

◆ LLVMSetPersonalityFn()

void LLVMSetPersonalityFn ( LLVMValueRef  Fn,
LLVMValueRef  PersonalityFn 
)

Set the personality function attached to the function.

See also
llvm::Function::setPersonalityFn()

Definition at line 2370 of file Core.cpp.