]> git.ipfire.org Git - thirdparty/gcc.git/commit
aarch64: Use RTL builtins for vmull[_high]_p8 intrinsics
authorJonathan Wright <jonathan.wright@arm.com>
Thu, 4 Feb 2021 23:00:00 +0000 (23:00 +0000)
committerJonathan Wright <jonathan.wright@arm.com>
Fri, 30 Apr 2021 17:40:22 +0000 (18:40 +0100)
commitf546e0d3d0316aa76a45de1f548591bde7308c41
tree91cb2cb9a9545cb19a8601ade47e8496895f8e5a
parent5672fe9da4ab4e8787c288b64008251065c67c98
aarch64: Use RTL builtins for vmull[_high]_p8 intrinsics

Rewrite vmull[_high]_p8 Neon intrinsics to use RTL builtins rather
than inline assembly code, allowing for better scheduling and
optimization.

gcc/ChangeLog:

2021-02-05  Jonathan Wright  <joanthan.wright@arm.com>

* config/aarch64/aarch64-simd-builtins.def: Add pmull[2]
builtin generator macros.
* config/aarch64/aarch64-simd.md (aarch64_pmullv8qi): Define.
(aarch64_pmull_hiv16qi_insn): Define.
(aarch64_pmull_hiv16qi): Define.
* config/aarch64/arm_neon.h (vmull_high_p8): Use RTL builtin
instead of inline asm.
(vmull_p8): Likewise.
gcc/config/aarch64/aarch64-simd-builtins.def
gcc/config/aarch64/aarch64-simd.md
gcc/config/aarch64/arm_neon.h