11 #pragma pack(push,_CRT_PACKING) 17 #if (defined(_X86_) && !defined(__x86_64)) 22 typedef struct __JUMP_BUFFER {
30 unsigned long TryLevel;
32 unsigned long UnwindFunc;
33 unsigned long UnwindData[6];
36 #elif defined(__ia64__) 44 typedef SETJMP_FLOAT128 _JBTYPE;
46 typedef struct __JUMP_BUFFER {
48 unsigned long iAReserved[6];
51 unsigned long TryLevel;
53 unsigned long UnwindFunc;
55 unsigned long UnwindData[6];
57 SETJMP_FLOAT128 FltS0;
58 SETJMP_FLOAT128 FltS1;
59 SETJMP_FLOAT128 FltS2;
60 SETJMP_FLOAT128 FltS3;
61 SETJMP_FLOAT128 FltS4;
62 SETJMP_FLOAT128 FltS5;
63 SETJMP_FLOAT128 FltS6;
64 SETJMP_FLOAT128 FltS7;
65 SETJMP_FLOAT128 FltS8;
66 SETJMP_FLOAT128 FltS9;
67 SETJMP_FLOAT128 FltS10;
68 SETJMP_FLOAT128 FltS11;
69 SETJMP_FLOAT128 FltS12;
70 SETJMP_FLOAT128 FltS13;
71 SETJMP_FLOAT128 FltS14;
72 SETJMP_FLOAT128 FltS15;
73 SETJMP_FLOAT128 FltS16;
74 SETJMP_FLOAT128 FltS17;
75 SETJMP_FLOAT128 FltS18;
76 SETJMP_FLOAT128 FltS19;
98 #elif defined(__x86_64) 105 typedef SETJMP_FLOAT128 _JBTYPE;
107 typedef struct _JUMP_BUFFER {
120 SETJMP_FLOAT128 Xmm6;
121 SETJMP_FLOAT128 Xmm7;
122 SETJMP_FLOAT128 Xmm8;
123 SETJMP_FLOAT128 Xmm9;
124 SETJMP_FLOAT128 Xmm10;
125 SETJMP_FLOAT128 Xmm11;
126 SETJMP_FLOAT128 Xmm12;
127 SETJMP_FLOAT128 Xmm13;
128 SETJMP_FLOAT128 Xmm14;
129 SETJMP_FLOAT128 Xmm15;
132 #elif defined(_M_ARM) 137 typedef struct _JUMP_BUFFER {
150 unsigned long long D[8];
155 #error Define Setjmp for this architecture! 159 #ifndef _JMP_BUF_DEFINED 161 #define _JMP_BUF_DEFINED 164 #ifdef USE_MINGW_SETJMP_TWO_ARGS 165 #ifndef _INC_SETJMPEX 166 #if defined(__x86_64) 167 # define mingw_getsp() \ 168 ({ void* value; __asm__ __volatile__("movq %%rsp, %[value]" : [value] "=r" (value)); value; }) 170 # define mingw_getsp() \ 171 ({ void* value; __asm__ __volatile__("movl %%esp, %[value]" : [value] "=r" (value)); value; }) 173 #define setjmp(BUF) _setjmp((BUF),mingw_getsp()) 177 #define setjmp(BUF) _setjmpex((BUF),mingw_getsp()) 178 #define setjmpex(BUF) _setjmpex((BUF),mingw_getsp()) 182 #ifndef _INC_SETJMPEX 183 #define setjmp _setjmp
__declspec(noreturn) __MINGW_NOTHROW void __cdecl ms_longjmp(jmp_buf _Buf
#define __MINGW_EXTENSION
int longjmp(jmp_buf buf, int retval)
_Must_inspect_result_ _In_ CONST FLT_REGISTRATION * Registration
_In_opt_ PVOID _Out_ PLARGE_INTEGER Cookie
#define R4(v, w, x, y, z, i)