Messages in this thread |  | | Date | Thu, 13 Feb 1997 10:37:07 +0100 (MET) | From | Bernd Schmidt <> | Subject | Re: CONUNDRUM. |
| |
On Thu, 13 Feb 1997, Clive Messer wrote:
> On Thu, 13 Feb 1997, Systemkennung Linux wrote: > > > > > First guess Alexey. Linux crt0.s doesnt align the stack on an eight byte > > > > boundary. > > > > > > Any reason why it shouldn't? Could this simple thing case a >10% > > > performance drop for some applications? If so why wasn't this noticed and > > > fixed long ago? > > > > Alan's first guess makes sense in that the Fortran people have been > > complaining about exactly that problem for quite some time. > > I just noticed in HJ's libc Changelog, 5.4.21-5.4.22 ....... > > * sysdeps/linux/i386/crt/crt0.S: align stack to 8 bytes.
... which won't help you because the code that GCC generates will happily break the alignment on all possible occasions (function calls, function entry)
The latest pgcc snapshot has an option "-mstack-align-double" which tries to keep the stack alignment at 64 bits throughout the whole program. There are some problems with that option yet, I think they'll be sorted out in the next version.
Bernd
|  |