This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Miscellaneous testsuitsuite failures under hpux 10.20
- To: dave at hiauly1 dot hia dot nrc dot ca (John David Anglin)
- Subject: Re: Miscellaneous testsuitsuite failures under hpux 10.20
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Date: Fri, 23 Jun 2000 17:14:53 -0400 (EDT)
- Cc: gcc-bugs at gcc dot gnu dot org
>
> The problem is that store_split_bit_field is called with align=0, resulting
> in unit=0. So, how did align get to be 0?
>
> The problem seems to be in the code generated for stor-layout.c line 862:
>
> DECL_OFFSET_ALIGN (field) = rli->offset_align;
Ignore what said about a missing instruction. It is there.
The problem is simple. The fault is caused by this code:
struct foo {
void *entry[40];
} __attribute__ ((aligned(32)));
This gives a value of 256 for rli->offset_align. The bit field for
off_align in field is 8 bits. Thus, the rli alignment requirement exceeds
the maximum value for DECL_OFFSET_ALIGN (field).
What to do?
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)