[PATCH] s390: Add more vcond_mask patterns.

Andreas Krebbel krebbel@linux.ibm.com
Wed Jun 9 15:14:53 GMT 2021


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/config/s390/vector.md
>> index c80d582a300d..ab605b3d2cf3 100644
>> --- a/gcc/config/s390/vector.md
>> +++ b/gcc/config/s390/vector.md
>> @@ -715,7 +715,7 @@
>>     DONE;
>>   })
>>
>> -(define_expand "vcond_mask_<mode><mode>"
>> +(define_expand "vcond_mask_<mode><tointvec>"
>>     [(set (match_operand:V 0 "register_operand" "")
>>          (if_then_else:V
>>           (eq (match_operand:<TOINTVEC> 3 "register_operand" "")
> 
> Ah, yes, it's indeed much simpler that way.  Attached the revised 
> version with the small change and the new tests as a single patch now.
> 
> Regtest and bootstrap was successful.

Ok. Thanks!

Andreas


More information about the Gcc-patches mailing list