gold: Add s390 -fsplit-stack support.
authorMarcin Kościelnicki <koriakin@0x04.net>
Sun, 13 Dec 2015 01:53:09 +0000 (02:53 +0100)
committerMarcin Kościelnicki <koriakin@0x04.net>
Mon, 15 Feb 2016 10:59:25 +0000 (11:59 +0100)
commit2b63aca39c2b0abbb410f7a5a60124ac5abf7438
treeb36035e99ba8c26bc6f584bd79e98bd19252da68
parent0a0da55626b632a8b8beb6c7878b866861e5daee
gold: Add s390 -fsplit-stack support.

gold/ChangeLog:

* s390.cc (Target_s390::match_view_u): New helper method.
(Target_s390::do_is_call_to_non_split): New method.
(Target_s390::ss_code_st_r14): New const.
(Target_s390::ss_code_l_r14): New const.
(Target_s390::ss_code_bras_8): New const.
(Target_s390::ss_code_l_basr): New const.
(Target_s390::ss_code_a_basr): New const.
(Target_s390::ss_code_ear): New const.
(Target_s390::ss_code_c): New const.
(Target_s390::ss_code_larl): New const.
(Target_s390::ss_code_brasl): New const.
(Target_s390::ss_code_jg): New const.
(Target_s390::ss_code_jgl): New const.
(Target_s390::ss_match_mcount): New helper method.
(Target_s390::ss_match_l): New helper method.
(Target_s390::ss_match_ahi): New helper method.
(Target_s390::ss_match_alfi): New helper method.
(Target_s390::ss_match_cr): New helper method.
(Target_s390::do_calls_non_split): New method.
* testsuite/Makefile.am: Added new tests.
* testsuite/split_s390.sh: New test.
* testsuite/split_s390_1_a1.s: New test.
* testsuite/split_s390_1_a2.s: New test.
* testsuite/split_s390_1_n1.s: New test.
* testsuite/split_s390_1_n2.s: New test.
* testsuite/split_s390_1_z1.s: New test.
* testsuite/split_s390_1_z2.s: New test.
* testsuite/split_s390_1_z3.s: New test.
* testsuite/split_s390_1_z4.s: New test.
* testsuite/split_s390_2_ns.s: New test.
* testsuite/split_s390_2_s.s: New test.
* testsuite/split_s390x_1_a1.s: New test.
* testsuite/split_s390x_1_a2.s: New test.
* testsuite/split_s390x_1_n1.s: New test.
* testsuite/split_s390x_1_n2.s: New test.
* testsuite/split_s390x_1_z1.s: New test.
* testsuite/split_s390x_1_z2.s: New test.
* testsuite/split_s390x_1_z3.s: New test.
* testsuite/split_s390x_1_z4.s: New test.
* testsuite/split_s390x_2_ns.s: New test.
* testsuite/split_s390x_2_s.s: New test.
25 files changed:
gold/ChangeLog
gold/s390.cc
gold/testsuite/Makefile.am
gold/testsuite/Makefile.in
gold/testsuite/split_s390.sh [new file with mode: 0755]
gold/testsuite/split_s390_1_a1.s [new file with mode: 0644]
gold/testsuite/split_s390_1_a2.s [new file with mode: 0644]
gold/testsuite/split_s390_1_n1.s [new file with mode: 0644]
gold/testsuite/split_s390_1_n2.s [new file with mode: 0644]
gold/testsuite/split_s390_1_z1.s [new file with mode: 0644]
gold/testsuite/split_s390_1_z2.s [new file with mode: 0644]
gold/testsuite/split_s390_1_z3.s [new file with mode: 0644]
gold/testsuite/split_s390_1_z4.s [new file with mode: 0644]
gold/testsuite/split_s390_2_ns.s [new file with mode: 0644]
gold/testsuite/split_s390_2_s.s [new file with mode: 0644]
gold/testsuite/split_s390x_1_a1.s [new file with mode: 0644]
gold/testsuite/split_s390x_1_a2.s [new file with mode: 0644]
gold/testsuite/split_s390x_1_n1.s [new file with mode: 0644]
gold/testsuite/split_s390x_1_n2.s [new file with mode: 0644]
gold/testsuite/split_s390x_1_z1.s [new file with mode: 0644]
gold/testsuite/split_s390x_1_z2.s [new file with mode: 0644]
gold/testsuite/split_s390x_1_z3.s [new file with mode: 0644]
gold/testsuite/split_s390x_1_z4.s [new file with mode: 0644]
gold/testsuite/split_s390x_2_ns.s [new file with mode: 0644]
gold/testsuite/split_s390x_2_s.s [new file with mode: 0644]