[PATCH 2/2] gold: Add s390 -fsplit-stack support.
Marcin Kościelnicki
koriakin@0x04.net
Mon Feb 15 11:01:00 GMT 2016
More information about the Binutils mailing list
Mon Feb 15 11:01:00 GMT 2016
- Previous message (by thread): [PATCH 2/2] gold: Add s390 -fsplit-stack support.
- Next message (by thread): [PATCH 1/2] gold: Add view and view_size parameters to is_call_to_non_split.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 06/02/16 01:47, Marcin Kościelnicki wrote:
> On 06/02/16 01:24, Cary Coutant wrote:
>>> 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.
>>
>> Please add:
>>
>> * testsuite/Makefile.in: Regenerate.
>>
>>> * 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.
>>
>>
>>> diff --git a/gold/Makefile.in b/gold/Makefile.in
>>> index 58552ef..97ce000 100644
>>> --- a/gold/Makefile.in
>>> +++ b/gold/Makefile.in
>>> @@ -70,8 +70,8 @@ subdir = .
>>> DIST_COMMON = NEWS README ChangeLog $(srcdir)/Makefile.in \
>>> $(srcdir)/Makefile.am $(top_srcdir)/configure \
>>> $(am__configure_deps) $(srcdir)/config.in \
>>> - $(srcdir)/../mkinstalldirs $(top_srcdir)/po/Make-in pread.c \
>>> - ffsll.c ftruncate.c mremap.c yyscript.h yyscript.c \
>>> + $(srcdir)/../mkinstalldirs $(top_srcdir)/po/Make-in mremap.c \
>>> + ffsll.c pread.c ftruncate.c yyscript.h yyscript.c \
>>> $(srcdir)/../depcomp $(srcdir)/../ylwrap
>>> ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
>>> am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
>>
>> This diff is a persistent annoying change caused by non-deterministic
>> behavior in automake. Please don't commit this -- it only adds churn.
>> (Just do "git checkout gold/Makefile.in" after running automake if you
>> haven't made any changes to gold/Makefile.am.)
>>
>>> + // Tricky case. When used in a brasl, jg, and other branch
>>> instructions,
>>> + // it's a call or a sibcall. However, when used in larl, it
>>> only loads
>>> + // the function's address - not a call.
>>> + case elfcpp::R_390_PC32DBL:
>>> + {
>>> + if (offset < 2 || offset + 4 >
>>> static_cast<section_offset_type>(view_size))
>>
>> Line too long.
>>
>> This is OK with those changes. Are you ready to check it in, or do you
>> want to wait for the GCC patches?
>
> Still waiting, will commit it with above fixes once gcc side is done.
> Thanks!
>>
>> Thanks!
>>
>> -cary
>>
>
The gcc patch has landed now, so I pushed it in. Thanks!
- Previous message (by thread): [PATCH 2/2] gold: Add s390 -fsplit-stack support.
- Next message (by thread): [PATCH 1/2] gold: Add view and view_size parameters to is_call_to_non_split.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Binutils mailing list