public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/51442] New: volatile bitfields broken on arm
@ 2011-12-06 20:56 bconoboy at gmail dot com
  2011-12-06 21:02 ` [Bug middle-end/51442] " bconoboy at gmail dot com
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: bconoboy at gmail dot com @ 2011-12-06 20:56 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 51442
           Summary: volatile bitfields broken on arm
    Classification: Unclassified
           Product: gcc
           Version: 4.6.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: bconoboy@gmail.com


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug middle-end/51442] volatile bitfields broken on arm
  2011-12-06 20:56 [Bug middle-end/51442] New: volatile bitfields broken on arm bconoboy at gmail dot com
@ 2011-12-06 21:02 ` bconoboy at gmail dot com
  2011-12-06 21:13 ` bconoboy at gmail dot com
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: bconoboy at gmail dot com @ 2011-12-06 21:02 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Brendan Conoboy <bconoboy at gmail dot com> 2011-12-06 21:02:22 UTC ---
This bug is in reference to the patch that Diego Novillo accepted into 4.7
about 10 months ago:

http://gcc.gnu.org/ml/gcc-patches/2011-03/msg01477.html

The issue is still present in gcc 4.6.x and the same patch resolves the issue. 
This is a problem for all gcc 4.6-based ARM targets.

In Debian, the discussion and resolution is here:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=625825

Linaro and Ubuntu use the same patch.  Discussion here:

https://bugs.launchpad.net/gcc-linaro/+bug/675347

We've been carrying the patch in Fedora-ARM as well.  Without the patch applied
the USB stack is broken on ARM, as are various KDE/Qt builds.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug middle-end/51442] volatile bitfields broken on arm
  2011-12-06 20:56 [Bug middle-end/51442] New: volatile bitfields broken on arm bconoboy at gmail dot com
  2011-12-06 21:02 ` [Bug middle-end/51442] " bconoboy at gmail dot com
@ 2011-12-06 21:13 ` bconoboy at gmail dot com
  2011-12-07 10:55 ` rearnsha at gcc dot gnu.org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: bconoboy at gmail dot com @ 2011-12-06 21:13 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Brendan Conoboy <bconoboy at gmail dot com> 2011-12-06 21:12:46 UTC ---
Created attachment 26010
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26010
Only use BLKmode for volatile accesses which are not naturally aligned.

Per Julian Brown's original email at
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg01477.html:

    gcc/
    * expr.c (expand_expr_real_1): Only use BLKmode for volatile
    accesses which are not naturally aligned.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug middle-end/51442] volatile bitfields broken on arm
  2011-12-06 20:56 [Bug middle-end/51442] New: volatile bitfields broken on arm bconoboy at gmail dot com
  2011-12-06 21:02 ` [Bug middle-end/51442] " bconoboy at gmail dot com
  2011-12-06 21:13 ` bconoboy at gmail dot com
@ 2011-12-07 10:55 ` rearnsha at gcc dot gnu.org
  2011-12-10  2:50 ` bconoboy at gmail dot com
  2012-01-11 12:13 ` ramana at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: rearnsha at gcc dot gnu.org @ 2011-12-07 10:55 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Richard Earnshaw <rearnsha at gcc dot gnu.org> 2011-12-07 10:55:17 UTC ---
(In reply to comment #2)
> Created attachment 26010 [details]
> Only use BLKmode for volatile accesses which are not naturally aligned.
> 
> Per Julian Brown's original email at
> http://gcc.gnu.org/ml/gcc-patches/2011-03/msg01477.html:
> 
>     gcc/
>     * expr.c (expand_expr_real_1): Only use BLKmode for volatile
>     accesses which are not naturally aligned.

If this patch is backported then so must:

http://gcc.gnu.org/ml/gcc-patches/2011-11/msg01390.html


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug middle-end/51442] volatile bitfields broken on arm
  2011-12-06 20:56 [Bug middle-end/51442] New: volatile bitfields broken on arm bconoboy at gmail dot com
                   ` (2 preceding siblings ...)
  2011-12-07 10:55 ` rearnsha at gcc dot gnu.org
@ 2011-12-10  2:50 ` bconoboy at gmail dot com
  2012-01-11 12:13 ` ramana at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: bconoboy at gmail dot com @ 2011-12-10  2:50 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Brendan Conoboy <bconoboy at gmail dot com> 2011-12-10 01:49:25 UTC ---
FYI, I've checked out svn://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch
revision 182172, run and rerun the complete testsuite before and after this
patch (As well as the patch Richard pointed at:
http://gcc.gnu.org/ml/gcc-patches/2011-11/msg01390/volatile-bitfields-1110.patch)
on an x86_64 host.  The results are as follows:

objc, gfortran, libstdc++-v3, libjava, libmudflap, libffi, libgomp: identical
gcc: 2 new passes (These are from the testcase added by the second patch). 
Otherwise identical.

To me this suggests there is very little risk in adding these patches to the
branch.  Likewise, there is a great deal to be gained for ARM users.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug middle-end/51442] volatile bitfields broken on arm
  2011-12-06 20:56 [Bug middle-end/51442] New: volatile bitfields broken on arm bconoboy at gmail dot com
                   ` (3 preceding siblings ...)
  2011-12-10  2:50 ` bconoboy at gmail dot com
@ 2012-01-11 12:13 ` ramana at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: ramana at gcc dot gnu.org @ 2012-01-11 12:13 UTC (permalink / raw)
  To: gcc-bugs

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

Ramana Radhakrishnan <ramana at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
                 CC|                            |ramana at gcc dot gnu.org
         Resolution|                            |FIXED
   Target Milestone|---                         |4.6.3

--- Comment #5 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> 2012-01-11 12:12:07 UTC ---
This should now be fixed by the commit as indicated below - 

Brendan - can you confirm this is the case ? 



Author: dj
Date: Thu Dec 22 19:36:46 2011
New Revision: 182635

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=182635
Log:
2011-12-22  Doug Kwan  <dougkwan@google.com>

    Backport from mainline
    2011-03-23  Julian Brown  <julian@codesourcery.com>

    * expr.c (expand_expr_real_1): Only use BLKmode for volatile
    accesses which are not naturally aligned.

    2011-11-20  Joey Ye  <joey.ye@arm.com>

    * expr.c (expand_expr_real_1): Correctly handle strict volatile
    bitfield loads smaller than mode size.

2011-12-22  Doug Kwan  <dougkwan@google.com>

    Backport from mainline
    2011-11-20  Joey Ye  <joey.ye@arm.com>

    * gcc.dg/volatile-bitfields-1.c: New.

Added:
    branches/gcc-4_6-branch/gcc/testsuite/gcc.dg/volatile-bitfields-1.c
Modified:
    branches/gcc-4_6-branch/gcc/ChangeLog
    branches/gcc-4_6-branch/gcc/expr.c
    branches/gcc-4_6-branch/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2012-01-11 12:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-12-06 20:56 [Bug middle-end/51442] New: volatile bitfields broken on arm bconoboy at gmail dot com
2011-12-06 21:02 ` [Bug middle-end/51442] " bconoboy at gmail dot com
2011-12-06 21:13 ` bconoboy at gmail dot com
2011-12-07 10:55 ` rearnsha at gcc dot gnu.org
2011-12-10  2:50 ` bconoboy at gmail dot com
2012-01-11 12:13 ` ramana at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).