[PATCH] Fix PR54733 Optimize endian independent load/store
Andreas Schwab
schwab@linux-m68k.org
Tue May 27 16:45:00 GMT 2014
"Thomas Preud'homme" <thomas.preudhomme@arm.com> writes:
> diff --git a/gcc/testsuite/gcc.c-torture/execute/bswap-2.c b/gcc/testsuite/gcc.c-torture/execute/bswap-2.c
> index 38f18fd..4368d83 100644
> --- a/gcc/testsuite/gcc.c-torture/execute/bswap-2.c
> +++ b/gcc/testsuite/gcc.c-torture/execute/bswap-2.c
> @@ -6,8 +6,11 @@ typedef __UINT32_TYPE__ unsigned;
>
> struct bitfield {
> unsigned char f0:7;
> + unsigned char :0;
> unsigned char f1:7;
> + unsigned char :0;
> unsigned char f2:7;
> + unsigned char :0;
> unsigned char f3:7;
> };
This adds a full byte of padding between each bitfield. If you want a
single padding bit you should use :1, but you also need to update the
test to check for 0x44434241 (0x88868482 is impossible, since that
requires at least 8 bits per bitfield).
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
More information about the Gcc-patches
mailing list