Craig Topper
4d302448ae
[AVX512] Remove 512-bit andnot tests from the avx512vl test file.
...
llvm-svn: 271795
2016-06-04 16:37:38 +00:00
Michael Zuckerman
9e7d0a98fa
[Clang][AVX512][INTRINSICS] adding round cvt and fix regular cvtps_ph
...
Differential Revision: http://reviews.llvm.org/D20870
llvm-svn: 271498
2016-06-02 07:44:08 +00:00
Craig Topper
4b060e31c9
[AVX512] Convert masked load builtins to generic masked load intrinsics instead of the x86 specific ones.
...
This will allow the x86 intrinsics to be removed from the backend.
llvm-svn: 271253
2016-05-31 06:58:07 +00:00
Craig Topper
6e891fbdd2
[AVX512] Emit generic masked store instrinsics instead of using x86 specific intrinsics.
...
This will allow us to remove the x86 instrinics from the backend.
llvm-svn: 271246
2016-05-31 01:50:10 +00:00
Michael Zuckerman
eb5f178c4b
Fix instrinsics names:
...
_mm128_cmp_ps_mask-->_mm_cmp_ps_mask
_mm128_mask_cmp_ps_mask-->_mm_mask_cmp_ps_mask
_mm128_cmp_pd_mask-->_mm_cmp_pd_mask
_mm128_mask_cmp_pd_mask-->_mm_mask_cmp_pd_mask
llvm-svn: 270830
2016-05-26 08:10:12 +00:00
Michael Zuckerman
e6542002fc
[Clang][AVX512][BUILTIN]adding missing intrinsics for movdaq instruction set
...
Differential Revision: http://reviews.llvm.org/D20514
llvm-svn: 270401
2016-05-23 08:01:48 +00:00
Craig Topper
39c871038a
[X86] Add immediate range checks for many of the builtins.
...
This time allow -128 to 255 for builtins that use a char type immediate."
llvm-svn: 269878
2016-05-18 03:18:12 +00:00
Filipe Cabecinhas
09fbfcafc3
Revert "[X86] Add immediate range checks for many of the builtins."
...
This reverts commit r269619.
llvm-svn: 269765
2016-05-17 14:07:43 +00:00
Craig Topper
0f7ea93541
[X86] Add immediate range checks for many of the builtins.
...
llvm-svn: 269619
2016-05-15 22:18:00 +00:00
Michael Zuckerman
8bfb7776e4
[Clang][AVX512][Builtin] Adding intrinsics for vcvt{ph|ps}2{ps|ph} instruction set
...
Differential Revision: http://reviews.llvm.org/D19767
llvm-svn: 268376
2016-05-03 12:45:04 +00:00
Michael Zuckerman
5f0e96e56a
[CLANG][AVX512][BUILTIN]movap{d|s}{128|256|512}
...
Differential Revision: http://reviews.llvm.org/D17818
llvm-svn: 268230
2016-05-02 14:02:01 +00:00
Michael Zuckerman
c62f27e3f4
[Clang][BuiltIn][avx512] Adding intrinsics for vpshufd instruction set
...
Differential Revision: http://reviews.llvm.org/D19580
llvm-svn: 268213
2016-05-02 07:35:27 +00:00
Michael Zuckerman
ac1e519944
[clang][Builtin][AVX512] Adding intrinsics for vmovshdup and vmovsldup instruction set
...
Differential Revision: http://reviews.llvm.org/D19595
llvm-svn: 268196
2016-05-01 14:43:43 +00:00
Michael Zuckerman
533e065bdc
[Clang][BuiltIn][AVX512] Adding intrinsics fot align{d|q} and palignr instruction set
...
Differential Revision: http://reviews.llvm.org/D19588
llvm-svn: 267876
2016-04-28 12:47:30 +00:00
Michael Zuckerman
8938e836c4
[Clang][AVX512][BuiltIn] Adding support to intrinsics of VPERMD and VPERMW instruction set
...
Differential Revision: http://reviews.llvm.org/D19195
llvm-svn: 267380
2016-04-25 05:32:35 +00:00
Michael Zuckerman
4fa96af4db
[Clang][AVX512][BuiltIn] Adding intrinsics of VGATHER{DPS|DPD} , VPGATHER{QD|QQ|DD|DQ} and VGATHERPF{0|1}{DPS|QPS|DPD|QPD} instruction set .
...
Differential Revision: http://reviews.llvm.org/D19224
llvm-svn: 266983
2016-04-21 12:47:27 +00:00
Michael Zuckerman
6fa512cecf
[Clang][Builtin][AVX512] Adding intrinsics for VGETMANT{PD|PS} and VGETEXP{PD|PS} instruction set
...
Differential Revision: http://reviews.llvm.org/D19197
llvm-svn: 266763
2016-04-19 17:10:29 +00:00
Michael Zuckerman
ef2979af50
[Clang][AVX512][BUILTIN] Adding intrinsics support to VEXTRACT{I|F} and VINSERT{I|F} instruction set
...
Differential Revision: http://reviews.llvm.org/D19097
llvm-svn: 266745
2016-04-19 15:18:23 +00:00
Michael Zuckerman
0a3508a8d3
[Clang][AVX512][BUILTIN] Adding support for intrinsics of vpmov{d|q}{b|w|d}{128|256|512} instruction set
...
Differential Revision: http://reviews.llvm.org/D19055
llvm-svn: 266280
2016-04-14 07:56:51 +00:00
Michael Zuckerman
d871531687
[Clang][AVX512][Builtin] Adding intrinsics of vpmovus{d|q}{b|w|d}{128|256|512} instruction set
...
Differential Revision: http://reviews.llvm.org/D19050
llvm-svn: 266278
2016-04-14 06:48:09 +00:00
Michael Zuckerman
e1680617b0
[Clang][AVX512][Builtin] Adding support to intrinsics of pmovs{d|q}{b|w|d}{128|256|512} instruction set
...
Differential Revision: http://reviews.llvm.org/D19023
llvm-svn: 266202
2016-04-13 15:02:04 +00:00
Michael Zuckerman
c2b6128a8f
[Clang][AVX512][Builtin] Adding support for VBROADCAST and VPBROADCASTB/W/D/Q instruction set
...
Differential Revision: http://reviews.llvm.org/D19012
llvm-svn: 266195
2016-04-13 12:58:01 +00:00
Michael Zuckerman
04fb3bc682
[Clang][BuiltIn][avx512] Adding avx512 (shuf,sqrt{ss|sd},rsqrt ) builtin to clang
...
llvm-svn: 266048
2016-04-12 07:59:39 +00:00
Michael Zuckerman
81f468c859
[Clang][AVX512][BuiltIn] Adding avx512 ( psll{d|q}512,psllv{16si|8di},psra{d|q}512,psrav{16si|8di},pternlog{d|q}{128|256|512} ) builtin to clang
...
Differential Revision: http://reviews.llvm.org/D18926
llvm-svn: 265964
2016-04-11 17:04:21 +00:00
Michael Zuckerman
6b5f4d8ad1
[CLANG] [AVX512] [BUILTIN] Adding PSRA{Q|D|QI|DI}{128|256|512} builtin
...
Differential Revision: http://reviews.llvm.org/D17693
llvm-svn: 265952
2016-04-11 15:46:39 +00:00
Michael Zuckerman
1af947a7b3
[Clang][AVX512][BuiltIn] Adding avx512 ( punpck{h|l}{dq|qdq}{128|256|512},rndscale{ss|sd}, {scalef{ss|sd|pd512|ps512} ) builtin to clang
...
Differential Revision: http://reviews.llvm.org/D18929
llvm-svn: 265935
2016-04-11 12:32:31 +00:00
Michael Zuckerman
07525091e6
[Clang][AVX512][BuiltIn] Adding avx512 ( ptest{n}m{b|w}{128|256|512} ) builtin to clang
...
Differential Revision: http://reviews.llvm.org/D18924
llvm-svn: 265928
2016-04-11 10:22:07 +00:00
Michael Zuckerman
d8d2f62107
[Clang][AVX512][BuiltIn] Adding avx512 ( vperm{i|t}2var, vpermil{var}{ps|pd}{256|512} ) builtin to clang.
...
Differential Revision: http://reviews.llvm.org/D18933
llvm-svn: 265915
2016-04-11 07:15:34 +00:00
Michael Zuckerman
cdd54c83d8
Adding avx512 (unpck{h|l}{pd|ps}, rcp14{pd|ps}{128|256},vplzcnt{d|q} ) builtin to clang
...
Differential Revision: http://reviews.llvm.org/D18931
llvm-svn: 265896
2016-04-10 12:54:23 +00:00
Michael Zuckerman
fa7ccc5bcf
[Clang][AVX512][BuiltIn] Adding avx512 ( store ) builtin to clang
...
Differential Revision: http://reviews.llvm.org/D18925
llvm-svn: 265895
2016-04-10 10:51:04 +00:00
Michael Zuckerman
def78750b7
[CLANG][avx512][BUILTIN] Adding fixupimm{pd|ps|sd|ss}
...
getexp{sd|ss} getmant{sd|ss} kunpck{di|si} loada{pd|ps} loaddqu{di|hi|qi|si} max{sd|ss} min{sd|ss} kmov16 builtins to clang
Differential Revision: http://reviews.llvm.org/D18215
llvm-svn: 264574
2016-03-28 12:23:09 +00:00
Michael Zuckerman
912be16a0e
[CLANG][AVX512][BUILTIN] Adding vpmultishiftqb{128|256|512}
...
Differential Revision: http://reviews.llvm.org/D17914
llvm-svn: 262817
2016-03-07 08:29:10 +00:00
Michael Zuckerman
0d67e4b5d6
[CLANG][AVX512][BUILTIN] movddup{128|256|512}
...
Differential Revision: http://reviews.llvm.org/D17826
llvm-svn: 262617
2016-03-03 13:43:05 +00:00
Michael Zuckerman
ffbb67a8e2
[CLANG][AVX512][BUILTIN] movdqa{32|64}{load|store|}{128|256|512}
...
Differential Revision: http://reviews.llvm.org/D17812
llvm-svn: 262598
2016-03-03 09:26:01 +00:00
Michael Zuckerman
d15c95a793
[CLANG] [AVX512] [BUILTIN] Adding PSRAV
...
Differential Revision: http://reviews.llvm.org/D17699
llvm-svn: 262471
2016-03-02 09:05:46 +00:00
Michael Zuckerman
d176d744af
[CLANG][AVX512][BUILTIN] Adding PSRL{DI|QI}{128|256|512} builtin
...
Differential Revision: http://reviews.llvm.org/D17714
llvm-svn: 262355
2016-03-01 17:49:03 +00:00
Michael Zuckerman
0165e7669c
[CLANG][AVX512][BUILTIN] Adding PSRLV builtin
...
Differential Revision: http://reviews.llvm.org/D17718
llvm-svn: 262326
2016-03-01 13:03:45 +00:00
Michael Zuckerman
431b0e18b4
[CLANG] [AVX512] [BUILTIN] Adding PSLL{V|W|Wi}{128|256|512} builtin
...
Differential Revision: http://reviews.llvm.org/D17685
llvm-svn: 262177
2016-02-28 07:39:34 +00:00
Michael Zuckerman
e98cc7477f
[CLANG] [AVX512] [BUILTIN] Adding prorv{d|q}{128|256|512} builtin to clang
...
Differential Revision: http://reviews.llvm.org/D17512
llvm-svn: 261641
2016-02-23 15:59:47 +00:00
Michael Zuckerman
0231f1649b
[CLANG] [AVX512] [BUILTIN] Adding pro{lv|r}{d|q}{128|256|512} builtin to clang
...
Differential Revision: http://reviews.llvm.org/D17506
llvm-svn: 261635
2016-02-23 13:41:13 +00:00
Michael Zuckerman
38a2727764
[CLANG] [AVX512] [BUILTIN] Adding prol{d|q|w}{128|256|512} builtin to clang .
...
Differential Revision: http://reviews.llvm.org/D16985
llvm-svn: 261516
2016-02-22 09:05:41 +00:00
Michael Zuckerman
7a33dce4ef
[CLANG] [AVX512] [BUILTIN] Adding pmovzx{b|d|w}{w|d|q}{128|256|512} builtin to clang
...
Differential Revision: http://reviews.llvm.org/D16961
llvm-svn: 261471
2016-02-21 14:00:11 +00:00
Michael Zuckerman
7cdb72f7ea
[CLANG] [AVX512] [BUILTIN] Adding pmovsx{b|d|w}{w|d|q}{128|256|512} builtin to clang
...
Differential Revision: http://reviews.llvm.org/D16955
llvm-svn: 261196
2016-02-18 09:09:34 +00:00
Eric Christopher
2b2d56f059
Provide a frontend based error for always_inline functions that require
...
target features that the caller function doesn't provide. This matches
the existing backend failure to inline functions that don't have
matching target features - and diagnoses earlier in the case of
always_inline.
Fix up a few test cases that were, in fact, invalid if you tried
to generate code from the backend with the specified target features
and add a couple of tests to illustrate what's going on.
This should fix PR25246.
llvm-svn: 252834
2015-11-12 00:44:12 +00:00
Eric Christopher
cd875efa78
Canonicalize some of the x86 builtin tests and either remove or comment
...
about optimization options.
llvm-svn: 250271
2015-10-14 05:40:21 +00:00
Asaf Badouh
93aa4c808a
[X86][AVX512VL] add AVX512VL intrinsics 4 out of 4
...
Differential Revision: http://reviews.llvm.org/D11526
llvm-svn: 243409
2015-07-28 12:04:40 +00:00
Asaf Badouh
b7cf71b63d
[X86][AVX512VL] add AVX512VL intrinsics 3 out of 4
...
http://reviews.llvm.org/D11526
llvm-svn: 243406
2015-07-28 11:14:09 +00:00
Asaf Badouh
78ee5cc8e1
[X86][AVX512VL] add AVX512VL intrinsics 2 out of 4
...
http://reviews.llvm.org/D11526
llvm-svn: 243402
2015-07-28 10:30:56 +00:00
Asaf Badouh
74da38706e
[X86][AVX512VL] add AVX512VL intrinsics 1 out of 4
...
http://reviews.llvm.org/D11526
llvm-svn: 243394
2015-07-28 08:26:14 +00:00
Igor Breger
c2d7e033d7
This is a comment-only change to test commit access
...
llvm-svn: 240931
2015-06-29 09:48:56 +00:00
Elena Demikhovsky
c563c2c61a
AVX-512: Implemented AVX-512 FMA intrinsics and tests.
...
by Igor Breger
http://reviews.llvm.org/D10797
llvm-svn: 240928
2015-06-29 09:20:57 +00:00
Elena Demikhovsky
23fccde1b1
AVX-512: Changed CC parameter in "cmp" intrinsic
...
from i8 to i32 according to the Intel Spec
llvm-svn: 236980
2015-05-11 09:03:41 +00:00
Elena Demikhovsky
bd5c8b9be9
AVX-512: FP compare intrinsics - changed type of CC parameter from i8 to i32 according to the spec.
...
Added FP compare intrinsics for SKX.
llvm-svn: 236715
2015-05-07 11:26:36 +00:00
Elena Demikhovsky
35dc8c0944
AVX-512: added intrinsics for KNL and SKX
...
by Asaf Badouh (asaf.badouh@intel.com )
llvm-svn: 235986
2015-04-28 13:28:01 +00:00
Craig Topper
2f25a5a875
[X86] Add more of the AVX512 integer comparision intrinsics. This adds 128 and 256 bit vectors of dwords and qwords.
...
llvm-svn: 227075
2015-01-26 08:11:49 +00:00
Robert Khasanov
b9f3a911c9
[AVX512] Added VPCMPEQ intrinisics to headers.
...
Added tests.
Patch by Maxim Blumenthal <maxim.blumenthal@intel.com>
llvm-svn: 219319
2014-10-08 17:18:13 +00:00