[AArch64] Implement some saturating math NEON intrinsics.
* config/aarch64/aarch64-simd.md (aarch64_sqdmulh_laneq<mode>): Use VSDQ_HSI mode iterator. (aarch64_sqrdmulh_laneq<mode>): Likewise. (aarch64_sq<r>dmulh_laneq<mode>_internal): New define_insn. * config/aarch64/aarch64-simd-builtins.def (sqdmulh_laneq): Use BUILTIN_VDQHS macro. (sqrdmulh_laneq): Likewise. * config/aarch64/arm_neon.h (vqdmlalh_laneq_s16): New intrinsic. (vqdmlals_laneq_s32): Likewise. (vqdmlslh_laneq_s16): Likewise. (vqdmlsls_laneq_s32): Likewise. (vqdmulhh_laneq_s16): Likewise. (vqdmulhs_laneq_s32): Likewise. (vqrdmulhh_laneq_s16): Likewise. (vqrdmulhs_laneq_s32): Likewise. * gcc.target/aarch64/simd/vqdmlalh_laneq_s16_1.c: New test. * gcc.target/aarch64/simd/vqdmlals_laneq_s32_1.c: Likewise. * gcc.target/aarch64/simd/vqdmlslh_laneq_s16_1.c: Likewise. * gcc.target/aarch64/simd/vqdmlsls_laneq_s32_1.c: Likewise. * gcc.target/aarch64/simd/vqdmulhh_laneq_s16_1.c: Likewise. * gcc.target/aarch64/simd/vqdmulhs_laneq_s32_1.c: Likewise. * gcc.target/aarch64/simd/vqrdmulhh_laneq_s16_1.c: Likewise. * gcc.target/aarch64/simd/vqrdmulhs_laneq_s32_1.c: Likewise. From-SVN: r213635
Showing
Please
register
or
sign in
to comment