]> git.ipfire.org Git - thirdparty/gcc.git/commit
s390: arch15: Vector eval
authorStefan Schulze Frielinghaus <stefansf@gcc.gnu.org>
Mon, 20 Jan 2025 09:01:09 +0000 (10:01 +0100)
committerStefan Schulze Frielinghaus <stefansf@gcc.gnu.org>
Mon, 20 Jan 2025 09:01:09 +0000 (10:01 +0100)
commit7fb7b36293519ed68481ca8477244b5a4f142d4a
tree3b755b5b7fe52ab202a80e686156f831a954daee
parentadeb6ecc5d906ce2389400085f3262b4a248c71c
s390: arch15: Vector eval

Add instruction veval and builtin vec_evaluate.

gcc/ChangeLog:

* config/s390/s390-builtins.def (s390_vec_evaluate): Add.
(s390_veval): Add.
* config/s390/s390-builtin-types.def: Update accordingly.
* config/s390/s390.md (UNSPEC_VEC_VEVAL): Add.
* config/s390/vecintrin.h (vec_evaluate): Define.
* config/s390/vector.md
(*veval<mode>_<logic_op1:logic_op_stringify><logic_op2:logic_op_stringify>):
Add.
(veval<mode>): Add.

gcc/testsuite/ChangeLog:

* gcc.target/s390/vxe3/veval-1.c: New test.
* gcc.target/s390/vxe3/veval-2.c: New test.
* gcc.target/s390/vxe3/veval-3.c: New test.
* gcc.target/s390/vxe3/veval-4.c: New test.
* gcc.target/s390/vxe3/veval-5.c: New test.
* gcc.target/s390/vxe3/veval-6.c: New test.
* gcc.target/s390/vxe3/veval-7.c: New test.
* gcc.target/s390/vxe3/veval-8.c: New test.
* gcc.target/s390/vxe3/veval-9.c: New test.
14 files changed:
gcc/config/s390/s390-builtin-types.def
gcc/config/s390/s390-builtins.def
gcc/config/s390/s390.md
gcc/config/s390/vecintrin.h
gcc/config/s390/vector.md
gcc/testsuite/gcc.target/s390/vxe3/veval-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vxe3/veval-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vxe3/veval-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vxe3/veval-4.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vxe3/veval-5.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vxe3/veval-6.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vxe3/veval-7.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vxe3/veval-8.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/vxe3/veval-9.c [new file with mode: 0644]