diff options
author | Christopher Faylor <me@cgf.cx> | 2004-09-15 03:44:50 +0400 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2004-09-15 03:44:50 +0400 |
commit | a9f36d288c287f691f9a21fb9d747f45673236cf (patch) | |
tree | 98599bcc2b5a69a2bca870b1aab5b8fe181b2e7e /winsup/cygwin/cygtls.h | |
parent | 98650d2fa2d2443ede83cc9f5d21d39e8078e60b (diff) |
* cygtls.h: Add alignment kludge to fix disparity between compilers.
* tlsoffsets.h: Regenerate.
* fork.cc (slow_pid_reuse): Use define to control number of pids held to
prevent pid reuse.
Diffstat (limited to 'winsup/cygwin/cygtls.h')
-rw-r--r-- | winsup/cygwin/cygtls.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/winsup/cygwin/cygtls.h b/winsup/cygwin/cygtls.h index 997518654..2ce91dbc8 100644 --- a/winsup/cygwin/cygtls.h +++ b/winsup/cygwin/cygtls.h @@ -98,6 +98,8 @@ typedef struct struct_waitq /* Changes to the below structure may require acompanying changes to the very simple parser in the perl script 'gentls_offsets' (<<-- start parsing here). + The union in this structure is used to force alignment between the version + of the compiler used to generate tlsoffsets.h and the cygwin cross compiler. */ typedef __uint32_t __stack_t; @@ -117,7 +119,11 @@ struct _cygtls unsigned threadkill; siginfo_t infodata; struct pthread *tid; - struct _reent local_clib; + union + { + struct _reent local_clib; + char __dontuse[8 * ((sizeof(struct _reent) + 4) / 8)]; + }; struct _local_storage locals; waitq wq; struct _cygtls *prev, *next; |