summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/crt0.c
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2004-05-04 14:46:25 +0000
committerCorinna Vinschen <corinna@vinschen.de>2004-05-04 14:46:25 +0000
commit423ea473f4898a97193344f13482ece1d8c31fe8 (patch)
treefd61e917b2b88bf53ae749868dee25eae17511c9 /winsup/cygwin/crt0.c
parentad7ba32b2d28af951447f332284879d98237bbe3 (diff)
downloadcygnal-423ea473f4898a97193344f13482ece1d8c31fe8.tar.gz
cygnal-423ea473f4898a97193344f13482ece1d8c31fe8.tar.bz2
cygnal-423ea473f4898a97193344f13482ece1d8c31fe8.zip
* crt0.o (mainCRTStartup): 16 byte align stack for main function.
Diffstat (limited to 'winsup/cygwin/crt0.c')
-rw-r--r--winsup/cygwin/crt0.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/winsup/cygwin/crt0.c b/winsup/cygwin/crt0.c
index 52ba7bd34..48cafd5e1 100644
--- a/winsup/cygwin/crt0.c
+++ b/winsup/cygwin/crt0.c
@@ -36,6 +36,8 @@ void
mainCRTStartup ()
{
#ifdef __i386__
+ (void)__builtin_return_address(1);
+ asm volatile ("andl $-16,%%esp" ::: "%esp");
if (__cygwin_crt0_bp)
asm volatile ("int3");