aboutsummaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorJuergen Christ <jchrist@linux.ibm.com>2024-04-01 13:34:37 +0200
committerJuergen Christ <jchrist@linux.ibm.com>2024-04-09 18:06:05 +0200
commit1f719aa7c0d35b47f3d15a54f074718b78e92bb0 (patch)
tree1e07e6584ab70066b84fa8b7a2d8ed565e3d3813 /libgcc
parent8075477f81ae8d0abf64b80dfbd179151f91b417 (diff)
downloadgcc-1f719aa7c0d35b47f3d15a54f074718b78e92bb0.zip
gcc-1f719aa7c0d35b47f3d15a54f074718b78e92bb0.tar.gz
gcc-1f719aa7c0d35b47f3d15a54f074718b78e92bb0.tar.bz2
s390x: Optimize vector permute with constant indexes
Loop vectorizer can generate vector permutes with constant indexes where all indexes are equal. Optimize this case to use vector replicate instead of vector permute. gcc/ChangeLog: * config/s390/s390.cc (expand_perm_as_replicate): Implement. (vectorize_vec_perm_const_1): Call new function. * config/s390/vx-builtins.md (vec_splat<mode>): Change to... (@vec_splat<mode>): ...this. gcc/testsuite/ChangeLog: * gcc.target/s390/vector/vec-expand-replicate.c: New test. Signed-off-by: Juergen Christ <jchrist@linux.ibm.com>
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions