aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/openmp.c
diff options
context:
space:
mode:
authorJonathan Wright <jonathan.wright@arm.com>2021-11-09 12:47:18 +0000
committerJonathan Wright <jonathan.wright@arm.com>2021-11-11 15:34:51 +0000
commit80ee260d5b573457cfff35279cf4895543532bc1 (patch)
tree738226172d1a5da67b2b5ae4747354b162adb61e /gcc/fortran/openmp.c
parent7bde2a6ecd7c7ce7930fe048ae43a5d177d91b39 (diff)
downloadgcc-80ee260d5b573457cfff35279cf4895543532bc1.zip
gcc-80ee260d5b573457cfff35279cf4895543532bc1.tar.gz
gcc-80ee260d5b573457cfff35279cf4895543532bc1.tar.bz2
aarch64: Use type-qualified builtins for [R]SUBHN[2] Neon intrinsics
Declare unsigned type-qualified builtins and use them to implement (rounding) halving-narrowing-subtract Neon intrinsics. This removes the need for many casts in arm_neon.h. gcc/ChangeLog: 2021-11-09 Jonathan Wright <jonathan.wright@arm.com> * config/aarch64/aarch64-simd-builtins.def: Declare unsigned builtins for [r]subhn[2]. * config/aarch64/arm_neon.h (vsubhn_s16): Remove unnecessary cast. (vsubhn_s32): Likewise. (vsubhn_s64): Likewise. (vsubhn_u16): Use type-qualified builtin and remove casts. (vsubhn_u32): Likewise. (vsubhn_u64): Likewise. (vrsubhn_s16): Remove unnecessary cast. (vrsubhn_s32): Likewise. (vrsubhn_s64): Likewise. (vrsubhn_u16): Use type-qualified builtin and remove casts. (vrsubhn_u32): Likewise. (vrsubhn_u64): Likewise. (vrsubhn_high_s16): Remove unnecessary cast. (vrsubhn_high_s32): Likewise. (vrsubhn_high_s64): Likewise. (vrsubhn_high_u16): Use type-qualified builtin and remove casts. (vrsubhn_high_u32): Likewise. (vrsubhn_high_u64): Likewise. (vsubhn_high_s16): Remove unnecessary cast. (vsubhn_high_s32): Likewise. (vsubhn_high_s64): Likewise. (vsubhn_high_u16): Use type-qualified builtin and remove casts. (vsubhn_high_u32): Likewise. (vsubhn_high_u64): Likewise.
Diffstat (limited to 'gcc/fortran/openmp.c')
0 files changed, 0 insertions, 0 deletions