https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79209

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
             Target|                            |aarch64
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2017-01-24
          Component|c++                         |target
     Ever confirmed|0                           |1

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
The question is whether a -fstrict-volatile-bitfield volatile bitfield isn't
ill-formed if not properly aligned.  At least for architectures with strict
alignment requirements - aarch has

/* Define this macro to be non-zero if instructions will fail to work
   if given data not on the nominal alignment.  */
#define STRICT_ALIGNMENT                TARGET_STRICT_ALIGN

and -mstrict-align (not sure about the default).  Note this may be very well
a fault of the aarch64 insv/extv patterns (or we may not use those with
-fstrict-volatile-bitfields or their use need to be massaged).

-fstrict-volatile-bitfields should guarantee the access is in SImode in this
case (AFAIR).

Reply via email to