LLVM API Documentation

Functions
Function Parameters
Function values
Collaboration diagram for Function Parameters:

Functions

unsigned LLVMCountParams (LLVMValueRef Fn)
void LLVMGetParams (LLVMValueRef Fn, LLVMValueRef *Params)
LLVMValueRef LLVMGetParam (LLVMValueRef Fn, unsigned Index)
LLVMValueRef LLVMGetParamParent (LLVMValueRef Inst)
LLVMValueRef LLVMGetFirstParam (LLVMValueRef Fn)
LLVMValueRef LLVMGetLastParam (LLVMValueRef Fn)
LLVMValueRef LLVMGetNextParam (LLVMValueRef Arg)
LLVMValueRef LLVMGetPreviousParam (LLVMValueRef Arg)
void LLVMAddAttribute (LLVMValueRef Arg, LLVMAttribute PA)
void LLVMRemoveAttribute (LLVMValueRef Arg, LLVMAttribute PA)
LLVMAttribute LLVMGetAttribute (LLVMValueRef Arg)
void LLVMSetParamAlignment (LLVMValueRef Arg, unsigned align)

Detailed Description

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

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


Function Documentation

void LLVMAddAttribute ( LLVMValueRef  Arg,
LLVMAttribute  PA 
)

Add an attribute to a function argument.

See also:
llvm::Argument::addAttr()

Definition at line 1539 of file Core.cpp.

References llvm::ARM_PROC::A, llvm::Argument::addAttr(), llvm::Argument::getArgNo(), and llvm::Value::getContext().

unsigned LLVMCountParams ( LLVMValueRef  Fn)

Obtain the number of parameters in a function.

See also:
llvm::Function::arg_size()

Definition at line 1483 of file Core.cpp.

LLVMAttribute LLVMGetAttribute ( LLVMValueRef  Arg)

Get an attribute from a function argument.

Definition at line 1551 of file Core.cpp.

References llvm::ARM_PROC::A, llvm::Argument::getArgNo(), llvm::Function::getAttributes(), and llvm::Argument::getParent().

LLVMValueRef LLVMGetFirstParam ( LLVMValueRef  Fn)

Obtain the first parameter to a function.

See also:
llvm::Function::arg_begin()

Definition at line 1507 of file Core.cpp.

References llvm::Function::arg_begin(), llvm::Function::arg_end(), I, and llvm::wrap().

LLVMValueRef LLVMGetLastParam ( LLVMValueRef  Fn)

Obtain the last parameter to a function.

See also:
llvm::Function::arg_end()

Definition at line 1515 of file Core.cpp.

References llvm::Function::arg_begin(), llvm::Function::arg_end(), I, and llvm::wrap().

LLVMValueRef LLVMGetNextParam ( LLVMValueRef  Arg)

Obtain the next parameter to a function.

This takes a LLVMValueRef obtained from LLVMGetFirstParam() (which is actually a wrapped iterator) and obtains the next parameter from the underlying iterator.

Definition at line 1523 of file Core.cpp.

References llvm::ARM_PROC::A, llvm::Function::arg_end(), llvm::Argument::getParent(), I, and llvm::wrap().

LLVMValueRef LLVMGetParam ( LLVMValueRef  Fn,
unsigned  Index 
)

Obtain the parameter at the specified index.

Parameters are indexed from 0.

See also:
llvm::Function::arg_begin()

Definition at line 1496 of file Core.cpp.

References llvm::wrap().

LLVMValueRef LLVMGetParamParent ( LLVMValueRef  Inst)

Obtain the function to which this argument belongs.

Unlike other functions in this group, this one takes a LLVMValueRef that corresponds to a llvm::Attribute.

The returned LLVMValueRef is the llvm::Function to which this argument belongs.

Definition at line 1503 of file Core.cpp.

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

void LLVMGetParams ( LLVMValueRef  Fn,
LLVMValueRef Params 
)

Obtain the parameters in a function.

The takes a pointer to a pre-allocated array of LLVMValueRef that is at least LLVMCountParams() long. This array will be filled with LLVMValueRef instances which correspond to the parameters the function receives. Each LLVMValueRef corresponds to a llvm::Argument instance.

See also:
llvm::Function::arg_begin()

Definition at line 1489 of file Core.cpp.

References llvm::Function::arg_begin(), llvm::Function::arg_end(), I, and llvm::wrap().

LLVMValueRef LLVMGetPreviousParam ( LLVMValueRef  Arg)

Obtain the previous parameter to a function.

This is the opposite of LLVMGetNextParam().

Definition at line 1531 of file Core.cpp.

References llvm::ARM_PROC::A, llvm::Function::arg_begin(), llvm::Argument::getParent(), I, and llvm::wrap().

void LLVMRemoveAttribute ( LLVMValueRef  Arg,
LLVMAttribute  PA 
)

Remove an attribute from a function argument.

See also:
llvm::Argument::removeAttr()

Definition at line 1545 of file Core.cpp.

References llvm::ARM_PROC::A, llvm::Argument::getArgNo(), llvm::Value::getContext(), and llvm::Argument::removeAttr().

void LLVMSetParamAlignment ( LLVMValueRef  Arg,
unsigned  align 
)