[Bug target/87550] Intrinsics for rdpmc (__rdpmc, __builtin_ia32_rdpmc) are interpreted as pure functions

2018-10-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87550

Richard Biener  changed:

   What|Removed |Added

   Keywords||wrong-code
 Target||x86_64-*-* i?86-*-*
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-10-08
 Ever confirmed|0   |1
  Known to fail||8.2.1

--- Comment #1 from Richard Biener  ---
Confirmed.  Expansion happens to an UNSPEC_VOLATILE though.

[Bug target/87550] Intrinsics for rdpmc (__rdpmc, __builtin_ia32_rdpmc) are interpreted as pure functions

2018-10-09 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87550

Jakub Jelinek  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek  ---
Created attachment 44815
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44815&action=edit
gcc9-pr87550.patch

Untested fix.

[Bug target/87550] Intrinsics for rdpmc (__rdpmc, __builtin_ia32_rdpmc) are interpreted as pure functions

2018-10-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87550

--- Comment #3 from Jakub Jelinek  ---
Author: jakub
Date: Wed Oct 10 09:28:26 2018
New Revision: 265007

URL: https://gcc.gnu.org/viewcvs?rev=265007&root=gcc&view=rev
Log:
PR target/87550
* config/i386/i386-builtin.def (IX86_BUILTIN_RDPMC): Move from args set
to special_args set.

* gcc.target/i386/pr87550.c: New test.

Added:
trunk/gcc/testsuite/gcc.target/i386/pr87550.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386-builtin.def
trunk/gcc/testsuite/ChangeLog

[Bug target/87550] Intrinsics for rdpmc (__rdpmc, __builtin_ia32_rdpmc) are interpreted as pure functions

2018-10-10 Thread vladimir.solontsov at mlp dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87550

--- Comment #4 from Vlad  ---
Great! Thanks you very much.

[Bug target/87550] Intrinsics for rdpmc (__rdpmc, __builtin_ia32_rdpmc) are interpreted as pure functions

2018-10-11 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87550

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Thu Oct 11 17:41:33 2018
New Revision: 265049

URL: https://gcc.gnu.org/viewcvs?rev=265049&root=gcc&view=rev
Log:
Backported from mainline
2018-10-10  Jakub Jelinek  

PR target/87550
* config/i386/i386-builtin.def (IX86_BUILTIN_RDPMC): Move from args set
to special_args set.

* gcc.target/i386/pr87550.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.target/i386/pr87550.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/config/i386/i386-builtin.def
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug target/87550] Intrinsics for rdpmc (__rdpmc, __builtin_ia32_rdpmc) are interpreted as pure functions

2018-10-11 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87550

--- Comment #6 from Jakub Jelinek  ---
Fixed for 8.3+ so far.

[Bug target/87550] Intrinsics for rdpmc (__rdpmc, __builtin_ia32_rdpmc) are interpreted as pure functions

2018-10-12 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87550

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Fri Oct 12 14:55:17 2018
New Revision: 265112

URL: https://gcc.gnu.org/viewcvs?rev=265112&root=gcc&view=rev
Log:
Backported from mainline
2018-10-10  Jakub Jelinek  

PR target/87550
* config/i386/i386-builtin.def (IX86_BUILTIN_RDPMC): Move from args set
to special_args set.

* gcc.target/i386/pr87550.c: New test.

Added:
branches/gcc-7-branch/gcc/testsuite/gcc.target/i386/pr87550.c
Modified:
branches/gcc-7-branch/gcc/ChangeLog
branches/gcc-7-branch/gcc/config/i386/i386-builtin.def
branches/gcc-7-branch/gcc/testsuite/ChangeLog

[Bug target/87550] Intrinsics for rdpmc (__rdpmc, __builtin_ia32_rdpmc) are interpreted as pure functions

2018-10-12 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87550

--- Comment #8 from Jakub Jelinek  ---
Author: jakub
Date: Fri Oct 12 17:34:07 2018
New Revision: 265122

URL: https://gcc.gnu.org/viewcvs?rev=265122&root=gcc&view=rev
Log:
Backported from mainline
2018-10-10  Jakub Jelinek  

PR target/87550
* config/i386/i386.c (bdesc_args): Move IX86_BUILTIN_RDPMC
from here to ...
(bdesc_special_args): ... here.

* gcc.target/i386/pr87550.c: New test.

Added:
branches/gcc-6-branch/gcc/testsuite/gcc.target/i386/pr87550.c
Modified:
branches/gcc-6-branch/gcc/ChangeLog
branches/gcc-6-branch/gcc/config/i386/i386.c
branches/gcc-6-branch/gcc/testsuite/ChangeLog

[Bug target/87550] Intrinsics for rdpmc (__rdpmc, __builtin_ia32_rdpmc) are interpreted as pure functions

2018-10-12 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87550

Jakub Jelinek  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |6.5

--- Comment #9 from Jakub Jelinek  ---
Fixed for 6.5, 7.4+ and 8.3+.