[ARM][MVE] Add complex vector intrinsics
authorMikhail Maltsev <mikhail.maltsev@arm.com>
Mon, 9 Dec 2019 12:05:59 +0000 (12:05 +0000)
committerMikhail Maltsev <mikhail.maltsev@arm.com>
Mon, 9 Dec 2019 12:05:59 +0000 (12:05 +0000)
commit0d1490bf6a68d9397a6402c8f702e30f07adacf1
tree0f7db4dee46916f7a5150ea8384e452d2db3e1a6
parentd6642ed1c867f97fdf951aac751c7854fbc7c51f
[ARM][MVE] Add complex vector intrinsics

Summary:
This patch adds intrinsics for the following MVE instructions:
* VCADD, VHCADD
* VCMUL
* VCMLA

Each of the above 3 groups has a corresponding new LLVM IR intrinsic.

Reviewers: simon_tatham, MarkMurrayARM, ostannard, dmgreen

Reviewed By: MarkMurrayARM

Subscribers: merge_guards_bot, kristof.beyls, hiraditya, cfe-commits, llvm-commits

Tags: #clang, #llvm

Differential Revision: https://reviews.llvm.org/D71190
clang/include/clang/Basic/arm_mve.td
clang/test/CodeGen/arm-mve-intrinsics/vcaddq.c [new file with mode: 0644]
clang/test/CodeGen/arm-mve-intrinsics/vcmlaq.c [new file with mode: 0644]
clang/test/CodeGen/arm-mve-intrinsics/vcmulq.c [new file with mode: 0644]
clang/test/CodeGen/arm-mve-intrinsics/vhcaddq.c [new file with mode: 0644]
llvm/include/llvm/IR/IntrinsicsARM.td
llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
llvm/test/CodeGen/Thumb2/mve-intrinsics/vcaddq.ll [new file with mode: 0644]
llvm/test/CodeGen/Thumb2/mve-intrinsics/vcmlaq.ll [new file with mode: 0644]
llvm/test/CodeGen/Thumb2/mve-intrinsics/vcmulq.ll [new file with mode: 0644]