DATA_ALIGNMENT vs. DECL_USER_ALIGNMENT

Richard Kenner kenner@vlsi1.ultra.nyu.edu
Fri Apr 18 01:16:00 GMT 2003


    The fact of the matter is that this field is being overloaded
    for two meanings:

No, it's being overloaded for two *other* meanings:

(1) The user really did set the alignment of the object.
(2) The user really did set the alignment of the object's *type*.

      The user REALLY DID set the alignment, and expects it to
      be honored exactly as stated

Yes, but there's a fundamental ambiguity here.  If the user says he
wants an object aligned at a 4-byte boundary, is it an error to align
it to a page boundary?  Is there some requirement that we ensure that
every such object is at an address that has *exactly* the number of
low-order zeros as requested by the alignment and no more?

What, precisely, does "honored" mean here?

I'll have more to say about this, but tomorrow morning when I'm fresher.



More information about the Gcc-patches mailing list