]> granicus.if.org Git - llvm/commit
[ARM] [FIX] Add missing f16 vector operations lowering
authorDiogo N. Sampaio <diogo.sampaio@arm.com>
Wed, 10 Apr 2019 13:28:06 +0000 (13:28 +0000)
committerDiogo N. Sampaio <diogo.sampaio@arm.com>
Wed, 10 Apr 2019 13:28:06 +0000 (13:28 +0000)
commitba3f83af6f4f3bd1d44fcd42399b3d932f2eebe0
tree7bf2a5f6ccec6bc72435b3173af2a8df862ab703
parent14b9e1a708da528d04d700e417dc0757c1a438f2
[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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@358081 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMISelDAGToDAG.cpp
lib/Target/ARM/ARMInstrNEON.td
test/CodeGen/ARM/armv8.2a-fp16-vector-intrinsics.ll