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 1820 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 1764 of file Core.cpp.

Get an attribute from a function argument.

Definition at line 1832 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 1788 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 1796 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 1804 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 1777 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 1784 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 1770 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 1812 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 1826 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 
)