23#pragma makedep arm64ec_x64
40 __ASM_CFI(
".cfi_def_cfa_register %ebp\n\t")
45 "movl 12(%ebp),%edx\n\t"
52 "movl 12(%ebp),%ecx\n\t"
53 "movl 16(%ebp),%esi\n\t"
56 "1:\tcall *8(%ebp)\n\t"
58 "movl 20(%ebp),%ecx\n\t"
59 "movl %edi,(%ecx)\n\t"
60 "leal -8(%ebp),%esp\n\t"
72#elif defined __x86_64__
81 __ASM_CFI(
".cfi_def_cfa_register %rbp\n\t")
92 "cmovgq %rdx,%rcx\n\t"
93 "leaq 0(,%rcx,8),%rdx\n\t"
99 "movq 0(%rsp),%rcx\n\t"
100 "movq 8(%rsp),%rdx\n\t"
101 "movq 16(%rsp),%r8\n\t"
102 "movq 24(%rsp),%r9\n\t"
103 "movq 0(%rsp),%xmm0\n\t"
104 "movq 8(%rsp),%xmm1\n\t"
105 "movq 16(%rsp),%xmm2\n\t"
106 "movq 24(%rsp),%xmm3\n\t"
108 "leaq -16(%rbp),%rsp\n\t"
113 __ASM_CFI(
".cfi_def_cfa_register %rsp\n\t")
115 __ASM_CFI(
".cfi_adjust_cfa_offset -8\n\t")
121#elif defined __aarch64__
124 "stp x29, x30, [sp, #-16]!\n\t"
125 ".seh_save_fplr_x 16\n\t"
128 ".seh_endprologue\n\t"
129 "sub sp, sp, x1, lsl #3\n\t"
131 "1:\tsub x1, x1, #1\n\t"
132 "ldr x4, [x2, x1, lsl #3]\n\t"
133 "str x4, [sp, x1, lsl #3]\n\t"
135 "2:\tmov x16, x0\n\t"
137 "ldp d0, d1, [x9]\n\t"
138 "ldp d2, d3, [x9, #0x10]\n\t"
139 "ldp d4, d5, [x9, #0x20]\n\t"
140 "ldp d6, d7, [x9, #0x30]\n\t"
141 "ldp x0, x1, [x9, #0x40]\n\t"
142 "ldp x2, x3, [x9, #0x50]\n\t"
143 "ldp x4, x5, [x9, #0x60]\n\t"
144 "ldp x6, x7, [x9, #0x70]\n\t"
145 "ldr x8, [x9, #0x80]\n\t"
148 "ldp x29, x30, [sp], #16\n\t"
164 ".seh_save_regs_w {fp,lr}\n\t"
166 ".seh_save_sp fp\n\t"
167 ".seh_endprologue\n\t"
168 "lsls r1, r1, #2\n\t"
171 "2:\tldr ip, [r2, #-4]!\n\t"
172 "str ip, [sp, #-4]!\n\t"
173 "subs r1, r1, #4\n\t"
176 "vldm r3!, {s0-s15}\n\t"
178 "ldm r3, {r0-r3}\n\t"
GLboolean GLboolean GLboolean b
#define __ASM_GLOBAL_FUNC(name, code)