This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: IA64 bootstrap problem for Ada
- From: "Zack Weinberg" <zack at codesourcery dot com>
- To: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- Cc: gcc at gcc dot gnu dot org
- Date: Thu, 30 Oct 2003 13:09:58 -0800
- Subject: Re: IA64 bootstrap problem for Ada
- References: <10310302050.AA03112@vlsi1.ultra.nyu.edu>
kenner@vlsi1.ultra.nyu.edu (Richard Kenner) writes:
> This is a somewhat new thing. It isn't inconsistent. It means the
> mode has 96 bits of value but takes up 16*BITS_PER_UNIT (128) bits of
> storage. Think TYPE_SIZE versus TYPE_PRECISION. BImode has been like
> this since its invention. XFmode being like this is new. Other modes
> are likely to take advantage of this in the future.
>
> But you didn't answer my second (and more important) question: what
> should TYPE_SIZE, TYPE_SIZE_UNIT, and TYPE_ALIGN be for such a thing?
Sorry, I missed the second question.
For most purposes these modes need to be regarded as having their full
storage size. Thus, TYPE_SIZE, TYPE_SIZE_UNIT, and TYPE_ALIGN should
be consistent with GET_MODE_SIZE and GET_MODE_ALIGNMENT, not with
GET_MODE_BITSIZE.
It is especially important that GET_MODE_ALIGNMENT be honored, because
the IA64 ABIs require us to override the normal computation of
alignment.
zw