From a9f36d288c287f691f9a21fb9d747f45673236cf Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Tue, 14 Sep 2004 23:44:50 +0000 Subject: * 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. --- winsup/cygwin/cygtls.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'winsup/cygwin/cygtls.h') 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; -- cgit v1.2.3