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