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