On 08/26/2013 01:16 AM, Bernd Edlinger wrote:
PING!
This issue is really important. It does not only affect bitfields but
all kinds of packed structures.
Starting from gcc 4.6.0 there is not a single released version that
handles the packed structures correctly.
So could some one please approve Sandra's patch now?
Indeed. I understand that some people are still unhappy about changing
the intended behavior on targets where -fstrict-volatile-bitfields is
currently the default, like ARM. But right now all that default means
is that we are generating wrong code by default for those targets for
volatile bitfield and packed structure accesses -- and by "wrong code",
that means misaligned memory accesses or losing bits of the field, not
just code that doesn't conform to either the C++ memory model or AAPCS.
Moreover, -fstrict-volatile-bitfields currently doesn't behave as
documented on any target, whether or not it is the default.
-Sandra