diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2004-04-30 13:27:27 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2004-04-30 13:27:27 +0000 |
commit | 72f3756e0705fe039b9005a857c23739f6944521 (patch) | |
tree | fdb9dabed82f9e16ba420fc872e66e133c509fa5 /winsup/cygwin/init.cc | |
parent | 6194cf4a4b63c4c7bf8b2ee12f1d9b033de22171 (diff) | |
download | cygnal-72f3756e0705fe039b9005a857c23739f6944521.tar.gz cygnal-72f3756e0705fe039b9005a857c23739f6944521.tar.bz2 cygnal-72f3756e0705fe039b9005a857c23739f6944521.zip |
* init.cc (threadfunc_fe): Hack to make thread stacks always 16
byte aligned.
Diffstat (limited to 'winsup/cygwin/init.cc')
-rw-r--r-- | winsup/cygwin/init.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/winsup/cygwin/init.cc b/winsup/cygwin/init.cc index af8c0ea39..9ba585ecb 100644 --- a/winsup/cygwin/init.cc +++ b/winsup/cygwin/init.cc @@ -27,6 +27,8 @@ HANDLE sync_startup; static void WINAPI threadfunc_fe (VOID *arg) { + (void)__builtin_return_address(1); + asm volatile ("andl $-16,%%esp" ::: "%esp"); _cygtls::call ((DWORD (*) (void *, void *)) (((char **) _tlsbase)[OLDFUNC_OFFSET]), arg); } |