Date: Wed, 13 Dec 2000 16:09:40 -0700 From: Drew Eckhardt <drew@PoohSticks.ORG> To: freebsd-hackers@FreeBSD.ORG Subject: Re: syscall assembly Message-ID: <200012132309.eBDN9eh29153@chopper.Poohsticks.ORG> In-Reply-To: Your message of "Wed, 13 Dec 2000 16:04:13 MST." <200012132304.QAA42447@harmony.village.org>
next in thread | previous in thread | raw e-mail | index | archive | help
In message <200012132304.QAA42447@harmony.village.org>, imp@village.org writes: >In message <Pine.LNX.4.10.10012131707550.12495-100000@Gloria.CAM.ORG> Marc Tar >dif writes: >: So why is %esp displaced by 16 bytes when only 8 bytes >: are necessary (4 for $0 and 4 for $.LC0)? And couldn't >: the compiler use a single instruction such as >: subl $16,%esp or addl $-16,%esp? Are two instructions >: used for pipelining purposes, where subl is synchro- >: nised with the first pushl and addl with the second >: pushl? > >gcc tries to align stack to 16 byte boundaries as a speed >optiminzation. Why it doesn't do this in one instruction is beyond >me. Kocking 16 bytes off the stack pointer won't put it any closer to a 16 byte boundary. -- <a href="http://www.poohsticks.org/drew/">Home Page</a> For those who do, no explanation is necessary. For those who don't, no explanation is possible. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200012132309.eBDN9eh29153>