This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/51200] Wrong code sequence to store restrict volatile bitfield


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51200

--- Comment #6 from jye2 at gcc dot gnu.org 2011-12-27 02:27:01 UTC ---
Author: jye2
Date: Tue Dec 27 02:26:57 2011
New Revision: 182691

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=182691
Log:
2011-12-26  Joey Ye  <joey.ye@arm.com>
    Revert original fix and backport r182545, 182649 from mainline

    Revert:
    2011-11-18  Joey Ye  <joey.ye@arm.com>

    Port Bernd's fix to volatile bitfields
    2010-12-02  Bernd Schmidt  <bernds_cb1@t-online.de>

    * 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.

    Backport:
    2011-12-20  Bernd Schmidt  <bernds@codesourcery.com>

    PR middle-end/51200
    * 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.

    2011-12-22  Joey Ye  <joey.ye@arm.com>

    * toplev.c (process_options): Fix typo.

testsute
2011-12-26  Joey Ye  <joey.ye@arm.com>

    Revert original fix and backport r182545, r182649 from mainline

    Revert:
    2011-11-23  Joey Ye  <joey.ye@arm.com>

    Apply restrict volatile bitfield test case.
    2011-11-23  Joey Ye  <joey.ye@arm.com>
    * g++.dg/abi/bitfield12.C: Add option -fno-strict-volatile-bitfields.

    Backport:
    2011-12-20  Bernd Schmidt  <bernds@codesourcery.com>

    PR middle-end/51200
    * gcc.target/arm/volatile-bitfields-4.c: New test.
    * c-c++-common/abi-bf.c: New test.

    2011-12-26  Joey Ye  <joey.ye@arm.com>

    PR middle-end/51200
    * gcc.dg/volatile-bitfields-2.c: New test.


Added:
    branches/ARM/embedded-4_6-branch/gcc/testsuite/c-c++-common/abi-bf.c
   
branches/ARM/embedded-4_6-branch/gcc/testsuite/gcc.dg/volatile-bitfields-2.c
   
branches/ARM/embedded-4_6-branch/gcc/testsuite/gcc.target/arm/volatile-bitfields-4.c
Modified:
    branches/ARM/embedded-4_6-branch/gcc/ChangeLog.arm
    branches/ARM/embedded-4_6-branch/gcc/config/arm/arm.c
    branches/ARM/embedded-4_6-branch/gcc/config/h8300/h8300.c
    branches/ARM/embedded-4_6-branch/gcc/config/m32c/m32c.c
    branches/ARM/embedded-4_6-branch/gcc/config/rx/rx.c
    branches/ARM/embedded-4_6-branch/gcc/config/sh/sh.c
    branches/ARM/embedded-4_6-branch/gcc/testsuite/ChangeLog.arm
    branches/ARM/embedded-4_6-branch/gcc/testsuite/g++.dg/abi/bitfield12.C
    branches/ARM/embedded-4_6-branch/gcc/toplev.c


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]