LLVM  mainline
Functions
Function Parameters
Function values

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

Collaboration diagram for Function Parameters:

Functions

unsigned LLVMCountParams (LLVMValueRef Fn)
 Obtain the number of parameters in a function.
void LLVMGetParams (LLVMValueRef Fn, LLVMValueRef *Params)
 Obtain the parameters in a function.
LLVMValueRef LLVMGetParam (LLVMValueRef Fn, unsigned Index)
 Obtain the parameter at the specified index.
LLVMValueRef LLVMGetParamParent (LLVMValueRef Inst)
 Obtain the function to which this argument belongs.
LLVMValueRef LLVMGetFirstParam (LLVMValueRef Fn)
 Obtain the first parameter to a function.
LLVMValueRef LLVMGetLastParam (LLVMValueRef Fn)
 Obtain the last parameter to a function.
LLVMValueRef LLVMGetNextParam (LLVMValueRef Arg)
 Obtain the next parameter to a function.
LLVMValueRef LLVMGetPreviousParam (LLVMValueRef Arg)
 Obtain the previous parameter to a function.
void LLVMAddAttribute (LLVMValueRef Arg, LLVMAttribute PA)
 Add an attribute to a function argument.
void LLVMRemoveAttribute (LLVMValueRef Arg, LLVMAttribute PA)
 Remove an attribute from a function argument.
LLVMAttribute LLVMGetAttribute (LLVMValueRef Arg)
 Get an attribute from a function argument.
void LLVMSetParamAlignment (LLVMValueRef Arg, unsigned align)
 Set the alignment for a function parameter.

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

Add an attribute to a function argument.

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

Definition at line 1815 of file Core.cpp.

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

Obtain the number of parameters in a function.

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

Definition at line 1759 of file Core.cpp.

Get an attribute from a function argument.

Definition at line 1827 of file Core.cpp.

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

Obtain the first parameter to a function.

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

Definition at line 1783 of file Core.cpp.

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

Obtain the last parameter to a function.

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

Definition at line 1791 of file Core.cpp.

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

Obtain the next parameter to a function.

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

Definition at line 1799 of file Core.cpp.

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

Obtain the parameter at the specified index.

Parameters are indexed from 0.

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

Definition at line 1772 of file Core.cpp.

References llvm::wrap().

Obtain the function to which this argument belongs.

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

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

Definition at line 1779 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 1765 of file Core.cpp.

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

Obtain the previous parameter to a function.

This is the opposite of LLVMGetNextParam().

Definition at line 1807 of file Core.cpp.

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

Remove an attribute from a function argument.

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

Definition at line 1821 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 
)