On x86 currently the alignments of double and long long are linked:
they are either 4 or 8 depending on whether -malign-double is set.
This follows the documentation of -malign-double.  But it's wrong for
what we want the Darwin ABI to be:  the default should be that double
is 4 bytes and long long is 8 bytes.

So I can do that, but what should -malign-double do?
- Control double but not long long; add -malign-long-long (at least if
   somebody asks for it; probably it wouldn't be used)
- Have flags work as now: -malign-double makes both 8, -mno-align-double makes both 4. Problem with that is the default is neither of these, and this doesn't fit neatly into gcc's model of two-valued flags; it's also a bit
  tricky to implement for the same reason.
- something else?

thanks.

Reply via email to