Vyacheslav Klochkov
6daefcf626
X86-FMA3: Implemented commute transformation for EVEX/AVX512 FMA3 opcodes.
...
This helped to improved memory-folding and register coalescing optimizations.
Also, this patch fixed the tracker #17229 .
Reviewer: Craig Topper.
Differential Revision: https://reviews.llvm.org/D23108
llvm-svn: 278431
2016-08-11 22:07:33 +00:00
Craig Topper
6bcbf5338c
[AVX512] Cleanup FMA operand order in patterns to match the VEX versions and to really be 213, 231, and 132.
...
llvm-svn: 276613
2016-07-25 07:20:28 +00:00
Craig Topper
f4151bea72
[AVX512] Add initial support for the Execution Domain fixing pass to change some EVEX instructions.
...
llvm-svn: 276393
2016-07-22 05:00:52 +00:00
Igor Breger
dd6522c653
AVX512 : Change v8i1 bitconvert GR8 pattern, remove unnecessary movzbl instruction.
...
code example , previous implementation.
movzbl %dil, %eax
kmovw %eax, %k0
new code
kmovw %edi, %k0
Differential Revision: http://reviews.llvm.org/D16287
llvm-svn: 258045
2016-01-18 12:02:45 +00:00
Igor Breger
a7a8e9a018
AVX-512: Implemented missing encoding and intrinsics for FMA instructions
...
Added tests for DAG lowering ,encoding and intrinsics
Differential Revision: http://reviews.llvm.org/D10796
llvm-svn: 240926
2015-06-29 09:10:00 +00:00
Ahmed Bougacha
f1eccbecf8
[X86] Accept hasAVX512() as well as hasFMA() when generating FMA.
...
We don't always have FMA, for example when using 'clang -mavx512f'
without an explicit CPU.
Also check for an explicit +avx512f instead of CPUs in a couple
related tests.
llvm-svn: 240616
2015-06-25 00:44:46 +00:00
Elena Demikhovsky
d8fda62247
AVX-512: blank lines, duplicated tests, no functional changes
...
see comments http://reviews.llvm.org/D6835
llvm-svn: 233528
2015-03-30 09:29:28 +00:00
Elena Demikhovsky
7b0dd39db6
AVX-512: Added FMA intrinsics with rounding mode
...
By Asaf Badouh and Elena Demikhovsky
Added special nodes for rounding: FMADD_RND, FMSUB_RND..
It will prevent merge between nodes with rounding and other standard nodes.
llvm-svn: 227303
2015-01-28 10:21:27 +00:00
Elena Demikhovsky
fcea06acb5
AVX-512: Added FMA instructions, intrinsics an tests for KNL and SKX targets
...
by Asaf Badouh
http://reviews.llvm.org/D6456
llvm-svn: 224764
2014-12-23 10:30:39 +00:00
Adam Nemet
241c3252c3
[AVX512] Add test for FMA masking instrinsics
...
llvm-svn: 215665
2014-08-14 17:13:33 +00:00
Adam Nemet
6fa675754a
[AVX512] Switch FMA intrinsics to the masking version
...
This does the renaming and updates the lowering logic.
Part of <rdar://problem/17688758>
llvm-svn: 215664
2014-08-14 17:13:30 +00:00
Cameron McInally
ad41f1f693
Add AVX512 unmasked FMA intrinsics and support.
...
llvm-svn: 194824
2013-11-15 17:01:14 +00:00