]> git.ipfire.org Git - thirdparty/gcc.git/commit
arm: vst1q_types_x3 ACLE intrinsics
authorEzra Sitorus <ezra.sitorus@arm.com>
Thu, 7 Dec 2023 15:36:51 +0000 (15:36 +0000)
committerRichard Earnshaw <rearnsha@arm.com>
Thu, 7 Dec 2023 17:15:00 +0000 (17:15 +0000)
commit2d58d53c9e0eed83faa9254f8d3ec0ddd54812d8
treeecb8d519d5d9366a0c923acdae6053a7876b76f4
parent2cd0d0261ef9d0e13e20407f131f32dcb67fcdd3
arm: vst1q_types_x3 ACLE intrinsics

This patch is part of a series of patches implementing the _xN
variants of the vst1q intrinsic for the arm port. This patch adds the
_x3 variants of the vst1q intrinsic.

ACLE documents:
https://developer.arm.com/documentation/ihi0053/latest/

ISA documents:
https://developer.arm.com/documentation/ddi0487/latest/

gcc/ChangeLog:
* config/arm/arm_neon.h
(vst1q_u8_x3, vst1q_u16_x3, vst1q_u32_x3, vst1q_u64_x3): New.
(vst1q_s8_x3, vst1q_s16_x3, vst1q_s32_x3, vst1q_s64_x3): New.
(vst1q_f16_x3, vst1q_f32_x3): New.
(vst1q_p8_x3, vst1q_p16_x3, vst1q_p64_x3): New.
(vst1q_bf16_x3): New.
* config/arm/arm_neon_builtins.def (vst1q_x3): New entries.
* config/arm/neon.md (neon_vst1q_x3<mode>): New.

gcc/testsuite/ChangeLog:
* gcc.target/arm/simd/vst1q_base_xN_1.c: Add new tests.
* gcc.target/arm/simd/vst1q_bf16_xN_1.c: Add new tests.
* gcc.target/arm/simd/vst1q_fp16_xN_1.c: Add new tests.
* gcc.target/arm/simd/vst1q_p64_xN_1.c: Add new tests.
gcc/config/arm/arm_neon.h
gcc/config/arm/arm_neon_builtins.def
gcc/config/arm/neon.md
gcc/testsuite/gcc.target/arm/simd/vst1q_base_xN_1.c
gcc/testsuite/gcc.target/arm/simd/vst1q_bf16_xN_1.c
gcc/testsuite/gcc.target/arm/simd/vst1q_fp16_xN_1.c
gcc/testsuite/gcc.target/arm/simd/vst1q_p64_xN_1.c