AsmJit
Low-Latency Machine Code Generation
A helper class that can be used to assign a physical register for each function argument.
Use with BaseEmitter::emitArgsAssignment()
.
nullptr
)explicitnoexcept[1/2]◆ Creates either a default initialized FuncArgsAssignment
or to assignment that links to fd
, if non-null.
Copy constructor.
nullptr
)noexcept◆ 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 FuncDetails with this FuncArgsAssignment
.
Returns assigned argument at argIndex
and valueIndex
.
argIndex
refers to he function argument and valueIndex
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 argIndex
and valueIndex
has been assigned.
TypeId::kVoid
)noexcept[1/2]◆ Assigns register at argIndex
and value index of 0 to reg
and an optional typeId
.
TypeId::kVoid
)noexcept[2/2]◆ Assigns register at argIndex
and value index of 0 to regType
, regId
, and an optional typeId
.
TypeId::kVoid
)noexcept◆ Assigns stack at argIndex
and value index of 0 to offset
and an optional typeId
.
TypeId::kVoid
)noexcept[1/2]◆ Assigns register at argIndex
and valueIndex
to reg
and an optional typeId
.
TypeId::kVoid
)noexcept[2/2]◆ Assigns register at argIndex
and valueIndex
to regType
, regId
, and an optional typeId
.
TypeId::kVoid
)noexcept◆ Assigns stack at argIndex
and valueIndex
to offset
and an optional typeId
.
Assigns all argument at once.
Update FuncFrame
based on function's arguments assignment.
BaseEmitter::emitArgsAssignment()
, 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.