Commit f0f54117 authored by Janne Grunau's avatar Janne Grunau

checkasm: x86: post commit review fixes

Check the full FPU tag word instead of only the lower half and simplify
the comparison.
Use upper-case function base name as macro name to instantiate both
checked_call variants.
parent f4f27e4c
......@@ -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 checked_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
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment