aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorStefan Schulze Frielinghaus <stefansf@gcc.gnu.org>2024-07-16 10:41:46 +0200
committerStefan Schulze Frielinghaus <stefansf@gcc.gnu.org>2024-07-16 10:41:46 +0200
commit6d1095788e23c27061421c7d180209264ebb32f7 (patch)
tree9e242cb6b5e0812610363505df5e8a6f0e0a0233 /gcc
parent1b575bb24a7a3d2b00197dd5deb4c26b313f442b (diff)
downloadgcc-6d1095788e23c27061421c7d180209264ebb32f7.zip
gcc-6d1095788e23c27061421c7d180209264ebb32f7.tar.gz
gcc-6d1095788e23c27061421c7d180209264ebb32f7.tar.bz2
s390: Enable vcond_mask for 128-bit ops
In preparation of dropping vcond{,u,eq} optabs https://gcc.gnu.org/pipermail/gcc-patches/2024-June/654690.html enable 128-bit operands for vcond_mask---including integer as well as floating point. This fixes partially PR115519 w.r.t. autovec-long-double-signaling-*.c tests. gcc/ChangeLog: * config/s390/vector.md: Enable vcond_mask for 128-bit ops.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/s390/vector.md8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/config/s390/vector.md b/gcc/config/s390/vector.md
index 7560117..c8e8029 100644
--- a/gcc/config/s390/vector.md
+++ b/gcc/config/s390/vector.md
@@ -760,12 +760,12 @@
})
(define_expand "vcond_mask_<mode><tointvec>"
- [(set (match_operand:V 0 "register_operand" "")
- (if_then_else:V
+ [(set (match_operand:VT 0 "register_operand" "")
+ (if_then_else:VT
(eq (match_operand:<TOINTVEC> 3 "register_operand" "")
(match_dup 4))
- (match_operand:V 2 "register_operand" "")
- (match_operand:V 1 "register_operand" "")))]
+ (match_operand:VT 2 "register_operand" "")
+ (match_operand:VT 1 "register_operand" "")))]
"TARGET_VX"
"operands[4] = CONST0_RTX (<TOINTVEC>mode);")