* cygtls.cc (_cygtls::call): Call call2 using _my_tls.

(_cygtls::init_exception_handler): Always replace existing exception handler
with cygwin exception handler.
* cygtls.h (_cygtls::call2): Remove static designation.
* dcrto.cc (dll_crt0_1): Define in a way that allows calling via _cygtls::call.
(_initialize_main_tls): Delete.
(_dll_crt0): Call dll_crt0_1 via cygtls::call.  Set _main_tls here.
* external.cc (cygwin_internal): Implement CW_CYGTLS_PADSIZE.
* include/sys/cygwin.h (CW_CYGTLS_PADSIZE): Define.
* tlsoffsets.h: Regenerate.
This commit is contained in:
Christopher Faylor
2006-05-25 02:33:13 +00:00
parent 99fc5e10f3
commit 38229bcdcf
7 changed files with 104 additions and 112 deletions

View File

@ -86,7 +86,8 @@ typedef enum
CW_ARGV,
CW_ENVP,
CW_DEBUG_SELF,
CW_SYNC_WINENV
CW_SYNC_WINENV,
CW_CYGTLS_PADSIZE
} cygwin_getinfo_types;
#define CW_NEXTPID 0x80000000 /* or with pid to get next one */