diff options
author | Alan Modra <amodra@gmail.com> | 2016-12-07 14:12:26 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2016-12-07 14:15:44 +1030 |
commit | a5018ae555cdf491005907c03f997558ba15fc47 (patch) | |
tree | 5d31dd0711e31865b1c8549cbc2628ff43f88c1d /gold/ChangeLog | |
parent | dc60b26d983494a3cdec0d4f167ed98fde1a832a (diff) | |
download | gdb-a5018ae555cdf491005907c03f997558ba15fc47.zip gdb-a5018ae555cdf491005907c03f997558ba15fc47.tar.gz gdb-a5018ae555cdf491005907c03f997558ba15fc47.tar.bz2 |
[GOLD] powerpc64le-linux fails to link large Linux kernel
Gold attaches stubs to an existing section in contrast to ld.bfd which
inserts a new section for stubs. If we want stubs before branches,
then the stubs must be added to the previous section. Adding to the
previous section is a disaster if there is a large gap between the
previous section and the group.
PR gold/20878
* powerpc.cc (Stub_control): Replace stubs_always_before_branch_
with stubs_always_after_branch_, group_end_addr_ with
group_start_addr_.
(Stub_control::can_add_to_stub_group): Rewrite to suit scanning
sections by increasing address.
(Target_powerpc::group_sections): Scan that way. Delete corner
case.
* options.h (--stub-group-size): Update help string.
Diffstat (limited to 'gold/ChangeLog')
-rw-r--r-- | gold/ChangeLog | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index 50af9a2..367cb02 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,5 +1,17 @@ 2016-12-07 Alan Modra <amodra@gmail.com> + PR gold/20878 + * powerpc.cc (Stub_control): Replace stubs_always_before_branch_ + with stubs_always_after_branch_, group_end_addr_ with + group_start_addr_. + (Stub_control::can_add_to_stub_group): Rewrite to suit scanning + sections by increasing address. + (Target_powerpc::group_sections): Scan that way. Delete corner + case. + * options.h (--stub-group-size): Update help string. + +2016-12-07 Alan Modra <amodra@gmail.com> + * powerpc.cc (Stub_table_owner): Provide constructor. (Powerpc_relobj::set_stub_table): Resize fill with -1. (Target_powerpc::Branch_info::make_stub): Provide target debug |