This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: ix86 `double' alignment (was Re: egcs-1.1 release schedule)
- To: john at feith dot com (John Wehle)
- Subject: Re: ix86 `double' alignment (was Re: egcs-1.1 release schedule)
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Tue, 23 Jun 1998 22:20:07 -0600
- cc: d dot love at dl dot ac dot uk, egcs at cygnus dot com, burley at gnu dot org
- Reply-To: law at cygnus dot com
In message <199806231723.NAA12151@jwlab.FEITH.COM>you write:
> > Instead we must make sure that we always allocate stacks in 8 byte
> > hunks in the prologue *and* that we push an extra dummy word on the stack
> > when performing function calls where the arg list + return pointer
> > are not a multiple of 8 bytes in size.
>
> I'm seeing a lot of references to double and aligning on 8 byte boundaries.
> As long as we are looking at this we may want to view it as a more general
> problem. I.e. Intel recommends that
>
> doubles be aligned on 8 byte boundarys
>
> long doubles be aligned on 16 byte boundarys
>
> objects >= 32 bytes in size be aligned on 32 byte boundarys
>
> I believe that they all have similar issues with regards to encouraging
> gcc to align them for optimal performance on the stack so it's possible
> that they may all be "solved" with the same solution in the back end.
>
> Just something to think about. :-)
Well, I suspect to make this work we are going to have to make some
changes into the generic code (as well as the x86 target files). So
presumably we'd be able to re-use some of the generic stuff again for
any other targets where it would be useful.
jeff