Diogo N. Sampaio
2cc01dcc2a
[ARM][FIX] Add missing f16.lane.vldN/vstN lowering
...
Summary:
Add missing D and Q lane VLDSTLane lowering
for fp16 elements.
Reviewers: efriedma, kosarev, SjoerdMeijer, ostannard
Reviewed By: efriedma
Subscribers: javed.absar, kristof.beyls, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D60874
llvm-svn: 358962
2019-04-23 09:36:39 +00:00
Diogo N. Sampaio
46651abffe
[ARM] [FIX] Add missing f16 vector operations lowering
...
Summary:
Add missing <8xhalf> shufflevectors pattern, when using concat_vector dag node.
As well, allows <8xhalf> and <4xhalf> vldup1 operations.
These instructions are required for v8.2a fp16 lowering of vmul_n_f16, vmulq_n_f16 and vmulq_lane_f16 intrinsics.
Reviewers: olista01, pbarrio, LukeGeeson, efriedma
Reviewed By: efriedma
Subscribers: efriedma, javed.absar, kristof.beyls, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D60319
llvm-svn: 358081
2019-04-10 13:28:06 +00:00
Luke Geeson
7b3fd3dded
[ARM] Added FP16 VREV Vector Instrinsic CodeGen support
...
llvm-svn: 339546
2018-08-13 08:37:41 +00:00
Sjoerd Meijer
16212a63c3
[ARM] FP16: codegen support for VTRN
...
Differential Revision: https://reviews.llvm.org/D50454
llvm-svn: 339340
2018-08-09 12:45:09 +00:00
Sjoerd Meijer
91e8b99356
[ARM] FP16: codegen support for VEXT
...
Differential Revision: https://reviews.llvm.org/D50427
llvm-svn: 339241
2018-08-08 13:26:38 +00:00
Sjoerd Meijer
27bba1453d
[ARM] FP16: vector vmov and vdup support
...
This adds codegen support for the vmov_n_f16 and vdup_n_f16 variants.
Differential Revision: https://reviews.llvm.org/D50329
llvm-svn: 339238
2018-08-08 13:11:31 +00:00
Sjoerd Meijer
b327cfbb72
[ARM] FP16: vector VMUL variants
...
This adds codegen support for the vmul_lane_f16 and vmul_n_f16 variants.
Differential Revision: https://reviews.llvm.org/D50326
llvm-svn: 339232
2018-08-08 10:27:34 +00:00
Sjoerd Meijer
39a22dbe8b
[ARM] FP16: support vector INT_TO_FP and FP_TO_INT
...
This adds codegen support for the different vcvt_f16 variants.
Differential Revision: https://reviews.llvm.org/D50393
llvm-svn: 339227
2018-08-08 09:45:34 +00:00
Sjoerd Meijer
b875f4fc1f
[ARM] FP16: support the vector vmin and vmax variants
...
Differential Revision: https://reviews.llvm.org/D50238
llvm-svn: 339221
2018-08-08 07:20:15 +00:00
Sjoerd Meijer
3a55ee2609
[ARM] FP16: codegen support for VACGT
...
Differential Revision: https://reviews.llvm.org/D50236
llvm-svn: 339148
2018-08-07 15:11:47 +00:00
Sjoerd Meijer
96990242de
[ARM] FP16: support vector zip and unzip
...
This is addressing PR38404.
Differential Revision: https://reviews.llvm.org/D50186
llvm-svn: 338835
2018-08-03 09:24:29 +00:00
Sjoerd Meijer
de46c3b80d
[ARM] FP16: support VFMA
...
This is addressing PR38404.
llvm-svn: 338830
2018-08-03 09:12:56 +00:00
Sjoerd Meijer
082b54e3ed
[ARM][NFC] Follow up of r338568
...
I disabled more tests than necessary, this enables them.
llvm-svn: 338717
2018-08-02 14:04:48 +00:00
Sjoerd Meijer
1f79255822
[ARM] Armv8.2-A FP16 vector intrinsics tests
...
Clang support for the Armv8.2-A FP16 vector intrinsic was committed in
rC328277, but this was never followed up, i.e. the LLVM part is missing.
I've raised PR38404, and this is the first step to address this. I.e.,
this adds tests for the Armv8.2-A FP16 vector intrinsic, and thus shows
which intrinsics already work, and which need further work.
Differential Revision: https://reviews.llvm.org/D50142
llvm-svn: 338568
2018-08-01 14:43:59 +00:00