AsmJit
Low-Latency Machine Code Generation
Function detail - CallConv and expanded FuncSignature.
Function detail is architecture and OS dependent representation of a function. It contains a materialized calling convention and expanded function signature so all arguments have assigned either register type/id or stack address.
Creates a default constructed FuncDetail.
Copy constructor.
Function details are copyable.
Initializes this FuncDetail
to the given signature.
Assignment operator, copies other
to this FuncDetail.
Resets the function detail to its default constructed state.
Returns the function's calling convention, see CallConv
.
Returns the associated calling convention flags, see CallConv::Flags
.
Checks whether a CallConv flag
is set, see CallConv::Flags
.
Tests whether the function has a return value.
Returns the number of function arguments.
Returns function return values.
Returns function return values.
0
)noexcept[1/2]◆ Returns a function return value associated with the given valueIndex
.
0
) constnoexcept[2/2]◆ Returns a function return value associated with the given valueIndex
(const).
Returns function argument packs array.
Returns function argument packs array (const).
Returns function argument pack at the given argIndex
.
Returns function argument pack at the given argIndex
(const).
0
)noexcept[1/2]◆ Returns an argument at valueIndex
from the argument pack at the given argIndex
.
0
) constnoexcept[2/2]◆ Returns an argument at valueIndex
from the argument pack at the given argIndex
(const).
Resets an argument at the given argIndex
.
If the argument is a parameter pack (has multiple values) all values are reset.
Tests whether the function has variable arguments.
Returns an index of a first variable argument.
Tests whether the function passes one or more argument by stack.
Returns stack size needed for function arguments passed on the stack.
Returns red zone size.
Returns spill zone size.
Returns natural stack alignment.
Returns a mask of all passed registers of the given register group
.
Returns a mask of all preserved registers of the given register group
.
Returns a mask of all used registers of the given register group
.
Adds regs
to the mask of used registers of the given register group
.
Function doesn't have a variable number of arguments (...
).
Calling convention.
Number of function arguments.
Variable arguments index of kNoVarArgs
.
Reserved for future use.
Registers that contain arguments.
Size of arguments passed by stack.
Function return value(s).
Function arguments.