@@ -28,26 +28,26 @@ subq $16, %rsp andq $-16, %rsp movq %rdi, -8(%rbp) - movb 225(%rdi), %r11b + movb OFFSET_RETURN_TYPE(%rdi), %r11b cmpb $RETURN_TYPE_STRET, %r11b je .lookup_stret cmpb $RETURN_TYPE_JMP_STRET, %r11b je .lookup_stret - movq 8(%rdi), %rsi - movq 0(%rdi), %rdi + movq OFFSET_GPR_IN+8(%rdi), %rsi + movq OFFSET_GPR_IN+0(%rdi), %rdi call objc_msg_lookup@PLT .after_lookup: movq %rax, -16(%rbp) movq -8(%rbp), %rdi - leaq 240(%rdi), %rdx - movq 232(%rdi), %rcx + leaq OFFSET_STACK(%rdi), %rdx + movq OFFSET_STACK_SIZE(%rdi), %rcx testq $1, %rcx jnz .fix_align .fill_stack: @@ -59,29 +59,29 @@ pushq %r11 jmp .fill_stack .stack_filled: - movb 224(%rdi), %al - - movdqa 176(%rdi), %xmm7 - movdqa 160(%rdi), %xmm6 - movdqa 144(%rdi), %xmm5 - movdqa 128(%rdi), %xmm4 - movdqa 112(%rdi), %xmm3 - movdqa 96(%rdi), %xmm2 - movdqa 80(%rdi), %xmm1 - movdqa 64(%rdi), %xmm0 - - movq 40(%rdi), %r9 - movq 32(%rdi), %r8 - movq 24(%rdi), %rcx - movq 16(%rdi), %rdx - movq 8(%rdi), %rsi - - movb 225(%rdi), %r11b - movq 0(%rdi), %rdi + movb OFFSET_NUM_SSE_USED(%rdi), %al + + movdqa OFFSET_SSE_INOUT+112(%rdi), %xmm7 + movdqa OFFSET_SSE_INOUT+96(%rdi), %xmm6 + movdqa OFFSET_SSE_INOUT+80(%rdi), %xmm5 + movdqa OFFSET_SSE_INOUT+64(%rdi), %xmm4 + movdqa OFFSET_SSE_INOUT+48(%rdi), %xmm3 + movdqa OFFSET_SSE_INOUT+32(%rdi), %xmm2 + movdqa OFFSET_SSE_INOUT+16(%rdi), %xmm1 + movdqa OFFSET_SSE_INOUT(%rdi), %xmm0 + + movq OFFSET_GPR_IN+40(%rdi), %r9 + movq OFFSET_GPR_IN+32(%rdi), %r8 + movq OFFSET_GPR_IN+24(%rdi), %rcx + movq OFFSET_GPR_IN+16(%rdi), %rdx + movq OFFSET_GPR_IN+8(%rdi), %rsi + + movb OFFSET_RETURN_TYPE(%rdi), %r11b + movq OFFSET_GPR_IN(%rdi), %rdi cmpb $RETURN_TYPE_JMP, %r11b je .jmp_into_method cmpb $RETURN_TYPE_JMP_STRET, %r11b je .jmp_into_method @@ -89,16 +89,16 @@ movq -16(%rbp), %r11 call *%r11 .after_send: movq -8(%rbp), %rdi - movq %rax, 48(%rdi) - movq %rdx, 56(%rdi) - movdqa %xmm0, 64(%rdi) - movdqa %xmm1, 80(%rdi) + movq %rax, OFFSET_GPR_OUT(%rdi) + movq %rdx, OFFSET_GPR_OUT+8(%rdi) + movdqa %xmm0, OFFSET_SSE_INOUT(%rdi) + movdqa %xmm1, OFFSET_SSE_INOUT+16(%rdi) - movb 225(%rdi), %r11b + movb OFFSET_RETURN_TYPE(%rdi), %r11b cmpb $RETURN_TYPE_X87, %r11b je .pop_long_double cmpb $RETURN_TYPE_COMPLEX_X87, %r11b @@ -114,27 +114,27 @@ xorq %r11, %r11 pushq %r11 jmp .fill_stack .lookup_stret: - movq 16(%rdi), %rsi - movq 8(%rdi), %rdi + movq OFFSET_GPR_IN+16(%rdi), %rsi + movq OFFSET_GPR_IN+8(%rdi), %rdi call objc_msg_lookup_stret@PLT jmp .after_lookup .jmp_into_method: movq -16(%rbp), %r11 jmp *%r11 .pop_long_double: - fstpt 192(%rdi) + fstpt OFFSET_X87_OUT(%rdi) jmp .return .pop_complex_long_double: - fstpt 192(%rdi) - fstpt 208(%rdi) + fstpt OFFSET_X87_OUT(%rdi) + fstpt OFFSET_X87_OUT+16(%rdi) jmp .return #ifdef OF_LINUX .section .note.GNU-stack, "", %progbits #endif