]> git.ipfire.org Git - thirdparty/gcc.git/commit
s390: Add expander for uaddc/usubc optabs
authorStefan Schulze Frielinghaus <stefansf@gcc.gnu.org>
Fri, 10 Jan 2025 14:14:08 +0000 (15:14 +0100)
committerStefan Schulze Frielinghaus <stefansf@gcc.gnu.org>
Fri, 10 Jan 2025 14:14:08 +0000 (15:14 +0100)
commit8a2d5bc28089b2660310b964ef75fb05eb387f88
tree6a02391bd3b6d74453bff08a5634405d980e216c
parent016e2f00d40d76676f38fb9d268ac550e5ec878a
s390: Add expander for uaddc/usubc optabs

gcc/ChangeLog:

* config/s390/s390-protos.h (s390_emit_compare): Add mode
parameter for the resulting RTX.
* config/s390/s390.cc (s390_emit_compare): Dito.
(s390_emit_compare_and_swap): Change.
(s390_expand_vec_strlen): Change.
(s390_expand_cs_hqi): Change.
(s390_expand_split_stack_prologue): Change.
* config/s390/s390.md (*add<mode>3_carry1_cc): Renamed to ...
(add<mode>3_carry1_cc): this and in order to use the
corresponding gen function, encode CC mode into pattern.
(*sub<mode>3_borrow_cc): Renamed to ...
(sub<mode>3_borrow_cc): this and in order to use the
corresponding gen function, encode CC mode into pattern.
(*add<mode>3_alc_carry1_cc): Renamed to ...
(add<mode>3_alc_carry1_cc): this and in order to use the
corresponding gen function, encode CC mode into pattern.
(sub<mode>3_slb_borrow1_cc): New.
(uaddc<mode>5): New.
(usubc<mode>5): New.

gcc/testsuite/ChangeLog:

* gcc.target/s390/uaddc-1.c: New test.
* gcc.target/s390/uaddc-2.c: New test.
* gcc.target/s390/uaddc-3.c: New test.
* gcc.target/s390/usubc-1.c: New test.
* gcc.target/s390/usubc-2.c: New test.
* gcc.target/s390/usubc-3.c: New test.
gcc/config/s390/s390-protos.h
gcc/config/s390/s390.cc
gcc/config/s390/s390.md
gcc/testsuite/gcc.target/s390/uaddc-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/uaddc-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/uaddc-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/usubc-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/usubc-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/s390/usubc-3.c [new file with mode: 0644]