s390: Allow more vcond_mask patterns.
authorRobin Dapp <rdapp@linux.ibm.com>
Thu, 10 Jun 2021 12:18:28 +0000 (14:18 +0200)
committerRobin Dapp <rdapp@linux.ibm.com>
Thu, 10 Jun 2021 12:18:28 +0000 (14:18 +0200)
commit6961091b385c5c27c4a555aad0250d3390be05bf
treeafdeb18442e1856a0a6daaf1befaa383f6f24f80
parentcbf6dcaac040b7a572b8287453101489637c626b
s390: Allow more vcond_mask patterns.

Change vcond_mask iterator as to allow the corresponding int mode for
the condition/mask so e.g. boolean conditions become possible:

  vtarget = bool_cond ? vsource1 : vsource2.

gcc/ChangeLog:

* config/s390/vector.md (vcond_mask_<mode><mode>): Change to
(vcond_mask_<mode><tointvec>): this.

gcc/testsuite/ChangeLog:

* gcc.target/s390/vector/vcond-mixed-double.c: New test.
* gcc.target/s390/vector/vcond-mixed-float.c: New test.
gcc/config/s390/vector.md
gcc/testsuite/gcc.target/s390/vector/vcond-mixed-double.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vcond-mixed-float.c [new file with mode: 0644]