This is the mail archive of the
mailing list for the GCC project.
Re: [patch 4/4] -fstrict-volatile-bitfields cleanup v3: remove from defaults on all targets
- From: DJ Delorie <dj at redhat dot com>
- To: Bernd Edlinger <bernd dot edlinger at hotmail dot de>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Wed, 4 Sep 2013 09:29:02 -0400
- 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>,<Pine dot LNX dot 4 dot 64 dot 1309021600390 dot 17654 at digraph dot polyomino dot org dot uk>,<CAFiYyc0he723Zn7jhpXxZCuhL+=KkmDU5FWHvjDpC4juJcsvvg at mail dot gmail dot com>,<DUB122-W24F7F5549EDAC48D8889B0E4310 at phx dot gbl>,<Pine dot LNX dot 4 dot 64 dot 1309032118460 dot 27960 at digraph dot polyomino dot org dot uk> <DUB122-W47E9398116D13B0436C57EE4320 at phx dot gbl>
> I fully agree with you, the current default state of
> -fstrict-volatile-bitfields should be disabled for all targets.
Please don't do that until gcc produces code that does the same
things. Most of my targets rely on gcc not doing the old behavior, to
generate correct code.
> For portability of application code, the default should be always
> off, unless specifically requested.
The vendors of my targets specificially requested it be the default.
> Even driver code rarely uses bit-fields for register access,
People keep saying this, and people are wrong. For the targets I
support, they *all* use bitfields for *all* the peripherals, because
that's what's in the headers the vendor ships with each chip.