Save and restore MXCSR register in delayed signal handling

* gendef (sigdelayed): Save and restore content of the MXCSR register
	on x86_64.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
Corinna Vinschen 2015-11-28 11:10:41 +01:00
parent a4d1cb1053
commit bfe23aa437
2 changed files with 7 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2015-11-28 Corinna Vinschen <corinna@vinschen.de>
* gendef (sigdelayed): Save and restore content of the MXCSR register
on x86_64.
2015-11-27 Corinna Vinschen <corinna@vinschen.de>
* cygtls.h (_cygtls::wait_signal_arrived): Renamed from

View File

@ -229,6 +229,7 @@ sigdelayed:
.seh_pushreg %rax
subq \$0x128,%rsp
.seh_stackalloc 0x128
stmxcsr 0x124(%rsp)
fnstcw 0x120(%rsp)
movdqa %xmm15,0x110(%rsp)
movdqa %xmm14,0x100(%rsp)
@ -290,6 +291,7 @@ sigdelayed:
movdqa 0x110(%rsp),%xmm15
fninit
fldcw 0x120(%rsp)
ldmxcsr 0x124(%rsp)
addq \$0x128,%rsp
popq %rax
popq %rbx