@ -98,7 +98,7 @@ cglobal stack_clobber, 1,2
; void checkasm_checked_call(void *func, ...)
;-----------------------------------------------------------------------------
INIT_XMM
% macro check_call 0-1
% macro CHECKED_CALL 0-1
cglobal ch ecked_call % 1 , 2 , 15 , 16 , max_args * 8 + 8
mov t0 , r0
@ -171,9 +171,8 @@ cglobal checked_call%1, 2,15,16,max_args*8+8
.clobber_ok:
% ifnid %1, _emms
fstenv [ rsp ]
mov r9h , [ rsp + 8 ]
add r9h , 1
jz .emms_ok
cmp word [ rsp + 8 ], 0xffff
je .emms_ok
report_fail error_message_emms
emms
.emms_ok:
@ -201,7 +200,7 @@ cglobal checked_call%1, 2,15,16,max_args*8+8
mov eax , r3
% endmacro
% macro check_call 0-1
% macro CHECKED_CALL 0-1
;-----------------------------------------------------------------------------
; void checkasm_checked_call(void *func, ...)
;-----------------------------------------------------------------------------
@ -225,10 +224,9 @@ cglobal checked_call%1, 1,7
report_fail error_message
.clobber_ok:
% ifnid %1, _emms
fstenv [ rsp ]
mov r3h , [ rsp + 8 ]
add r3h , 1
jz .emms_ok
fstenv [ esp ]
cmp word [ esp + 8 ], 0xffff
je .emms_ok
report_fail error_message_emms
emms
.emms_ok:
@ -241,5 +239,5 @@ cglobal checked_call%1, 1,7
% endif ; ARCH_X86_64
check_call
check_call _emms
CHECKED_CALL
CHECKED_CALL _emms