Date: Thu, 4 Dec 2003 17:36:44 -0800 (PST) From: Peter Wemm <peter@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/lib/libc/amd64/gen makecontext.c Message-ID: <200312050136.hB51aibO068399@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
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. This was one of the things that broke on libkse with apps that use floating point/varargs/etc. Approved by: re (scottl) Revision Changes Path 1.2 +6 -2 src/lib/libc/amd64/gen/makecontext.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200312050136.hB51aibO068399>