aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorxiezhiheng <xiezhiheng@huawei.com>2020-08-27 09:07:26 +0100
committerRichard Sandiford <richard.sandiford@arm.com>2020-08-27 09:07:26 +0100
commitd7738d4fde5b248b6814f5dd20617eecd33601df (patch)
tree7659313d0ab020220998574caf2438ec445aa825 /gcc
parentff7463172e564c5dd2432d7af8eaa0124cbd4af7 (diff)
downloadgcc-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.def44
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)