Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Dec 2000 16:04:13 -0700
From:      Warner Losh <imp@village.org>
To:        Marc Tardif <intmktg@CAM.ORG>
Cc:        Alfred Perlstein <bright@wintelcom.net>, freebsd-hackers@FreeBSD.ORG
Subject:   Re: syscall assembly 
Message-ID:  <200012132304.QAA42447@harmony.village.org>
In-Reply-To: Your message of "Wed, 13 Dec 2000 17:12:40 EST." <Pine.LNX.4.10.10012131707550.12495-100000@Gloria.CAM.ORG> 
References:  <Pine.LNX.4.10.10012131707550.12495-100000@Gloria.CAM.ORG>  

next in thread | previous in thread | raw e-mail | index | archive | help
In message <Pine.LNX.4.10.10012131707550.12495-100000@Gloria.CAM.ORG> Marc Tardif 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.

Warner


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?200012132304.QAA42447>