crt: Add missing members in setjmp for x86_64.

This add MxCsr and FpCsr members in _JUMP_BUFFER sturcture.

Signed-off-by: Biswapriyo Nath <nathbappai@gmail.com>
Signed-off-by: Liu Hao <lh_mouse@126.com>
diff --git a/mingw-w64-crt/misc/longjmp.S b/mingw-w64-crt/misc/longjmp.S
index a1318dc..7026ed5 100644
--- a/mingw-w64-crt/misc/longjmp.S
+++ b/mingw-w64-crt/misc/longjmp.S
@@ -30,6 +30,9 @@
         movq    0x38(%rcx),%r13      /* jmp_buf->R13 */
         movq    0x40(%rcx),%r14      /* jmp_buf->R14 */
         movq    0x48(%rcx),%r15      /* jmp_buf->R15 */
+        ldmxcsr 0x58(%rcx)           /* jmp_buf->MxCsr */
+        fnclex
+        fldcw   0x5c(%rcx)           /* jmp_buf->FpCsr */
         movdqa  0x60(%rcx),%xmm6     /* jmp_buf->Xmm6 */
         movdqa  0x70(%rcx),%xmm7     /* jmp_buf->Xmm7 */
         movdqa  0x80(%rcx),%xmm8     /* jmp_buf->Xmm8 */
diff --git a/mingw-w64-crt/misc/setjmp.S b/mingw-w64-crt/misc/setjmp.S
index b2058e9..0c06b86 100644
--- a/mingw-w64-crt/misc/setjmp.S
+++ b/mingw-w64-crt/misc/setjmp.S
@@ -50,6 +50,8 @@
         movq    %r15,0x48(%rcx)      /* jmp_buf->R15 */
         movq    (%rsp),%rax
         movq    %rax,0x50(%rcx)      /* jmp_buf->Rip */
+        stmxcsr 0x58(%rcx)           /* jmp_buf->MxCsr */
+        fnstcw  0x5c(%rcx)           /* jmp_buf->FpCsr */
         movdqa  %xmm6,0x60(%rcx)     /* jmp_buf->Xmm6 */
         movdqa  %xmm7,0x70(%rcx)     /* jmp_buf->Xmm7 */
         movdqa  %xmm8,0x80(%rcx)     /* jmp_buf->Xmm8 */
diff --git a/mingw-w64-headers/crt/setjmp.h b/mingw-w64-headers/crt/setjmp.h
index eb772a3..4b69efa 100644
--- a/mingw-w64-headers/crt/setjmp.h
+++ b/mingw-w64-headers/crt/setjmp.h
@@ -128,7 +128,9 @@
     __MINGW_EXTENSION unsigned __int64 R14;
     __MINGW_EXTENSION unsigned __int64 R15;
     __MINGW_EXTENSION unsigned __int64 Rip;
-    __MINGW_EXTENSION unsigned __int64 Spare;
+    unsigned long MxCsr;
+    unsigned short FpCsr;
+    unsigned short Spare;
     SETJMP_FLOAT128 Xmm6;
     SETJMP_FLOAT128 Xmm7;
     SETJMP_FLOAT128 Xmm8;