Cameron McInally
9b7c15a364
[AVX512] Add 512b integer shift by variable intrinsics and patterns.
...
llvm-svn: 222786
2014-11-25 20:41:51 +00:00
Cameron McInally
73a6bca32b
[AVX512] Add integer shift by immediate intrinsics.
...
llvm-svn: 221811
2014-11-12 19:58:54 +00:00
Elena Demikhovsky
be8808dc3f
AVX-512: Intrinsics for ERI
...
3 instructions: vrcp28, vrsqrt28, vexp2, only vector forms.
Intrinsics include SAE (Suppres All Exceptions) parameter.
http://reviews.llvm.org/D6214
llvm-svn: 221774
2014-11-12 07:31:03 +00:00
Robert Khasanov
b51bb22611
[AVX512] Added intrinsics for 128-, 256- and 512-bit versions of VPCMP/VPCMPU{BWDQ}
...
Added CMP_MASK_CC intrinsic type.
Added tests for intrinsics.
Patch by Sergey Lisitsyn <sergey.lisitsyn@intel.com>
llvm-svn: 219316
2014-10-08 15:49:26 +00:00
Robert Khasanov
28a7df0b5f
[AVX512] Added intrinsics for 128-, 256- and 512-bit versions of VCMPGT{BWDQ}.
...
Patch by Sergey Lisitsyn <sergey.lisitsyn@intel.com>
llvm-svn: 218670
2014-09-30 12:15:52 +00:00
Robert Khasanov
5aa4445bde
[AVX512] Added intrinsics for 128- and 256-bit versions of VCMPEQ{BWDQ}
...
Fixed lowering of this intrinsics in case when mask is v2i1 and v4i1.
Now cmp intrinsics lower in the following way:
(i8 (int_x86_avx512_mask_pcmpeq_q_128
(v2i64 %a), (v2i64 %b), (i8 %mask))) ->
(i8 (bitcast
(v8i1 (insert_subvector undef,
(v2i1 (and (PCMPEQM %a, %b),
(extract_subvector
(v8i1 (bitcast %mask)), 0))), 0))))
llvm-svn: 218669
2014-09-30 11:41:54 +00:00
Robert Khasanov
b25e562d14
[AVX512] Added intrinsics for VPCMPEQB and VPCMPEQW.
...
Added new operand type for intrinsics (IIT_V64)
llvm-svn: 218668
2014-09-30 11:32:22 +00:00
Robert Khasanov
a27c8e0fd9
[AVX512] Enabled intrinsics for VPCMPEQD and VPCMPEQQ.
...
Added CMP_MASK intrinsic type
llvm-svn: 218667
2014-09-30 11:19:50 +00:00
Elena Demikhovsky
0f54a0b02a
Fixed compilation problem on Windows (initialization of non-aggregate type).
...
After commit 217131.
llvm-svn: 217134
2014-09-04 07:20:39 +00:00
Elena Demikhovsky
228ab3d7b3
X86 Intrinsics table - changed to a static table sorted by intrinsic id.
...
Used binary search over the tables.
llvm-svn: 217131
2014-09-04 06:34:34 +00:00
Elena Demikhovsky
22e735d725
X86 intrinsics table - simplifies intrinsics lowering.
...
The tables are initialized when X86TargetLowering object is created.
llvm-svn: 216345
2014-08-24 09:19:56 +00:00
Elena Demikhovsky
c0b420fdf5
Reverted last commit
...
llvm-svn: 215827
2014-08-17 09:36:07 +00:00
Elena Demikhovsky
2bb991a0c5
Added a table for intrinsics on X86.
...
It should remove dosens of lines in handling instrinsics (in a huge switch) and give an easy way to add new intrinsics.
I did not completed to move al intrnsics to the table, I'll do this in the upcomming commits.
llvm-svn: 215826
2014-08-17 09:00:20 +00:00