x86 alignment stuff

Jeffrey A Law law@cygnus.com
Sun Feb 22 18:48:00 GMT 1998


  In message < nrra4vp32s.fsf_-_@rtl.cygnus.com >you write:
  > >Does anybody know why we don't items in the static store on the
  > >x86?  Seems to me we can align stuff in the static store via
  > >DATA_ALIGNMENT and friends without breaking ABI compatability.
  >  
  > The x86 ABI alignment is: char (1), short (2), int/long/enum (4),
  > *type (4), float (4), double (4), long double (4).
  > double and long double are of course the interesting ones.
Those specify minimum alignments.  What I'm looking for is any
reason why we could not provide more alignment for some items in the
static store.  Seems to me like we could provide 8 byte alignment
for doubles, long doubles and arrays which have doubles or long
doubles as elements.

For at least the Fortran folks this would get most of their data
aligned on a suitable boundary to improve performance.

Note that we'd also want to look into aligning doubles and long
doubles in the constant pool!

Anyone want a nice little project to improve x86 performance? :-)

jeff



More information about the Gcc mailing list