[Bug target/58330] powerpc64 atomic store split in two

2013-09-05 Thread pinskia at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58330

Andrew Pinski  changed:

   What|Removed |Added

 Target||powerpc64*-linux
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-09-06
  Component|middle-end  |target
 Ever confirmed|0   |1

--- Comment #1 from Andrew Pinski  ---
I think the rs6000 back-end should follow what aarch64 does with respect of the
atomic stores and don't use a standard movdi pattern but have an atomic store
pattern instead.


[Bug target/58330] powerpc64 atomic store split in two

2013-09-05 Thread amodra at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58330

Alan Modra  changed:

   What|Removed |Added

 CC||amodra at gmail dot com

--- Comment #2 from Alan Modra  ---
I think this is a backend problem, specifically with bswapdi2_64bit accepting a
DImode mem then splitting to two SImode.

Potential fix is to add
   && !(MEM_P (operands[0]) && MEM_VOLATILE_P (operands[0]))
   && !(MEM_P (operands[1]) && MEM_VOLATILE_P (operands[1]))
to the insn condition.


[Bug target/58330] powerpc64 atomic store split in two

2013-09-09 Thread amodra at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58330

--- Comment #3 from Alan Modra  ---
Author: amodra
Date: Mon Sep  9 23:48:10 2013
New Revision: 202418

URL: http://gcc.gnu.org/viewcvs?rev=202418&root=gcc&view=rev
Log:
PR target/58330
gcc/
* config/rs6000/rs6000.md (bswapdi2_64bit): Disable for volatile mems.
gcc/testsuite/
* gcc.target/powerpc/pr58330.c: New.


Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/rs6000.md
trunk/gcc/testsuite/ChangeLog


[Bug target/58330] powerpc64 atomic store split in two

2013-09-10 Thread amodra at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58330

--- Comment #4 from Alan Modra  ---
Author: amodra
Date: Tue Sep 10 08:38:57 2013
New Revision: 202428

URL: http://gcc.gnu.org/viewcvs?rev=202428&root=gcc&view=rev
Log:
PR target/58330
oops, missed from commit


Added:
trunk/gcc/testsuite/gcc.target/powerpc/pr58330.c


[Bug target/58330] powerpc64 atomic store split in two

2013-09-23 Thread amodra at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58330

--- Comment #5 from Alan Modra  ---
Author: amodra
Date: Mon Sep 23 14:27:06 2013
New Revision: 202829

URL: http://gcc.gnu.org/viewcvs?rev=202829&root=gcc&view=rev
Log:
PR target/58330
* config/rs6000/rs6000.md (bswapdi2_64bit): Disable for volatile mems.
gcc/testsuite/
* gcc.target/powerpc/pr58330.c: New.


Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/config/rs6000/rs6000.md
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog


[Bug target/58330] powerpc64 atomic store split in two

2013-09-23 Thread amodra at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58330

--- Comment #6 from Alan Modra  ---
Author: amodra
Date: Mon Sep 23 14:27:56 2013
New Revision: 202830

URL: http://gcc.gnu.org/viewcvs?rev=202830&root=gcc&view=rev
Log:
PR target/58330
* gcc.target/powerpc/pr58330.c: New.


Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/pr58330.c


[Bug target/58330] powerpc64 atomic store split in two

2013-09-23 Thread amodra at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58330

Alan Modra  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #7 from Alan Modra  ---
Fixed


[Bug target/58330] powerpc64 atomic store split in two

2013-09-23 Thread amodra at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58330

Alan Modra  changed:

   What|Removed |Added

   Target Milestone|--- |4.8.2