[Bug middle-end/23623] volatile keyword changes bitfield access size from 32bit to 8bit
edlinger at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Dec 11 16:50:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23623
--- Comment #18 from edlinger at gcc dot gnu.org ---
Author: edlinger
Date: Wed Dec 11 16:50:05 2013
New Revision: 205896
URL: http://gcc.gnu.org/viewcvs?rev=205896&root=gcc&view=rev
Log:
2013-12-11 Sandra Loosemore <sandra@codesourcery.com>
PR middle-end/23623
PR middle-end/48784
PR middle-end/56341
PR middle-end/56997
gcc/
* expmed.c (strict_volatile_bitfield_p): New function.
(store_bit_field_1): Don't special-case strict volatile
bitfields here.
(store_bit_field): Handle strict volatile bitfields here instead.
(store_fixed_bit_field): Don't special-case strict volatile
bitfields here.
(extract_bit_field_1): Don't special-case strict volatile
bitfields here.
(extract_bit_field): Handle strict volatile bitfields here instead.
(extract_fixed_bit_field): Don't special-case strict volatile
bitfields here. Simplify surrounding code to resemble that in
store_fixed_bit_field.
* doc/invoke.texi (Code Gen Options): Update
-fstrict-volatile-bitfields description.
gcc/testsuite/
* gcc.dg/pr23623.c: New test.
* gcc.dg/pr48784-1.c: New test.
* gcc.dg/pr48784-2.c: New test.
* gcc.dg/pr56341-1.c: New test.
* gcc.dg/pr56341-2.c: New test.
* gcc.dg/pr56997-1.c: New test.
* gcc.dg/pr56997-2.c: New test.
* gcc.dg/pr56997-3.c: New test.
Added:
trunk/gcc/testsuite/gcc.dg/pr23623.c
trunk/gcc/testsuite/gcc.dg/pr48784-1.c
trunk/gcc/testsuite/gcc.dg/pr48784-2.c
trunk/gcc/testsuite/gcc.dg/pr56341-1.c
trunk/gcc/testsuite/gcc.dg/pr56341-2.c
trunk/gcc/testsuite/gcc.dg/pr56997-1.c
trunk/gcc/testsuite/gcc.dg/pr56997-2.c
trunk/gcc/testsuite/gcc.dg/pr56997-3.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/doc/invoke.texi
trunk/gcc/expmed.c
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list