diff options
author | xiezhiheng <xiezhiheng@huawei.com> | 2020-08-27 09:07:26 +0100 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2020-08-27 09:07:26 +0100 |
commit | d7738d4fde5b248b6814f5dd20617eecd33601df (patch) | |
tree | 7659313d0ab020220998574caf2438ec445aa825 /gcc | |
parent | ff7463172e564c5dd2432d7af8eaa0124cbd4af7 (diff) | |
download | gcc-d7738d4fde5b248b6814f5dd20617eecd33601df.zip gcc-d7738d4fde5b248b6814f5dd20617eecd33601df.tar.gz gcc-d7738d4fde5b248b6814f5dd20617eecd33601df.tar.bz2 |
AArch64: Add FLAG for min/max intrinsics [PR94442]
2020-08-27 Zhiheng Xie <xiezhiheng@huawei.com>
gcc/ChangeLog:
* config/aarch64/aarch64-simd-builtins.def: Add proper FLAG
for min/max intrinsics.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/aarch64/aarch64-simd-builtins.def | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/gcc/config/aarch64/aarch64-simd-builtins.def b/gcc/config/aarch64/aarch64-simd-builtins.def index 502b83c..a9b47e4 100644 --- a/gcc/config/aarch64/aarch64-simd-builtins.def +++ b/gcc/config/aarch64/aarch64-simd-builtins.def @@ -300,36 +300,36 @@ BUILTIN_VALL (UNOP, reduc_plus_scal_, 10, ALL) /* Implemented by reduc_<maxmin_uns>_scal_<mode> (producing scalar). */ - BUILTIN_VDQIF_F16 (UNOP, reduc_smax_scal_, 10, ALL) - BUILTIN_VDQIF_F16 (UNOP, reduc_smin_scal_, 10, ALL) - BUILTIN_VDQ_BHSI (UNOPU, reduc_umax_scal_, 10, ALL) - BUILTIN_VDQ_BHSI (UNOPU, reduc_umin_scal_, 10, ALL) - BUILTIN_VHSDF (UNOP, reduc_smax_nan_scal_, 10, ALL) - BUILTIN_VHSDF (UNOP, reduc_smin_nan_scal_, 10, ALL) + BUILTIN_VDQIF_F16 (UNOP, reduc_smax_scal_, 10, NONE) + BUILTIN_VDQIF_F16 (UNOP, reduc_smin_scal_, 10, NONE) + BUILTIN_VDQ_BHSI (UNOPU, reduc_umax_scal_, 10, NONE) + BUILTIN_VDQ_BHSI (UNOPU, reduc_umin_scal_, 10, NONE) + BUILTIN_VHSDF (UNOP, reduc_smax_nan_scal_, 10, NONE) + BUILTIN_VHSDF (UNOP, reduc_smin_nan_scal_, 10, NONE) /* Implemented by <maxmin_uns><mode>3. smax variants map to fmaxnm, smax_nan variants map to fmax. */ - BUILTIN_VDQ_BHSI (BINOP, smax, 3, ALL) - BUILTIN_VDQ_BHSI (BINOP, smin, 3, ALL) - BUILTIN_VDQ_BHSI (BINOP, umax, 3, ALL) - BUILTIN_VDQ_BHSI (BINOP, umin, 3, ALL) - BUILTIN_VHSDF_DF (BINOP, smax_nan, 3, ALL) - BUILTIN_VHSDF_DF (BINOP, smin_nan, 3, ALL) + BUILTIN_VDQ_BHSI (BINOP, smax, 3, NONE) + BUILTIN_VDQ_BHSI (BINOP, smin, 3, NONE) + BUILTIN_VDQ_BHSI (BINOP, umax, 3, NONE) + BUILTIN_VDQ_BHSI (BINOP, umin, 3, NONE) + BUILTIN_VHSDF_DF (BINOP, smax_nan, 3, NONE) + BUILTIN_VHSDF_DF (BINOP, smin_nan, 3, NONE) /* Implemented by <maxmin_uns><mode>3. */ - BUILTIN_VHSDF_HSDF (BINOP, fmax, 3, ALL) - BUILTIN_VHSDF_HSDF (BINOP, fmin, 3, ALL) + BUILTIN_VHSDF_HSDF (BINOP, fmax, 3, FP) + BUILTIN_VHSDF_HSDF (BINOP, fmin, 3, FP) /* Implemented by aarch64_<maxmin_uns>p<mode>. */ - BUILTIN_VDQ_BHSI (BINOP, smaxp, 0, ALL) - BUILTIN_VDQ_BHSI (BINOP, sminp, 0, ALL) - BUILTIN_VDQ_BHSI (BINOP, umaxp, 0, ALL) - BUILTIN_VDQ_BHSI (BINOP, uminp, 0, ALL) - BUILTIN_VHSDF (BINOP, smaxp, 0, ALL) - BUILTIN_VHSDF (BINOP, sminp, 0, ALL) - BUILTIN_VHSDF (BINOP, smax_nanp, 0, ALL) - BUILTIN_VHSDF (BINOP, smin_nanp, 0, ALL) + BUILTIN_VDQ_BHSI (BINOP, smaxp, 0, NONE) + BUILTIN_VDQ_BHSI (BINOP, sminp, 0, NONE) + BUILTIN_VDQ_BHSI (BINOP, umaxp, 0, NONE) + BUILTIN_VDQ_BHSI (BINOP, uminp, 0, NONE) + BUILTIN_VHSDF (BINOP, smaxp, 0, NONE) + BUILTIN_VHSDF (BINOP, sminp, 0, NONE) + BUILTIN_VHSDF (BINOP, smax_nanp, 0, NONE) + BUILTIN_VHSDF (BINOP, smin_nanp, 0, NONE) /* Implemented by <frint_pattern><mode>2. */ BUILTIN_VHSDF (UNOP, btrunc, 2, ALL) |