[2/3] s390: Enable vcond_mask for 128-bit ops
Checks
Context |
Check |
Description |
linaro-tcwg-bot/tcwg_gcc_build--master-arm |
success
|
Build passed
|
linaro-tcwg-bot/tcwg_gcc_build--master-aarch64 |
success
|
Build passed
|
linaro-tcwg-bot/tcwg_gcc_check--master-arm |
success
|
Test passed
|
linaro-tcwg-bot/tcwg_gcc_check--master-aarch64 |
success
|
Test passed
|
Commit Message
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.
---
Bootstrapped and regtested on s390. Ok for mainline?
gcc/config/s390/vector.md | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
@@ -756,12 +756,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);")