Igor Breger
defab3c1ef
AVX512: vpextrb/w/d/q and vpinsrb/w/d/q implementation.
...
This instructions doesn't have intrincis.
Added tests for lowering and encoding.
Differential Revision: http://reviews.llvm.org/D12317
llvm-svn: 249688
2015-10-08 12:55:01 +00:00
Igor Breger
1a6fd1cc0f
AVX512: Change encoding of vpshuflw and vpshufhw instructions. Implement WIG as W0 and not W1, like all other instruction have been implemented.
...
Add encoding tests.
Differential Revision: http://reviews.llvm.org/D13471
llvm-svn: 249521
2015-10-07 06:31:18 +00:00
Igor Breger
78741a1b1e
AVX512: Implemented encoding and intrinsics for VPERMILPS/PD instructions.
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D12690
llvm-svn: 249261
2015-10-04 07:20:41 +00:00
Asaf Badouh
eaf2da14bf
[X86][AVX512] add masked version for RSQRT14 & RCP14 Scalar FP
...
Differential Revision: http://reviews.llvm.org/D12524
llvm-svn: 248147
2015-09-21 10:23:53 +00:00
Igor Breger
b7e1f9d680
AVX512: Implemented encoding and intrinsics for vcmpss/sd.
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D12593
llvm-svn: 248121
2015-09-20 15:15:10 +00:00
Asaf Badouh
2744d21fb8
[X86][AVX512] extend support in Scalar conversion
...
add scalar FP to Int conversion with truncation intrinsics
add scalar conversion FP32 from/to FP64 intrinsics
add rounding mode and SAE mode encoding for these intrinsics
Differential Revision: http://reviews.llvm.org/D12665
llvm-svn: 248117
2015-09-20 14:31:19 +00:00
Igor Breger
4c4cd789c9
AVX512: vsqrtss/sd encoding and intrinsics implementation.
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D12102
llvm-svn: 248116
2015-09-20 09:13:41 +00:00
Asaf Badouh
572bbceecc
[X86][AVX512DQ] Add fpclass instruction
...
Differential Revision: http://reviews.llvm.org/D12931
llvm-svn: 248115
2015-09-20 08:46:07 +00:00
Igor Breger
0ede3cbb5c
AVX512: Implement instructions encoding, lowering and intrinsics
...
vinserti64x4, vinserti64x2, vinserti32x8, vinserti32x4, vinsertf64x4, vinsertf64x2, vinsertf32x8, vinsertf32x4
Added tests for encoding, lowering and intrinsics.
Differential Revision: http://reviews.llvm.org/D11893
llvm-svn: 248111
2015-09-20 06:52:42 +00:00
Igor Breger
7f69a99c54
AVX512: Implemented encoding and intrinsics for
...
vextracti64x4 ,vextracti64x2, vextracti32x8, vextracti32x4, vextractf64x4, vextractf64x2, vextractf32x8, vextractf32x4
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D11802
llvm-svn: 247276
2015-09-10 12:54:54 +00:00
Renato Golin
db7ea86bf4
Revert "AVX512: Implemented encoding and intrinsics for vextracti64x4 ,vextracti64x2, vextracti32x8, vextracti32x4, vextractf64x4, vextractf64x2, vextractf32x8, vextractf32x4 Added tests for intrinsics and encoding."
...
This reverts commit r247149, as it was breaking numerous buildbots of varied architectures.
llvm-svn: 247177
2015-09-09 19:44:40 +00:00
Igor Breger
ac29a82921
AVX512: Implemented encoding and intrinsics for
...
vextracti64x4 ,vextracti64x2, vextracti32x8, vextracti32x4, vextractf64x4, vextractf64x2, vextractf32x8, vextractf32x4
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D11802
llvm-svn: 247149
2015-09-09 14:35:09 +00:00
Igor Breger
a54a1a84dd
AVX512: kunpck encoding implementation
...
Added tests for encoding.
Differential Revision: http://reviews.llvm.org/D12061
llvm-svn: 247010
2015-09-08 13:10:00 +00:00
Igor Breger
0dcd8bcf24
AVX512: Implemented encoding and intrinsics for vplzcntq, vplzcntd, vpconflictq, vpconflictd
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D11931
llvm-svn: 246750
2015-09-03 09:05:31 +00:00
Asaf Badouh
d2c3599c5f
[X86][AVX512VLBW] add support in byte shift and SAD
...
add byte shift left/right
add SAD - compute sum of absolute differences
Differential Revision: http://reviews.llvm.org/D12479
llvm-svn: 246654
2015-09-02 14:21:54 +00:00
Igor Breger
1e58e8adf6
AVX512: Implemented encoding and intrinsics for VGETMANTPD/S , VGETMANTSD/S instructions
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D11593
llvm-svn: 246642
2015-09-02 11:18:55 +00:00
Igor Breger
a6297c701e
AVX512: Implemented encoding and intrinsics for vshufps/d.
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D11709
llvm-svn: 246640
2015-09-02 10:50:58 +00:00
Igor Breger
5ea0a68115
AVX512: ktest implemantation
...
Added tests for encoding.
Differential Revision: http://reviews.llvm.org/D11979
llvm-svn: 246439
2015-08-31 13:30:19 +00:00
Igor Breger
f3ded811b2
AVX512: Implemented encoding and intrinsics for vdbpsadbw
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D12491
llvm-svn: 246436
2015-08-31 13:09:30 +00:00
Igor Breger
59ac339357
AVX512: kadd implementation
...
Added tests for encoding.
Differential Revision: http://reviews.llvm.org/D11973
llvm-svn: 246432
2015-08-31 11:50:23 +00:00
Igor Breger
98a045c978
AVX512: Add encoding tests for vscatter instructions
...
Differential Revision: http://reviews.llvm.org/D11941
llvm-svn: 246431
2015-08-31 11:33:50 +00:00
Igor Breger
2ae0fe3ac3
AVX512: Implemented encoding and intrinsics for vpalignr
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D12270
llvm-svn: 246428
2015-08-31 11:14:02 +00:00
Michael Zuckerman
9beca2e7e2
[X86] Add support for mmword memory operand size for Intel-syntax x86 assembly
...
Differential Revision: http://reviews.llvm.org/D12151
llvm-svn: 245835
2015-08-24 10:26:54 +00:00
Rafael Espindola
c30c7c493f
Fix symbol value computation when part of the expression is weak.
...
This matches the behaviour of the gnu assembler and is part of
fixing pr24486.
llvm-svn: 245576
2015-08-20 16:18:30 +00:00
Marina Yatsina
bce1ab67a5
[X86] Fix FBLD and FBSTP
...
FBLD and FBSTP should receive TBYTE because it is defined as
FBLD m80
FBSTP m80
Differential Revision: http://reviews.llvm.org/D11748
llvm-svn: 245553
2015-08-20 11:51:24 +00:00
Marina Yatsina
7a4e1ba737
[X86] Fix bug in COMISD and COMISS definition in td files
...
COMISD should receive QWORD because it is defined as
(V)COMISD xmm1, xmm2/m64
COMISS should receive DWORD because it is defined as
(V)COMISS xmm1, xmm2/m32
Differential Revision: http://reviews.llvm.org/D11712
llvm-svn: 245551
2015-08-20 11:21:36 +00:00
Davide Italiano
96887f755b
[MC] Convert the last test using macho-dump under X86/ to llvm-readobj.
...
llvm-svn: 244732
2015-08-12 10:36:16 +00:00
Marina Yatsina
8c997af103
[X86] Add SAL mnemonics for Intel syntax
...
SAL and SHL instructions perform the same operation
Differential Revision: http://reviews.llvm.org/D11882
llvm-svn: 244588
2015-08-11 12:05:06 +00:00
Marina Yatsina
d353c45eaf
[X86] Fix REPE, REPZ, REPNZ for intel syntax
...
REPE, REPZ, REPNZ, REPNE should have mnemonics for Intel syntax as well.
Currently using these instructions causes compilation errors for Intel syntax.
Differential Revision: http://reviews.llvm.org/D11794
llvm-svn: 244584
2015-08-11 11:28:10 +00:00
Marina Yatsina
f6bc15d763
[X86] Fix imul alias for intel syntax
...
The "imul reg, imm" alias is not defined for intel syntax.
In intel syntax there is no w/l/q suffix for the imul instruction.
Differential Revision: http://reviews.llvm.org/D11887
llvm-svn: 244582
2015-08-11 10:43:04 +00:00
Duncan P. N. Exon Smith
55ca964e94
DI: Disallow uniquable DICompileUnits
...
Since r241097, `DIBuilder` has only created distinct `DICompileUnit`s.
The backend is liable to start relying on that (if it hasn't already),
so make uniquable `DICompileUnit`s illegal and automatically upgrade old
bitcode. This is a nice cleanup, since we can remove an unnecessary
`DenseSet` (and the associated uniquing info) from `LLVMContextImpl`.
Almost all the testcases were updated with this script:
git grep -e '= !DICompileUnit' -l -- test |
grep -v test/Bitcode |
xargs sed -i '' -e 's,= !DICompileUnit,= distinct !DICompileUnit,'
I imagine something similar should work for out-of-tree testcases.
llvm-svn: 243885
2015-08-03 17:26:41 +00:00
Igor Breger
47a7b95b1d
AVX512: Add encoding tests to vptestnm instructions
...
Differential Revision: http://reviews.llvm.org/D11521
llvm-svn: 243391
2015-07-28 07:00:00 +00:00
Igor Breger
8352a0ddf2
AVX512: Implemented encoding and intrinsics for VGETEXPSS/D instructions
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D11528
llvm-svn: 243390
2015-07-28 06:53:28 +00:00
Igor Breger
f2460112ad
Implemented encoding and intrinsics of the following instructions
...
vunpckhps/pd, vunpcklps/pd,
vpunpcklbw, vpunpckhbw, vpunpcklwd, vpunpckhwd, vpunpckldq, vpunpckhdq, vpunpcklqdq, vpunpckhqdq
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D11509
llvm-svn: 243246
2015-07-26 14:41:44 +00:00
Igor Breger
074a64e72c
AVX-512: Implemented encoding , DAG lowering and intrinsics for Integer Truncate with/without saturation
...
Added tests for DAG lowering ,encoding and intrinsic
Differential Revision: http://reviews.llvm.org/D11218
llvm-svn: 243122
2015-07-24 17:24:15 +00:00
Michael Kuperstein
ffcc7663a2
[X86] Fix order of operands for ins and outs instructions when parsing intel syntax
...
Patch by: marina.yatsina@intel.com
Differential Revision: http://reviews.llvm.org/D11337
llvm-svn: 243001
2015-07-23 10:23:48 +00:00
Chandler Carruth
fe414353db
Revert r242990: "AVX-512: Implemented encoding , DAG lowering and ..."
...
This commit broke the build. Numerous build bots broken, and it was
blocking my progress so reverting.
It should be trivial to reproduce -- enable the BPF backend and it
should fail when running llvm-tblgen.
llvm-svn: 242992
2015-07-23 08:03:44 +00:00
Igor Breger
da1b2ea955
AVX-512: Implemented encoding , DAG lowering and intrinsics for Integer Truncate with/without saturation
...
Added tests for DAG lowering ,encoding and intrinsic
Differential Revision: http://reviews.llvm.org/D11218
llvm-svn: 242990
2015-07-23 07:39:21 +00:00
Asaf Badouh
a5b2e5e2a7
[X86][AVX512] add reduce/range/scalef/rndScale
...
include encoding and intrinsics
Differential Revision: http://reviews.llvm.org/D11222
llvm-svn: 242896
2015-07-22 12:00:43 +00:00
Michael Kuperstein
75216a8d14
Fix test from r242886 to use the right triple.
...
llvm-svn: 242889
2015-07-22 11:19:22 +00:00
Michael Kuperstein
23d952b611
[X86] Add .intel_syntax noprefix directive to intel-syntax x86 asm output
...
Patch by: michael.zuckerman@intel.com
Differential Revision: http://reviews.llvm.org/D11223
llvm-svn: 242886
2015-07-22 10:49:44 +00:00
Igor Breger
f7fd547e27
AVX512 : Implemented VPMADDUBSW and VPMADDWD instruction ,
...
Added tests for intrinsics and encoding.
Differential Revision: http://reviews.llvm.org/D11351
llvm-svn: 242761
2015-07-21 07:11:28 +00:00
Michael Kuperstein
69e40a4c85
[X86] Add support for tbyte memory operand size for Intel-syntax x86 assembly
...
Differential Revision: http://reviews.llvm.org/D11257
Patch by: marina.yatsina@intel.com
llvm-svn: 242639
2015-07-19 11:03:08 +00:00
Elena Demikhovsky
0f370936a0
AVX-512: Added all AVX-512 forms of Vector Convert for Float/Double/Int/Long types.
...
In this patch I have only encoding. Intrinsics and DAG lowering will be in the next patch.
I temporary removed the old intrinsics test (just to split this patch).
Half types are not covered here.
Differential Revision: http://reviews.llvm.org/D11134
llvm-svn: 242023
2015-07-13 13:26:20 +00:00
David Majnemer
2603a8fa24
[llvm-objdump] Require that jump targets shown in -d are functions
...
Don't let the disassembler pick call <.text> if a function happens to
live at the start of the section by only using function symbols.
llvm-svn: 241830
2015-07-09 18:11:40 +00:00
David Majnemer
81afca6bf7
[llvm-objdump] Print the call target next to the instruction
...
GNU binutils provides this behavior. objdump -r doesn't really help
when you aren't dealing with relocation object files.
llvm-svn: 241631
2015-07-07 22:06:59 +00:00
Asaf Badouh
c6f3c82ffc
[X86][AVX512] Multiply Packed Unsigned Integers with Round and Scale
...
pmulhrsw
review:
http://reviews.llvm.org/D10948
llvm-svn: 241443
2015-07-06 14:03:40 +00:00
Asaf Badouh
73f26f8ffc
[x86][AVX512] add Multiply High Op
...
include encoding and intrinsics tests.
review
http://reviews.llvm.org/D10896
llvm-svn: 241406
2015-07-05 12:23:20 +00:00
Craig Topper
de8395229a
[X86] Add proper 64-bit mode checks to jrcxz and jcxz.
...
llvm-svn: 241381
2015-07-04 00:01:07 +00:00
Igor Breger
15820b072b
AVX-512: Implemented missing encoding for FMA scalar instructions
...
Added tests for encoding
Differential Revision: http://reviews.llvm.org/D10865
llvm-svn: 241159
2015-07-01 13:24:28 +00:00