On Mon, Feb 21, 2011 at 03:58:32PM -0800, Yuri wrote:
> On 02/21/2011 15:38, Joerg Sonnenberger wrote:
> >That's a major difference. The Linux people decided a while ago that
> >stack alignment should be 16 Byte. GCC effectively forces that down
> >everyone's throat because until at least GCC 4.2 or 4.3, it can't
> >correctly realign the stack and just fails miserable. I would be
> >surprised if it was a conscious decision for the Solaris either.
> >   
> 
> I filed gcc PR asking gcc to revert their behavior back to prescribed by 
> documentation: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47842

The i386 ABI was de-facto changed to require 16-byte stack alignment.
The change is reasonable, both due to modern CPU cache behaviour,
and to not put a block on the usage of the new CPU features (SSE
instructions sets).

There was a combination of bugs in gcc/glibc/bsd libc etc that made
this not a reliable feature. I think there is no point of moving back
to 4-byte alignment.

Attachment: pgptQV11S5x0S.pgp
Description: PGP signature

Reply via email to