-fstrict-volatile-bitfields fixes

Mark Mitchell mark@codesourcery.com
Sun Dec 5 18:38:00 GMT 2010


On 12/2/2010 6:35 PM, DJ Delorie wrote:

> I see no reason to flag RX or M32C with "abi_version_at_least(2)"
> since those ports are newer than abi version 2.

In that case, the solution for those ports is to refuse -fabi-version=2
(or less); just issue an error message if that option is used.

> For sh, not conforming to the volatile bitfields' mode causes a
> hardware problem.  If specifying the ABI changes the silicon to no
> longer have this problem, I suppose we could check for it.  Otherwise,
> sh shouldn't check the ABI either.

Similarly, here -- if the SH hardware can't work with the old ABI then
we should probably just error out.

> Also, why is the C++ ABI version determining the behavior of non-C++
> programs?

That's a valid question -- but after we make it an error to try to use
an old ABI version, this impact will go away -- except on ARM, and only
on ARM if the ABI version is explicitly specified, which would be very
odd if not compiling C++.  (I don't even know if we accept the ABI
option when compiling C.)

-- 
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713



More information about the Gcc-patches mailing list