[Bug target/60847] [4.9/4.10 Regression] x86 BMI intrinsics not recognized

2014-04-30 Thread spatel at rotateright dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60847

--- Comment #8 from Sanjay Patel spatel at rotateright dot com ---
Thanks, Jakub. 

I see that the fix duplicates all of the intrinsics with a
double-leading-underscore variant. Why do we need that? AFAIK, no other x86
intrinsics have this kind of duplication.


[Bug target/60847] [4.9/4.10 Regression] x86 BMI intrinsics not recognized

2014-04-30 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60847

--- Comment #9 from Jakub Jelinek jakub at gcc dot gnu.org ---
(In reply to Sanjay Patel from comment #8)
 Thanks, Jakub. 
 
 I see that the fix duplicates all of the intrinsics with a
 double-leading-underscore variant. Why do we need that? AFAIK, no other x86
 intrinsics have this kind of duplication.

That is because one kind of these intrinsics originates from AMD (support for
AMD BMI is what went into GCC first) and the other from ICC which chose to
provide different names.  So, for backwards compatibility we need both sets.


[Bug target/60847] [4.9/4.10 Regression] x86 BMI intrinsics not recognized

2014-04-30 Thread spatel at rotateright dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60847

--- Comment #10 from Sanjay Patel spatel at rotateright dot com ---
Ah - thank you for the explanation! I found the original checkin from AMD:
http://gcc.gnu.org/ml/gcc-patches/2010-10/msg01356.html

Strangely, I can't find any documentation for those double-underscores from AMD
though.


[Bug target/60847] [4.9/4.10 Regression] x86 BMI intrinsics not recognized

2014-04-17 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60847

--- Comment #5 from Jakub Jelinek jakub at gcc dot gnu.org ---
Author: jakub
Date: Thu Apr 17 10:02:36 2014
New Revision: 209471

URL: http://gcc.gnu.org/viewcvs?rev=209471root=gccview=rev
Log:
PR target/60847
Forward port from 4.8 branch
2013-07-19  Kirill Yukhin  kirill.yuk...@intel.com

* config/i386/bmiintrin.h (_blsi_u32): New.
(_blsi_u64): Ditto.
(_blsr_u32): Ditto.
(_blsr_u64): Ditto.
(_blsmsk_u32): Ditto.
(_blsmsk_u64): Ditto.
(_tzcnt_u32): Ditto.
(_tzcnt_u64): Ditto.

* gcc.target/i386/bmi-1.c: Extend with new instrinsics.
Fix scan patterns.
* gcc.target/i386/bmi-2.c: Ditto.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/bmiintrin.h
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.target/i386/bmi-1.c
trunk/gcc/testsuite/gcc.target/i386/bmi-2.c


[Bug target/60847] [4.9/4.10 Regression] x86 BMI intrinsics not recognized

2014-04-17 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60847

--- Comment #6 from Jakub Jelinek jakub at gcc dot gnu.org ---
Author: jakub
Date: Thu Apr 17 10:09:45 2014
New Revision: 209472

URL: http://gcc.gnu.org/viewcvs?rev=209472root=gccview=rev
Log:
PR target/60847
Forward port from 4.8 branch
2013-07-19  Kirill Yukhin  kirill.yuk...@intel.com

* config/i386/bmiintrin.h (_blsi_u32): New.
(_blsi_u64): Ditto.
(_blsr_u32): Ditto.
(_blsr_u64): Ditto.
(_blsmsk_u32): Ditto.
(_blsmsk_u64): Ditto.
(_tzcnt_u32): Ditto.
(_tzcnt_u64): Ditto.

* gcc.target/i386/bmi-1.c: Extend with new instrinsics.
Fix scan patterns.
* gcc.target/i386/bmi-2.c: Ditto.

Modified:
branches/gcc-4_9-branch/gcc/ChangeLog
branches/gcc-4_9-branch/gcc/config/i386/bmiintrin.h
branches/gcc-4_9-branch/gcc/testsuite/ChangeLog
branches/gcc-4_9-branch/gcc/testsuite/gcc.target/i386/bmi-1.c
branches/gcc-4_9-branch/gcc/testsuite/gcc.target/i386/bmi-2.c


[Bug target/60847] [4.9/4.10 Regression] x86 BMI intrinsics not recognized

2014-04-17 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60847

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

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

--- Comment #7 from Jakub Jelinek jakub at gcc dot gnu.org ---
Should be fixed now.


[Bug target/60847] [4.9/4.10 Regression] x86 BMI intrinsics not recognized

2014-04-15 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60847

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2014-04-15
  Component|c   |target
   Target Milestone|--- |4.9.0
Summary|x86 BMI intrinsics not  |[4.9/4.10 Regression] x86
   |recognized  |BMI intrinsics not
   ||recognized
 Ever confirmed|0   |1

--- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org ---
As the aliases have been added to 4.8 branch only, this makes it a regression
from 4.8.x.