On 6/9/21 2:47 PM, Robin Dapp wrote:
>> I think the real problem is the expander name. That's why it could not be
>> found by optab. The second
>> mode needs to be the int vector mode of op3. With that change the testcases
>> work as expected:
>>
>> diff --git a/gcc/config/s390/vector.md b/gcc/co
6a8148e0a4880e33b Mon Sep 17 00:00:00 2001
From: Robin Dapp
Date: Tue, 8 Jun 2021 11:49:26 +0200
Subject: [PATCH] s390: Add more vcond_mask patterns.
Add vcond_mask patterns that allow another mode for the condition/mask
than the source and target so e.g. boolean conditions become possible:
Hi Robin,
On 5/5/21 5:18 PM, Robin Dapp wrote:
...
> diff --git a/gcc/config/s390/vector.md b/gcc/config/s390/vector.md
> index c80d582a300..7c730432d80 100644
> --- a/gcc/config/s390/vector.md
> +++ b/gcc/config/s390/vector.md
> @@ -36,6 +36,7 @@
> (define_mode_iterator V_HW2 [V16QI V8HI V4SI V
Hi,
this patch adds vcond_mask patterns with mixed mode for the
condition/mask and source, target so e.g. boolean conditions become
possible:
vtarget = bool_cond ? vsource1 : vsource2.
Is it OK for trunk?
Regards
Robin
gcc/ChangeLog:
* config/s390/vector.md
(vcond_mask_): Add