asmcall.md
July 11, 2024 ยท View on GitHub
Asmc Macro Assembler Reference
ASMCALL
User Defined Convention.
Registers are by default assigned to arguments in the order AX/DX/CX, EAX/EDX/ECX, or RAX/RDX/RCX/R8/R9/R10/R11. Arguments are assigned from right to left.
The 32 and 64-bit version assign float values to SIMD registers 0 to 15.
| asmcall | param | max | min | clean-up | mangle |
| 16-bit | reg | 4 | 2 | caller | foo |
| 32-bit | reg | 8 | 4 | caller | foo |
| 64-bit | reg | 16 | 4 | caller | foo |
Register param are sign-extended to min and register-pair are allowed up to max.