asmjit::FuncArgsAssignment Class Reference [¶]
A helper class that can be used to assign a physical register for each function argument. The assignment is passed to BaseEmitter::emit_args_assignment() function.
A helper class that can be used to assign a physical register for each function argument. The assignment is passed to BaseEmitter::emit_args_assignment() function.
Creates either a default initialized FuncArgsAssignment or to assignment that links to fd, if non-null.
Copy constructor.
Resets this FuncArgsAssignment to either default constructed state or to assignment that links to fd, if non-null.
Copy assignment.
Returns the associated FuncDetail of this FuncArgsAssignment.
Associates FuncDetail with this FuncArgsAssignment.
Returns whether a register to access stack arguments is available.
Returns a physical ID of a register that can access stack arguments.
Sets a physical ID of a register that can access stack arguments.
Resets a physical ID of a register that can access stack arguments.
Returns assigned argument at arg_index and value_index.
arg_index refers to he function argument and value_index refers to a value pack (in case multiple values are passed as a single argument).
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Tests whether argument at arg_index and value_index has been assigned.
Assigns register at arg_index and value index of 0 to reg and an optional type_id.
Assigns register at arg_index and value index of 0 to reg_type, reg_id, and an optional type_id.
Assigns stack at arg_index and value index of 0 to offset and an optional type_id.
Assigns register at arg_index and value_index to reg and an optional type_id.
Assigns register at arg_index and value_index to reg_type, reg_id, and an optional type_id.
Assigns stack at arg_index and value_index to offset and an optional type_id.
Assigns all argument at once.
This function can be only used if the arguments don't contain value packs (multiple values per argument).
Update FuncFrame based on function's arguments assignment.
This function must be called in order to use BaseEmitter::emit_args_assignment(), otherwise the FuncFrame would not contain the information necessary to assign all arguments into the registers and/or stack specified.
Function detail.
Register that can be used to access arguments passed by stack.
Reserved for future use.
Mapping of each function argument.