[GOLD] Fix spurious "plugin needed to handle lto object" warnings
[deliverable/binutils-gdb.git] / gold / ChangeLog
1 2019-09-20 Alan Modra <amodra@gmail.com>
2
3 PR 24768
4 * layout.cc (Layout::Layout): Init lto_slim_object_.
5 * object.cc (Sized_relobj_file::do_layout): Wrap overlong line.
6 Don't use C cast. Validate section size. Don't copy contents.
7
8 2019-09-20 Alan Modra <amodra@gmail.com>
9
10 * powerpc.cc (Target_powerpc::Scan::check_non_pic): Move REL24
11 to 32-bit supported.
12
13 2019-09-18 Simon Marchi <simon.marchi@polymtl.ca>
14
15 * testsuite/Makefile.in: Re-generate.
16
17 2019-09-09 Phil Blundell <pb@pbcl.net>
18
19 binutils 2.33 branch created.
20
21 2019-08-16 Martin Liska <mliska@suse.cz>
22
23 PR ld/24912
24 * object.cc (big_endian>::do_layout): Do not report error,
25 but only set a flag.
26 (big_endian>::do_add_symbols): Report error only for when
27 relocatable.
28
29 2019-08-02 Alan Modra <amodra@gmail.com>
30
31 * powerpc.cc (Target_powerpc::Scan::get_reference_flags): Set
32 flags for new relocations, and some missing older relocs.
33 (Target_powerpc::Scan::local): Handle new pcrel tls relocs.
34 Call set_has_static_tls for tprel relocs.
35 (Target_powerpc::Scan::global): Likewise.
36 (Target_powerpc::Relocate::relocate): Handle new pcrel tls relocs.
37
38 2019-08-02 Alan Modra <amodra@gmail.com>
39
40 * powerpc.cc (Powerpc_relocate_functions::rela, rela_ua): Perform
41 signed right shift for signed overflow check.
42
43 2019-07-29 Martin Liska <mliska@suse.cz>
44
45 PR 24768
46 * layout.h (class Layout): Add is_lto_slim_object and
47 set_lto_slim_object.
48 * object.cc (struct lto_section): Add lto_slim_object_.
49 (big_endian>::do_layout): Parse content of
50 .gnu_lto_.lto section.
51 (big_endian>::do_add_symbols): Report error for a missing
52 LTO plugin.
53
54 2019-07-13 Alan Modra <amodra@gmail.com>
55
56 * powerpc.cc (xlate_pcrel_opt): New function.
57 (Target_powerpc::Relocate::relocate): Optimise PCREL34 and
58 GOT_PCREL34 sequences marked with PCREL_OPT.
59
60 2019-07-13 Alan Modra <amodra@gmail.com>
61
62 * powerpc.cc (Powerpc_relobj::make_got_relative): New function.
63 (relative_value_is_known): New functions.
64 (Target_powerpc::Relocate::relocate): Edit code using
65 GOT16_HA, GOT16_LO_DS, and GOT_PCREL34 relocs.
66
67 2019-07-13 Alan Modra <amodra@gmail.com>
68
69 * powerpc.cc (Target_powerpc): Add powerxx_stubs_ and accessor
70 functions.
71 (Target_powerpc::maybe_skip_tls_get_addr_call): Handle PLT_PCREL34
72 and PLT_PCREL34_NOTOC relocs.
73 (Powerpc_relocate_functions): Add addr34, addr34_hi, addr34_ha,
74 addr28, addr16_higher34, addr16_highera34, addr16_highest34,
75 addr16_highest34a functions.
76 (li_11_0, ori_11_11_0, sldi_11_11_34): Define.
77 (paddi_12_pc, pld_12_pc, pnop): Define.
78 (d34, ha34): New inline functions.
79 (Stub_table::add_plt_call_entry): Handle powerxx_stubs.
80 (Stub_table::add_eh_frame): Likewise.
81 (build_powerxx_offset): New function.
82 (Stub_table::plt_call_size): Handle powerxx_stubs.
83 (Stub_table::branch_stub_size): Likewise.
84 (Stub_table::do_write): Likewise.
85 (Target_powerpc::Scan::get_reference_flags): Handle new relocs.
86 (Target_powerpc::Scan::reloc_needs_plt_for_ifunc: Likewise.
87 (Target_powerpc::Scan::local, global, relocate): Likewise.
88
89 2019-07-13 Alan Modra <amodra@gmail.com>
90
91 * ehframe.cc (Fde::operator==): Delete.
92 (Cie::remove_fde): Delete.
93 (Eh_frame::remove_ehframe_for_plt): Delete fde_data and fde_length
94 parameters. Remove all post-map plt FDEs.
95 * ehframe.h (Fde:post_map): Make const, add variant to compare plt.
96 (Fde::operator==): Delete.
97 (Cie::remove_fde): Implement here.
98 (Cie::last_fde): New accessor.
99 (Eh_frame::remove_ehframe_for_plt): Update prototype.
100 * layout.cc (Layout::remove_eh_frame_for_plt): Delete fde_data and
101 fde_length parameters.
102 * layout.h (Layout::remove_eh_frame_for_plt): Update prototype.
103 * powerpc.cc (Stub_table::tls_get_addr_opt_bctrl_): Delete.
104 (Stub_table::plt_fde_len_, plt_fde_, init_plt_fde): Delete.
105 (Stub_table::add_plt_call_entry): Don't set tls_get_addr_opt_bctrl_.
106 (eh_advance): New function.
107 (stub_sort): New function.
108 (Stub_table::add_eh_frame): Emit eh_frame for notoc plt calls and
109 branches as well as __tls_get_addr_opt plt call stub.
110 (Stub_table::remove_eh_frame): Update to suit.
111
112 2019-07-13 Alan Modra <amodra@gmail.com>
113
114 * powerpc.cc (Target_powerpc::maybe_skip_tls_get_addr_call): Handle
115 notoc calls.
116 (is_branch_reloc): Template on size. Return true for REL24_NOTOC.
117 Update all callers.
118 (max_branch_delta): Likewise.
119 (Target_powerpc::Branch_info::make_stub): Add a stub for notoc
120 calls to functions needing a valid toc pointer.
121 (Target_powerpc::do_relax): Layout stubs again if any need resize.
122 (add_12_11_12, addi_12_11, addis_12_11, ldx_12_11_12, ori_12_12_0),
123 (oris_12_12_0, sldi_12_12_32): Define.
124 (Stub_table::Plt_stub_ent): Add notoc_ and iter_ fields.
125 (Stub_table::Branch_stub_key, Branch_stub_key_hash): Rename from
126 Branch_stub_ent and Branch_stub_ent hash. Remove save_res_ from key.
127 (Stub_table::Branch_stub_ent): New struct.
128 (class Stub_table): Add need_resize and resizing vars.
129 (Stub_table::need_resize, branch_size): New accessors.
130 (Stub_table::set_resizing): New function.
131 (Stub_table::add_plt_call_entry): Handle notoc calls and resizing
132 on seeing such or a tocsave stubs after a normal stub using the
133 same sym.
134 (Stub_table::add_long_branch_entry): Similarly.
135 (Stub_table::find_long_branch_entry): Return a Branch_stub_ent*.
136 (Stub_table::define_stub_syms): Adjust
137 (Stub_table::build_tls_opt_head, build_tls_opt_tail): New functions.
138 (build_notoc_offset): New function.
139 (Stub_table::plt_call_size): Move out of line. Handle notoc calls.
140 (Stub_table::branch_stub_size): Similarly.
141 (Stub_table::do_write): Separate loop for ELFv2 stubs, handling
142 notoc calls. Simplify ELFv1 loop. Output notoc branch stubs.
143 Use build_tls_opt_head and build_tls_opt_tail.
144 (Target_powerpc::Scan::get_reference_flags): Handle REL24_NOTOC.
145 (Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Likewise,
146 and PLTSEQ_NOTOC and PLTCALL_NOTOC.
147 (Target_powerpc::Scan::local, global, relocate): Likewise.
148
149 2019-06-28 Alan Modra <amodra@gmail.com>
150
151 * powerpc.cc (Target_powerpc::Relocate::relocate): Don't look
152 at next/previous reloc when relnum is -1.
153
154 2019-06-28 Alan Modra <amodra@gmail.com>
155
156 * powerpc.cc (Stub_table::plt_error): New function.
157 (Stub_table::do_write): Use it.
158 (Output_data_glink::do_write): Don't segfault emitting linkage
159 table error.
160
161 2019-06-28 Alan Modra <amodra@gmail.com>
162
163 * powerpc.cc (Target_powerpc::Scan::get_reference_flags): Handle
164 REL16_HIGH* relocs.
165 (Target_powerpc::Scan::local): Likewise.
166 (Target_powerpc::Scan::global): Likewise.
167 (Target_powerpc::Relocate::relocate): Likewise.
168
169 2019-06-10 Martin Liska <mliska@suse.cz>
170
171 * errors.h: Include string.
172
173 2019-05-10 Joshua Oreman <oremanj@hudson-trading.com>
174
175 PR gold/21066
176 * gc.h (gc_process_relocs): Track relocations in .eh_frame sections
177 when ICF is enabled, even though the .eh_frame sections themselves
178 are not foldable.
179 * icf.cc (get_section_contents): Change arguments to permit operation
180 on just part of a section. Include extra identity regions in the
181 referring section's contents recursively.
182 (match_sections): Lock object here instead of in get_section_contents
183 so that get_section_contents can operate recursively.
184 (Icf::add_ehframe_links): New method.
185 (Icf::find_identical_sections): Pass .eh_frame sections to
186 add_ehframe_links(). Increase default iteration count from 2 to 3
187 because handling exception info typically requires one extra iteration.
188 * icf.h (Icf::extra_identity_list_): New data member with accessor.
189 (is_section_foldable_candidate): Include .gcc_except_table sections.
190 * options.h: Update documentation for new default ICF iteration count.
191 * testsuite/Makefile.am (icf_test_pr21066): New test case.
192 * testsuite/Makefile.in: Regenerate.
193 * testsuite/icf_test_pr21066.cc: New source file.
194 * testsuite/icf_test_pr21066.sh: New test script.
195
196 2019-02-19 Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com>
197
198 PR gold/23870
199 * aarch64.cc (Target_aarch64::Scan::global): Check if a symbol with
200 R_AARCH64_MOVW_.ABS_* relocations requires a PLT entry.
201 * testsuite/Makefile.am: Add aarch64_pr23870 test case.
202 * testsuite/Makefile.in: Regenerate.
203 * testsuite/aarch64_pr23870_bar.c: New file.
204 * testsuite/aarch64_pr23870_foo.c: New file.
205 * testsuite/aarch64_pr23870_main.S: New file.
206
207 2019-02-12 Nick Clifton <nickc@redhat.com>
208
209 * po/fr.po: Updated French translation.
210
211 2019-01-21 Nick Clifton <nickc@redhat.com>
212
213 * po/uk.po: Updated Ukranian translation.
214
215 2019-01-19 Nick Clifton <nickc@redhat.com>
216
217 * po/gold.pot: Regenerate.
218
219 2018-06-24 Nick Clifton <nickc@redhat.com>
220
221 2.32 branch created.
222
223 2019-01-09 Andrew Paprocki <andrew@ishiboo.com>
224
225 * configure: Regenerate.
226
227 2019-01-01 Alan Modra <amodra@gmail.com>
228
229 Update year range in copyright notice of all files.
230
231 For older changes see ChangeLog-2018
232 \f
233 Copyright (C) 2019 Free Software Foundation, Inc.
234
235 Copying and distribution of this file, with or without modification,
236 are permitted in any medium without royalty provided the copyright
237 notice and this notice are preserved.
238
239 Local Variables:
240 mode: change-log
241 left-margin: 8
242 fill-column: 74
243 version-control: never
244 End:
This page took 0.034914 seconds and 5 git commands to generate.