OSDN Git Service

gcc/
authorbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 20 Dec 2011 16:46:22 +0000 (16:46 +0000)
committerbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 20 Dec 2011 16:46:22 +0000 (16:46 +0000)
commit941a2396e3d2af2d96a31e670b913c4331bee05b
treed0a86f6d0ca1212b434d7c1b46b1acf3cc04c3b6
parenta3248fc4f63a569631daa30af5755c26cf0cdc93
gcc/
* expr.c (store_field): Avoid a direct store if the mode is larger
than the size of the bit field.
* stor-layout.c (layout_decl): If flag_strict_volatile_bitfields,
treat non-volatile bit fields like volatile ones.
* toplev.c (process_options): Disallow combination of
-fstrict-volatile-bitfields and ABI versions less than 2.
* config/arm/arm.c (arm_option_override): Don't enable
flag_strict_volatile_bitfields if the ABI version is less than 2.
* config/h8300/h8300.c (h8300_option_override): Likewise.
* config/rx/rx.c (rx_option_override): Likewise.
* config/m32c/m32c.c (m32c_option_override): Likewise.
* config/sh/sh.c (sh_option_override): Likewise.

gcc/testsuite/
* gcc.target/arm/volatile-bitfields-4.c: New test.
* c-c++-common/abi-bf.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182545 138bc75d-0d04-0410-961f-82ee72b054a4
12 files changed:
gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/h8300/h8300.c
gcc/config/m32c/m32c.c
gcc/config/rx/rx.c
gcc/config/sh/sh.c
gcc/expr.c
gcc/stor-layout.c
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/abi-bf.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/volatile-bitfields-4.c [new file with mode: 0644]
gcc/toplev.c