aboutsummaryrefslogtreecommitdiff
path: root/gcc/value-range.h
diff options
context:
space:
mode:
authorRobin Dapp <rdapp@linux.ibm.com>2022-06-24 15:17:08 +0200
committerRobin Dapp <rdapp@linux.ibm.com>2022-08-29 11:15:09 +0200
commit34895b6606561a36ffded81efee2904feb9c1bfd (patch)
tree7a3c3d80822a0e9938628817d971b3432fbd31e9 /gcc/value-range.h
parentbde28df1933b972e080613a00b6819413aefa2e6 (diff)
downloadgcc-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.h')
0 files changed, 0 insertions, 0 deletions