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:
parent
a4d1cb1053
commit
bfe23aa437
|
@ -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>
|
2015-11-27 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* cygtls.h (_cygtls::wait_signal_arrived): Renamed from
|
* cygtls.h (_cygtls::wait_signal_arrived): Renamed from
|
||||||
|
|
|
@ -229,6 +229,7 @@ sigdelayed:
|
||||||
.seh_pushreg %rax
|
.seh_pushreg %rax
|
||||||
subq \$0x128,%rsp
|
subq \$0x128,%rsp
|
||||||
.seh_stackalloc 0x128
|
.seh_stackalloc 0x128
|
||||||
|
stmxcsr 0x124(%rsp)
|
||||||
fnstcw 0x120(%rsp)
|
fnstcw 0x120(%rsp)
|
||||||
movdqa %xmm15,0x110(%rsp)
|
movdqa %xmm15,0x110(%rsp)
|
||||||
movdqa %xmm14,0x100(%rsp)
|
movdqa %xmm14,0x100(%rsp)
|
||||||
|
@ -290,6 +291,7 @@ sigdelayed:
|
||||||
movdqa 0x110(%rsp),%xmm15
|
movdqa 0x110(%rsp),%xmm15
|
||||||
fninit
|
fninit
|
||||||
fldcw 0x120(%rsp)
|
fldcw 0x120(%rsp)
|
||||||
|
ldmxcsr 0x124(%rsp)
|
||||||
addq \$0x128,%rsp
|
addq \$0x128,%rsp
|
||||||
popq %rax
|
popq %rax
|
||||||
popq %rbx
|
popq %rbx
|
||||||
|
|
Loading…
Reference in New Issue