diff options
author | Robin Dapp <rdapp@linux.ibm.com> | 2022-06-24 15:17:08 +0200 |
---|---|---|
committer | Robin Dapp <rdapp@linux.ibm.com> | 2022-08-29 11:15:09 +0200 |
commit | 34895b6606561a36ffded81efee2904feb9c1bfd (patch) | |
tree | 7a3c3d80822a0e9938628817d971b3432fbd31e9 /gcc/value-range.cc | |
parent | bde28df1933b972e080613a00b6819413aefa2e6 (diff) | |
download | gcc-34895b6606561a36ffded81efee2904feb9c1bfd.zip gcc-34895b6606561a36ffded81efee2904feb9c1bfd.tar.gz gcc-34895b6606561a36ffded81efee2904feb9c1bfd.tar.bz2 |
s390: Recognize reverse/element swap permute patterns.
This adds functions to recognize reverse/element swap permute patterns
for vler, vster as well as vpdi and rotate.
gcc/ChangeLog:
* config/s390/s390.cc (expand_perm_with_vpdi): Recognize swap pattern.
(is_reverse_perm_mask): New function.
(expand_perm_with_rot): Recognize reverse pattern.
(expand_perm_with_vstbrq): New function.
(expand_perm_with_vster): Use vler/vster for element reversal on z15.
(vectorize_vec_perm_const_1): Use.
(s390_vectorize_vec_perm_const): Add expand functions.
* config/s390/vx-builtins.md: Prefer vster over vler.
gcc/testsuite/ChangeLog:
* gcc.target/s390/vector/vperm-rev-z14.c: New test.
* gcc.target/s390/vector/vperm-rev-z15.c: New test.
* gcc.target/s390/zvector/vec-reve-store-byte.c: Adjust test
expectation.
Diffstat (limited to 'gcc/value-range.cc')
0 files changed, 0 insertions, 0 deletions