File tree 1 file changed +11
-0
lines changed
1 file changed +11
-0
lines changed Original file line number Diff line number Diff line change @@ -30,6 +30,14 @@ IMAGE_BASE:
30
30
31
31
/* We can store a bunch of data in the gap between MXCSR and the XSAVE header */
32
32
33
+ /* MXCSR initialization value for ABI */
34
+ .Lmxcsr_init:
35
+ .int 0x1f80
36
+
37
+ /* x87 FPU control word initialization value for ABI */
38
+ .Lfpucw_init:
39
+ .int 0x037f
40
+
33
41
/* The following symbols point at read-only data that will be filled in by the */
34
42
/* post-linker. */
35
43
@@ -173,6 +181,9 @@ sgx_entry:
173
181
mov %gs :tcsls_last_rsp,%r11
174
182
test %r11 ,%r11
175
183
jnz .Lusercall_ret
184
+ /* reset user state */
185
+ ldmxcsr .Lmxcsr_init(%rip )
186
+ fldcw .Lfpucw_init(%rip )
176
187
/* setup stack */
177
188
mov %gs :tcsls_tos,%rsp /* initially, RSP is not set to the correct value */
178
189
/* here. This is fixed below under "adjust stack". */
You can’t perform that action at this time.
0 commit comments