| #define UNIX64_RET_VOID 0 | |
| #define UNIX64_RET_UINT8 1 | |
| #define UNIX64_RET_UINT16 2 | |
| #define UNIX64_RET_UINT32 3 | |
| #define UNIX64_RET_SINT8 4 | |
| #define UNIX64_RET_SINT16 5 | |
| #define UNIX64_RET_SINT32 6 | |
| #define UNIX64_RET_INT64 7 | |
| #define UNIX64_RET_XMM32 8 | |
| #define UNIX64_RET_XMM64 9 | |
| #define UNIX64_RET_X87 10 | |
| #define UNIX64_RET_X87_2 11 | |
| #define UNIX64_RET_ST_XMM0_RAX 12 | |
| #define UNIX64_RET_ST_RAX_XMM0 13 | |
| #define UNIX64_RET_ST_XMM0_XMM1 14 | |
| #define UNIX64_RET_ST_RAX_RDX 15 | |
| #define UNIX64_RET_LAST 15 | |
| #define UNIX64_FLAG_RET_IN_MEM (1 << 10) | |
| #define UNIX64_FLAG_XMM_ARGS (1 << 11) | |
| #define UNIX64_SIZE_SHIFT 12 | |
| #if defined(FFI_EXEC_STATIC_TRAMP) | |
| /* | |
| * For the trampoline code table mapping, a mapping size of 4K (base page size) | |
| * is chosen. | |
| */ | |
| #define UNIX64_TRAMP_MAP_SHIFT 12 | |
| #define UNIX64_TRAMP_MAP_SIZE (1 << UNIX64_TRAMP_MAP_SHIFT) | |
| #ifdef ENDBR_PRESENT | |
| #define UNIX64_TRAMP_SIZE 40 | |
| #else | |
| #define UNIX64_TRAMP_SIZE 32 | |
| #endif | |
| #endif |