s390-modes.def (CCL3mode): New machine mode.
authorUlrich Weigand <uweigand@de.ibm.com>
Thu, 17 Jun 2004 10:32:14 +0000 (10:32 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Thu, 17 Jun 2004 10:32:14 +0000 (10:32 +0000)
commit5d880bd24bc667dc41a1f31d5713c8dbd90d86c2
tree1bd5a23cdea9efcce530899b7131b94010d1d3fa
parentac5347368c5e7943a853427d42c8dd0ca2958939
s390-modes.def (CCL3mode): New machine mode.

* config/s390/s390-modes.def (CCL3mode): New machine mode.
* config/s390/s390.c (s390_match_ccmode_set): Support CCL3mode.
(s390_alc_comparison, s390_slb_comparison): Likewise.
(s390_branch_condition_mask): Likewise.
* config/s390/s390.md ("*subdi3_cc2", "*subdi3_cconly2"): New.
("*subsi3_cc2", "*subsi3_cconly2"): New.

* config/s390/s390.h (PREDICATE_CODE): Accept SIGN_EXTEND and
ZERO_EXTEND for s390_alc_comparison and s390_slb_comparison.
* config/s390/s390.c (s390_alc_comparison, s390_slb_comparison):
Handle SIGN_EXTEND and ZERO_EXTEND.

* config/s390/s390-protos.h (s390_expand_addcc): New prototype.
* config/s390/s390.c (s390_expand_addcc): New function.
* config/s390/s390.md ("adddicc", "addsicc"): New expanders.
("*sconddi", "*scondsi", "*sconddi_neg", "*scondsi_neg"): New insns.
("sltu", "sgtu", "sleu", "sgeu"): New expanders.

From-SVN: r83287
gcc/ChangeLog
gcc/config/s390/s390-modes.def
gcc/config/s390/s390-protos.h
gcc/config/s390/s390.c
gcc/config/s390/s390.h
gcc/config/s390/s390.md