[Bug target/48126] arm_output_sync_loop: misplaced memory barrier

2012-06-18 Thread jye2 at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 --- Comment #13 from jye2 at gcc dot gnu.org 2012-06-19 03:01:16 UTC --- Author: jye2 Date: Tue Jun 19 03:01:10 2012 New Revision: 188766 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=188766 Log: 2012-06-18 Joey Ye Backported from

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier

2012-06-07 Thread jye2 at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 --- Comment #12 from jye2 at gcc dot gnu.org 2012-06-08 06:58:32 UTC --- Author: jye2 Date: Fri Jun 8 06:58:25 2012 New Revision: 188327 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=188327 Log: Backport mainline r179607, r179979, r179980

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier

2011-10-14 Thread rsandifo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 rsand...@gcc.gnu.org changed: What|Removed |Added Status|NEW |RESOLVED CC|

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier

2011-10-14 Thread rsandifo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 --- Comment #10 from rsandifo at gcc dot gnu.org 2011-10-14 14:38:48 UTC --- Author: rsandifo Date: Fri Oct 14 14:38:42 2011 New Revision: 179980 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=179980 Log: gcc/ 2011-10-14 David Alan Gilbe

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier, missing clrex / dummy strex

2011-06-24 Thread ramana at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 Ramana Radhakrishnan changed: What|Removed |Added Keywords||wrong-code Status|UNCO

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier, missing clrex / dummy strex

2011-06-24 Thread m.k.edwards at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 --- Comment #8 from Michael K. Edwards 2011-06-24 11:28:53 UTC --- So I think we agree that the CLREX is needless, but the DMB should move after the branch target. Does that make this bug "confirmed"? (I don't feel the need for patch credit. :-

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier, missing clrex / dummy strex

2011-06-23 Thread marcus.shawcroft at arm dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 --- Comment #7 from Marcus Shawcroft 2011-06-23 09:32:59 UTC --- (In reply to comment #5) > Michael: > I think I agree with you on the need for the barrier in the branch out case; > gcc's info page (section 6.49 'Built-in functions for atomic mem

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier, missing clrex / dummy strex

2011-06-22 Thread m.k.edwards at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 --- Comment #6 from Michael K. Edwards 2011-06-22 19:00:54 UTC --- (In reply to comment #5) > If I understand correctly however most cases wouldn't need it - I think most > cases are use the compare&swap to take some form of lock, and then once

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier, missing clrex / dummy strex

2011-06-22 Thread david.gilbert at linaro dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 Dr. David Alan Gilbert changed: What|Removed |Added CC||david.gilbert at linaro dot

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier, missing clrex / dummy strex

2011-05-24 Thread m.k.edwards at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 --- Comment #4 from Michael K. Edwards 2011-05-24 16:38:41 UTC --- OK, that's a clear explanation of why the DMB is necessary in the case where both the compare and the store succeed (neither branch is taken; at a higher semantic level, a lock is

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier, missing clrex / dummy strex

2011-05-24 Thread marcus.shawcroft at arm dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 --- Comment #3 from Marcus Shawcroft 2011-05-24 13:37:03 UTC --- The primitive is required to have lock semantics therefore the load of the old value must be followed by a dmb in the case that the old value comparison succeeds and the swap goes a

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier, missing clrex / dummy strex

2011-03-17 Thread m.k.edwards at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 --- Comment #2 from Michael K. Edwards 2011-03-17 18:14:11 UTC --- Please insert the text of your citations, since the ARM ARM is not a public document. I think I'm persuaded that the CLREX isn't necessary -- although I'm going to keep it in my

[Bug target/48126] arm_output_sync_loop: misplaced memory barrier, missing clrex / dummy strex

2011-03-17 Thread marcus.shawcroft at arm dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48126 Marcus Shawcroft changed: What|Removed |Added CC||marcus.shawcroft at arm dot