]> git.ipfire.org Git - thirdparty/gcc.git/commit
s390: Vector shift: Add 128-bit integer support
authorStefan Schulze Frielinghaus <stefansf@gcc.gnu.org>
Mon, 20 Jan 2025 09:01:10 +0000 (10:01 +0100)
committerStefan Schulze Frielinghaus <stefansf@gcc.gnu.org>
Mon, 20 Jan 2025 09:01:10 +0000 (10:01 +0100)
commit10c52b3866572df9f84e41d8045cbf8c6ce6ab04
tree6646d5cd3ae2e0caff1e8e7369cc339c9387ac33
parentec226016ca4954a431409699a52850717617bbfa
s390: Vector shift: Add 128-bit integer support

Add 128-bit vector shift support.  Deprecate vector shift by byte
builtins where the shift amount is not of type unsigned character.

gcc/ChangeLog:

* config/s390/s390-builtins.def: Add 128-bit variants.
* config/s390/s390-builtin-types.def: Update accordingly.
* config/s390/vector.md (<vec_shifts_name><mode>3): Add 128-bit
variants.
* config/s390/vx-builtins.md: Ditto.

gcc/testsuite/ChangeLog:

* gcc.target/s390/vector/vec-shift-10.c: New test.
* gcc.target/s390/vector/vec-shift-11.c: New test.
* gcc.target/s390/vector/vec-shift-12.c: New test.
* gcc.target/s390/vector/vec-shift-3.c: New test.
* gcc.target/s390/vector/vec-shift-4.c: New test.
* gcc.target/s390/vector/vec-shift-5.c: New test.
* gcc.target/s390/vector/vec-shift-6.c: New test.
* gcc.target/s390/vector/vec-shift-7.c: New test.
* gcc.target/s390/vector/vec-shift-8.c: New test.
* gcc.target/s390/vector/vec-shift-9.c: New test.
14 files changed:
gcc/config/s390/s390-builtin-types.def
gcc/config/s390/s390-builtins.def
gcc/config/s390/vector.md
gcc/config/s390/vx-builtins.md
gcc/testsuite/gcc.target/s390/vector/vec-shift-10.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vec-shift-11.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vec-shift-12.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vec-shift-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vec-shift-4.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vec-shift-5.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vec-shift-6.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vec-shift-7.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vec-shift-8.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vector/vec-shift-9.c [new file with mode: 0644]