[GOLD] PowerPC notoc eh_frame
[deliverable/binutils-gdb.git] / gold / ChangeLog
CommitLineData
220f9906
AM
12019-07-13 Alan Modra <amodra@gmail.com>
2
3 * ehframe.cc (Fde::operator==): Delete.
4 (Cie::remove_fde): Delete.
5 (Eh_frame::remove_ehframe_for_plt): Delete fde_data and fde_length
6 parameters. Remove all post-map plt FDEs.
7 * ehframe.h (Fde:post_map): Make const, add variant to compare plt.
8 (Fde::operator==): Delete.
9 (Cie::remove_fde): Implement here.
10 (Cie::last_fde): New accessor.
11 (Eh_frame::remove_ehframe_for_plt): Update prototype.
12 * layout.cc (Layout::remove_eh_frame_for_plt): Delete fde_data and
13 fde_length parameters.
14 * layout.h (Layout::remove_eh_frame_for_plt): Update prototype.
15 * powerpc.cc (Stub_table::tls_get_addr_opt_bctrl_): Delete.
16 (Stub_table::plt_fde_len_, plt_fde_, init_plt_fde): Delete.
17 (Stub_table::add_plt_call_entry): Don't set tls_get_addr_opt_bctrl_.
18 (eh_advance): New function.
19 (stub_sort): New function.
20 (Stub_table::add_eh_frame): Emit eh_frame for notoc plt calls and
21 branches as well as __tls_get_addr_opt plt call stub.
22 (Stub_table::remove_eh_frame): Update to suit.
23
32f59844
AM
242019-07-13 Alan Modra <amodra@gmail.com>
25
26 * powerpc.cc (Target_powerpc::maybe_skip_tls_get_addr_call): Handle
27 notoc calls.
28 (is_branch_reloc): Template on size. Return true for REL24_NOTOC.
29 Update all callers.
30 (max_branch_delta): Likewise.
31 (Target_powerpc::Branch_info::make_stub): Add a stub for notoc
32 calls to functions needing a valid toc pointer.
33 (Target_powerpc::do_relax): Layout stubs again if any need resize.
34 (add_12_11_12, addi_12_11, addis_12_11, ldx_12_11_12, ori_12_12_0),
35 (oris_12_12_0, sldi_12_12_32): Define.
36 (Stub_table::Plt_stub_ent): Add notoc_ and iter_ fields.
37 (Stub_table::Branch_stub_key, Branch_stub_key_hash): Rename from
38 Branch_stub_ent and Branch_stub_ent hash. Remove save_res_ from key.
39 (Stub_table::Branch_stub_ent): New struct.
40 (class Stub_table): Add need_resize and resizing vars.
41 (Stub_table::need_resize, branch_size): New accessors.
42 (Stub_table::set_resizing): New function.
43 (Stub_table::add_plt_call_entry): Handle notoc calls and resizing
44 on seeing such or a tocsave stubs after a normal stub using the
45 same sym.
46 (Stub_table::add_long_branch_entry): Similarly.
47 (Stub_table::find_long_branch_entry): Return a Branch_stub_ent*.
48 (Stub_table::define_stub_syms): Adjust
49 (Stub_table::build_tls_opt_head, build_tls_opt_tail): New functions.
50 (build_notoc_offset): New function.
51 (Stub_table::plt_call_size): Move out of line. Handle notoc calls.
52 (Stub_table::branch_stub_size): Similarly.
53 (Stub_table::do_write): Separate loop for ELFv2 stubs, handling
54 notoc calls. Simplify ELFv1 loop. Output notoc branch stubs.
55 Use build_tls_opt_head and build_tls_opt_tail.
56 (Target_powerpc::Scan::get_reference_flags): Handle REL24_NOTOC.
57 (Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Likewise,
58 and PLTSEQ_NOTOC and PLTCALL_NOTOC.
59 (Target_powerpc::Scan::local, global, relocate): Likewise.
60
f60c61e6
AM
612019-06-28 Alan Modra <amodra@gmail.com>
62
63 * powerpc.cc (Target_powerpc::Relocate::relocate): Don't look
64 at next/previous reloc when relnum is -1.
65
f073a3e8
AM
662019-06-28 Alan Modra <amodra@gmail.com>
67
68 * powerpc.cc (Stub_table::plt_error): New function.
69 (Stub_table::do_write): Use it.
70 (Output_data_glink::do_write): Don't segfault emitting linkage
71 table error.
72
c432bbba
AM
732019-06-28 Alan Modra <amodra@gmail.com>
74
75 * powerpc.cc (Target_powerpc::Scan::get_reference_flags): Handle
76 REL16_HIGH* relocs.
77 (Target_powerpc::Scan::local): Likewise.
78 (Target_powerpc::Scan::global): Likewise.
79 (Target_powerpc::Relocate::relocate): Likewise.
80
a3972330
ML
812019-06-10 Martin Liska <mliska@suse.cz>
82
83 * errors.h: Include string.
84
e173ea00
JO
852019-05-10 Joshua Oreman <oremanj@hudson-trading.com>
86
87 PR gold/21066
88 * gc.h (gc_process_relocs): Track relocations in .eh_frame sections
89 when ICF is enabled, even though the .eh_frame sections themselves
90 are not foldable.
91 * icf.cc (get_section_contents): Change arguments to permit operation
92 on just part of a section. Include extra identity regions in the
93 referring section's contents recursively.
94 (match_sections): Lock object here instead of in get_section_contents
95 so that get_section_contents can operate recursively.
96 (Icf::add_ehframe_links): New method.
97 (Icf::find_identical_sections): Pass .eh_frame sections to
98 add_ehframe_links(). Increase default iteration count from 2 to 3
99 because handling exception info typically requires one extra iteration.
100 * icf.h (Icf::extra_identity_list_): New data member with accessor.
101 (is_section_foldable_candidate): Include .gcc_except_table sections.
102 * options.h: Update documentation for new default ICF iteration count.
103 * testsuite/Makefile.am (icf_test_pr21066): New test case.
104 * testsuite/Makefile.in: Regenerate.
105 * testsuite/icf_test_pr21066.cc: New source file.
106 * testsuite/icf_test_pr21066.sh: New test script.
107
7ae39e2d
EB
1082019-02-19 Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com>
109
110 PR gold/23870
111 * aarch64.cc (Target_aarch64::Scan::global): Check if a symbol with
112 R_AARCH64_MOVW_.ABS_* relocations requires a PLT entry.
113 * testsuite/Makefile.am: Add aarch64_pr23870 test case.
114 * testsuite/Makefile.in: Regenerate.
115 * testsuite/aarch64_pr23870_bar.c: New file.
116 * testsuite/aarch64_pr23870_foo.c: New file.
117 * testsuite/aarch64_pr23870_main.S: New file.
118
e4865945
NC
1192019-02-12 Nick Clifton <nickc@redhat.com>
120
121 * po/fr.po: Updated French translation.
122
375cd423
NC
1232019-01-21 Nick Clifton <nickc@redhat.com>
124
125 * po/uk.po: Updated Ukranian translation.
126
f48dfe41
NC
1272019-01-19 Nick Clifton <nickc@redhat.com>
128
129 * po/gold.pot: Regenerate.
130
f974f26c
NC
1312018-06-24 Nick Clifton <nickc@redhat.com>
132
133 2.32 branch created.
134
3107326d
AP
1352019-01-09 Andrew Paprocki <andrew@ishiboo.com>
136
137 * configure: Regenerate.
138
82704155
AM
1392019-01-01 Alan Modra <amodra@gmail.com>
140
141 Update year range in copyright notice of all files.
142
d5c04e1b 143For older changes see ChangeLog-2018
3499769a 144\f
d5c04e1b 145Copyright (C) 2019 Free Software Foundation, Inc.
3499769a
AM
146
147Copying and distribution of this file, with or without modification,
148are permitted in any medium without royalty provided the copyright
149notice and this notice are preserved.
150
151Local Variables:
152mode: change-log
153left-margin: 8
154fill-column: 74
155version-control: never
156End:
This page took 0.17111 seconds and 4 git commands to generate.