[GOLD] OSABI not set when STT_GNU_IFUNC or STB_GNU_UNIQUE symbols output
[deliverable/binutils-gdb.git] / gold / ChangeLog
CommitLineData
aa465b19
AM
12019-11-19 Alan Modra <amodra@gmail.com>
2
3 PR 24853
4 * symtab.h (set_has_gnu_output, has_gnu_output_): New.
5 * symtab.cc (Symbol_table::Symbol_table): Init has_gnu_output_.
6 (Symbol_table::finalize): Set ELFOSABI_GNU when has_gnu_output_.
7 (Symbol_table::set_dynsym_indexes, Symbol_table::sized_finalize):
8 Call set_has_gnu_output for STT_GNU_IFUNC and STB_GNU_UNIQUE globals.
9 * object.cc (Sized_relobj_file::do_finalize_local_symbols): Call
10 set_has_gnu_output when STT_GNU_IFUNC locals will be output.
11
6f485ad4
MS
122019-11-11 Miguel Saldivar <saldivarcher@gmail.com>
13
14 PR 24996
15 * expression.cc (Trinary_expression::arg2_value): Use correct integer
16 expression when calling "eval_maybe_dot" method.
17 (Trinary_expression::arg3_value): Likewise.
18
ea8e302e
AM
192019-09-28 Alan Modra <amodra@gmail.com>
20
21 PR 16794
22 * i386.cc (Target_i386::Relocate::relocate <R_386_GOTOFF>): Don't
23 ignore addend, apply using pcrel32.
24 * x86_64.cc (Target_x86_64::Relocate::relocate <R_X86_64_GOTOFF64>):
25 Similarly use pcrel64.
26
5d33705c
NC
272019-09-24 Nick Clifton <nickc@redhat.com>
28
29 * descriptors.cc: Include <string>
30
6831670d
AM
312019-09-23 Alan Modra <amodra@gmail.com>
32
33 * testsuite/plugin_new_section_layout.c (new_input_hook): Correct
34 return status enum values.
35
4c51daca
AM
362019-09-20 Alan Modra <amodra@gmail.com>
37
38 PR 24768
39 * layout.cc (Layout::Layout): Init lto_slim_object_.
40 * object.cc (Sized_relobj_file::do_layout): Wrap overlong line.
41 Don't use C cast. Validate section size. Don't copy contents.
42
e59a1001
AM
432019-09-20 Alan Modra <amodra@gmail.com>
44
45 * powerpc.cc (Target_powerpc::Scan::check_non_pic): Move REL24
46 to 32-bit supported.
47
e0b2a78c
SM
482019-09-18 Simon Marchi <simon.marchi@polymtl.ca>
49
50 * testsuite/Makefile.in: Re-generate.
51
60391a25
PB
522019-09-09 Phil Blundell <pb@pbcl.net>
53
54 binutils 2.33 branch created.
55
b4c555cf
ML
562019-08-16 Martin Liska <mliska@suse.cz>
57
58 PR ld/24912
59 * object.cc (big_endian>::do_layout): Do not report error,
60 but only set a flag.
61 (big_endian>::do_add_symbols): Report error only for when
62 relocatable.
63
89c52ae3
AM
642019-08-02 Alan Modra <amodra@gmail.com>
65
66 * powerpc.cc (Target_powerpc::Scan::get_reference_flags): Set
67 flags for new relocations, and some missing older relocs.
68 (Target_powerpc::Scan::local): Handle new pcrel tls relocs.
69 Call set_has_static_tls for tprel relocs.
70 (Target_powerpc::Scan::global): Likewise.
71 (Target_powerpc::Relocate::relocate): Handle new pcrel tls relocs.
72
6a010cf6
AM
732019-08-02 Alan Modra <amodra@gmail.com>
74
75 * powerpc.cc (Powerpc_relocate_functions::rela, rela_ua): Perform
76 signed right shift for signed overflow check.
77
cc5277b1
ML
782019-07-29 Martin Liska <mliska@suse.cz>
79
80 PR 24768
81 * layout.h (class Layout): Add is_lto_slim_object and
82 set_lto_slim_object.
83 * object.cc (struct lto_section): Add lto_slim_object_.
84 (big_endian>::do_layout): Parse content of
85 .gnu_lto_.lto section.
86 (big_endian>::do_add_symbols): Report error for a missing
87 LTO plugin.
88
0c951c25
AM
892019-07-13 Alan Modra <amodra@gmail.com>
90
91 * powerpc.cc (xlate_pcrel_opt): New function.
92 (Target_powerpc::Relocate::relocate): Optimise PCREL34 and
93 GOT_PCREL34 sequences marked with PCREL_OPT.
94
c9b8abb7
AM
952019-07-13 Alan Modra <amodra@gmail.com>
96
97 * powerpc.cc (Powerpc_relobj::make_got_relative): New function.
98 (relative_value_is_known): New functions.
99 (Target_powerpc::Relocate::relocate): Edit code using
100 GOT16_HA, GOT16_LO_DS, and GOT_PCREL34 relocs.
101
e4dff765
AM
1022019-07-13 Alan Modra <amodra@gmail.com>
103
104 * powerpc.cc (Target_powerpc): Add powerxx_stubs_ and accessor
105 functions.
106 (Target_powerpc::maybe_skip_tls_get_addr_call): Handle PLT_PCREL34
107 and PLT_PCREL34_NOTOC relocs.
108 (Powerpc_relocate_functions): Add addr34, addr34_hi, addr34_ha,
109 addr28, addr16_higher34, addr16_highera34, addr16_highest34,
110 addr16_highest34a functions.
111 (li_11_0, ori_11_11_0, sldi_11_11_34): Define.
112 (paddi_12_pc, pld_12_pc, pnop): Define.
113 (d34, ha34): New inline functions.
114 (Stub_table::add_plt_call_entry): Handle powerxx_stubs.
115 (Stub_table::add_eh_frame): Likewise.
116 (build_powerxx_offset): New function.
117 (Stub_table::plt_call_size): Handle powerxx_stubs.
118 (Stub_table::branch_stub_size): Likewise.
119 (Stub_table::do_write): Likewise.
120 (Target_powerpc::Scan::get_reference_flags): Handle new relocs.
121 (Target_powerpc::Scan::reloc_needs_plt_for_ifunc: Likewise.
122 (Target_powerpc::Scan::local, global, relocate): Likewise.
123
220f9906
AM
1242019-07-13 Alan Modra <amodra@gmail.com>
125
126 * ehframe.cc (Fde::operator==): Delete.
127 (Cie::remove_fde): Delete.
128 (Eh_frame::remove_ehframe_for_plt): Delete fde_data and fde_length
129 parameters. Remove all post-map plt FDEs.
130 * ehframe.h (Fde:post_map): Make const, add variant to compare plt.
131 (Fde::operator==): Delete.
132 (Cie::remove_fde): Implement here.
133 (Cie::last_fde): New accessor.
134 (Eh_frame::remove_ehframe_for_plt): Update prototype.
135 * layout.cc (Layout::remove_eh_frame_for_plt): Delete fde_data and
136 fde_length parameters.
137 * layout.h (Layout::remove_eh_frame_for_plt): Update prototype.
138 * powerpc.cc (Stub_table::tls_get_addr_opt_bctrl_): Delete.
139 (Stub_table::plt_fde_len_, plt_fde_, init_plt_fde): Delete.
140 (Stub_table::add_plt_call_entry): Don't set tls_get_addr_opt_bctrl_.
141 (eh_advance): New function.
142 (stub_sort): New function.
143 (Stub_table::add_eh_frame): Emit eh_frame for notoc plt calls and
144 branches as well as __tls_get_addr_opt plt call stub.
145 (Stub_table::remove_eh_frame): Update to suit.
146
32f59844
AM
1472019-07-13 Alan Modra <amodra@gmail.com>
148
149 * powerpc.cc (Target_powerpc::maybe_skip_tls_get_addr_call): Handle
150 notoc calls.
151 (is_branch_reloc): Template on size. Return true for REL24_NOTOC.
152 Update all callers.
153 (max_branch_delta): Likewise.
154 (Target_powerpc::Branch_info::make_stub): Add a stub for notoc
155 calls to functions needing a valid toc pointer.
156 (Target_powerpc::do_relax): Layout stubs again if any need resize.
157 (add_12_11_12, addi_12_11, addis_12_11, ldx_12_11_12, ori_12_12_0),
158 (oris_12_12_0, sldi_12_12_32): Define.
159 (Stub_table::Plt_stub_ent): Add notoc_ and iter_ fields.
160 (Stub_table::Branch_stub_key, Branch_stub_key_hash): Rename from
161 Branch_stub_ent and Branch_stub_ent hash. Remove save_res_ from key.
162 (Stub_table::Branch_stub_ent): New struct.
163 (class Stub_table): Add need_resize and resizing vars.
164 (Stub_table::need_resize, branch_size): New accessors.
165 (Stub_table::set_resizing): New function.
166 (Stub_table::add_plt_call_entry): Handle notoc calls and resizing
167 on seeing such or a tocsave stubs after a normal stub using the
168 same sym.
169 (Stub_table::add_long_branch_entry): Similarly.
170 (Stub_table::find_long_branch_entry): Return a Branch_stub_ent*.
171 (Stub_table::define_stub_syms): Adjust
172 (Stub_table::build_tls_opt_head, build_tls_opt_tail): New functions.
173 (build_notoc_offset): New function.
174 (Stub_table::plt_call_size): Move out of line. Handle notoc calls.
175 (Stub_table::branch_stub_size): Similarly.
176 (Stub_table::do_write): Separate loop for ELFv2 stubs, handling
177 notoc calls. Simplify ELFv1 loop. Output notoc branch stubs.
178 Use build_tls_opt_head and build_tls_opt_tail.
179 (Target_powerpc::Scan::get_reference_flags): Handle REL24_NOTOC.
180 (Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Likewise,
181 and PLTSEQ_NOTOC and PLTCALL_NOTOC.
182 (Target_powerpc::Scan::local, global, relocate): Likewise.
183
f60c61e6
AM
1842019-06-28 Alan Modra <amodra@gmail.com>
185
186 * powerpc.cc (Target_powerpc::Relocate::relocate): Don't look
187 at next/previous reloc when relnum is -1.
188
f073a3e8
AM
1892019-06-28 Alan Modra <amodra@gmail.com>
190
191 * powerpc.cc (Stub_table::plt_error): New function.
192 (Stub_table::do_write): Use it.
193 (Output_data_glink::do_write): Don't segfault emitting linkage
194 table error.
195
c432bbba
AM
1962019-06-28 Alan Modra <amodra@gmail.com>
197
198 * powerpc.cc (Target_powerpc::Scan::get_reference_flags): Handle
199 REL16_HIGH* relocs.
200 (Target_powerpc::Scan::local): Likewise.
201 (Target_powerpc::Scan::global): Likewise.
202 (Target_powerpc::Relocate::relocate): Likewise.
203
a3972330
ML
2042019-06-10 Martin Liska <mliska@suse.cz>
205
206 * errors.h: Include string.
207
e173ea00
JO
2082019-05-10 Joshua Oreman <oremanj@hudson-trading.com>
209
210 PR gold/21066
211 * gc.h (gc_process_relocs): Track relocations in .eh_frame sections
212 when ICF is enabled, even though the .eh_frame sections themselves
213 are not foldable.
214 * icf.cc (get_section_contents): Change arguments to permit operation
215 on just part of a section. Include extra identity regions in the
216 referring section's contents recursively.
217 (match_sections): Lock object here instead of in get_section_contents
218 so that get_section_contents can operate recursively.
219 (Icf::add_ehframe_links): New method.
220 (Icf::find_identical_sections): Pass .eh_frame sections to
221 add_ehframe_links(). Increase default iteration count from 2 to 3
222 because handling exception info typically requires one extra iteration.
223 * icf.h (Icf::extra_identity_list_): New data member with accessor.
224 (is_section_foldable_candidate): Include .gcc_except_table sections.
225 * options.h: Update documentation for new default ICF iteration count.
226 * testsuite/Makefile.am (icf_test_pr21066): New test case.
227 * testsuite/Makefile.in: Regenerate.
228 * testsuite/icf_test_pr21066.cc: New source file.
229 * testsuite/icf_test_pr21066.sh: New test script.
230
7ae39e2d
EB
2312019-02-19 Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com>
232
233 PR gold/23870
234 * aarch64.cc (Target_aarch64::Scan::global): Check if a symbol with
235 R_AARCH64_MOVW_.ABS_* relocations requires a PLT entry.
236 * testsuite/Makefile.am: Add aarch64_pr23870 test case.
237 * testsuite/Makefile.in: Regenerate.
238 * testsuite/aarch64_pr23870_bar.c: New file.
239 * testsuite/aarch64_pr23870_foo.c: New file.
240 * testsuite/aarch64_pr23870_main.S: New file.
241
e4865945
NC
2422019-02-12 Nick Clifton <nickc@redhat.com>
243
244 * po/fr.po: Updated French translation.
245
375cd423
NC
2462019-01-21 Nick Clifton <nickc@redhat.com>
247
248 * po/uk.po: Updated Ukranian translation.
249
f48dfe41
NC
2502019-01-19 Nick Clifton <nickc@redhat.com>
251
252 * po/gold.pot: Regenerate.
253
f974f26c
NC
2542018-06-24 Nick Clifton <nickc@redhat.com>
255
256 2.32 branch created.
257
3107326d
AP
2582019-01-09 Andrew Paprocki <andrew@ishiboo.com>
259
260 * configure: Regenerate.
261
82704155
AM
2622019-01-01 Alan Modra <amodra@gmail.com>
263
264 Update year range in copyright notice of all files.
265
d5c04e1b 266For older changes see ChangeLog-2018
3499769a 267\f
d5c04e1b 268Copyright (C) 2019 Free Software Foundation, Inc.
3499769a
AM
269
270Copying and distribution of this file, with or without modification,
271are permitted in any medium without royalty provided the copyright
272notice and this notice are preserved.
273
274Local Variables:
275mode: change-log
276left-margin: 8
277fill-column: 74
278version-control: never
279End:
This page took 0.195332 seconds and 4 git commands to generate.