This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch 4/4] -fstrict-volatile-bitfields cleanup v3: remove from defaults on all targets
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Richard Earnshaw <rearnsha at arm dot com>
- Cc: Bernd Edlinger <bernd dot edlinger at hotmail dot de>, Richard Biener <richard dot guenther at gmail dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "sandra at codesourcery dot com" <sandra at codesourcery dot com>, "dj at redhat dot com" <dj at redhat dot com>
- Date: Mon, 2 Sep 2013 16:05:02 +0000
- Subject: Re: [patch 4/4] -fstrict-volatile-bitfields cleanup v3: remove from defaults on all targets
- Authentication-results: sourceware.org; auth=none
- References: <DUB122-W35943644A5D83EC2CAFDB7E4370 at phx dot gbl> <52245D01 dot 1030702 at arm dot com>
On Mon, 2 Sep 2013, Richard Earnshaw wrote:
> On 01/09/13 14:10, Bernd Edlinger wrote:
> > IMHO the AAPCS forbids packed structures. Therefore we need not
> > interfere with the C++ memory model if we have unaligned data.
>
> The AAPCS neither forbids nor requires packed structures. They're a GNU
> extension and as such not part of standard C++. Thus the semantics of
> such an operation are irrelavant to the AAPCS: you get to chose what the
> behaviour is in this case...
The trouble is that AAPCS semantics are incompatible with the default GNU
semantics for non-packed structures as well - AAPCS
strict-volatile-bitfields is only compatible with --param
allow-store-data-races=1, which is not the default for any language
variant accepted by GCC (and I say that the default language semantics
here should not depend on the target architecture).
--
Joseph S. Myers
joseph@codesourcery.com