Date: Thu, 4 Dec 2003 20:46:04 -0500 (EST) From: Daniel Eischen <eischen@vigrid.com> To: Peter Wemm <peter@FreeBSD.org> Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/lib/libc/amd64/gen makecontext.c Message-ID: <Pine.GSO.4.10.10312042042001.1477-100000@pcnet5.pcnet.com> In-Reply-To: <200312050136.hB51aibO068399@repoman.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 4 Dec 2003, Peter Wemm wrote: > peter 2003/12/04 17:36:44 PST > > FreeBSD src repository > > Modified files: > lib/libc/amd64/gen makecontext.c > Log: > "Fix" makecontext() so that the C code begins execution with its > ABI-required stack alignment. C code expects that the push of the > return address disturbed the 16 byte alignment and it will take corrective > measures to fix it before making another call. Of course, if its wrong > to start with, then all hell breaks loose. Essentially we "fix" this > by making the stack alignment odd to start with. Hey, you didn't include this little bit of knowledge in your amd64 "notes" that you sent me ;-) > This was one of the things that broke on libkse with apps that use > floating point/varargs/etc. I guess we never hit this problem with the tests (ACE) that we ran on sledge...
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.10.10312042042001.1477-100000>