diff options
Diffstat (limited to 'nptl/descr.h')
-rw-r--r-- | nptl/descr.h | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/nptl/descr.h b/nptl/descr.h index 28b7afa..efb25c7 100644 --- a/nptl/descr.h +++ b/nptl/descr.h @@ -63,18 +63,19 @@ information. */ struct pthread_unwind_buf { + struct + { + __jmp_buf jmp_buf; + int mask_was_saved; + } cancel_jmp_buf[1]; + union { /* This is the placeholder of the public version. */ - void *pad[16]; + void *pad[4]; struct { -#ifdef HAVE_FORCED_UNWIND - /* First the machine-specific unwind info. */ - struct _Unwind_Exception exc; -#endif - /* Pointer to the previous cleanup buffer. */ __pthread_unwind_buf_t *prev; @@ -87,12 +88,6 @@ struct pthread_unwind_buf int canceltype; } data; } priv; - - struct - { - __jmp_buf jmp_buf; - int mask_was_saved; - } cancel_jmp_buf[1]; }; @@ -226,6 +221,11 @@ struct pthread /* Next descriptor with a pending event. */ struct pthread *nextevent; +#ifdef HAVE_FORCED_UNWIND + /* Machine-specific unwind info. */ + struct _Unwind_Exception exc; +#endif + /* If nonzero pointer to area allocated for the stack and its size. */ void *stackblock; |