Apply:
[deliverable/binutils-gdb.git] / gold / ChangeLog
CommitLineData
08228b11
EC
12017-11-08 Kyle Butt <iteratee@google.com>
2
3 * object.cc (do_find_special_sections): Fix a thinko with memmem return
4 values and check for != NULL rather than == 0.
5
6003e27e
AM
62017-11-07 Alan Modra <amodra@gmail.com>
7
8 * system.h (textdomain, bindtextdomain): Use safer "do nothing".
9 (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
10
e601d38b
AM
112017-10-25 Alan Modra <amodra@gmail.com>
12
13 * symtab.cc (Symbol_table::add_from_relobj): Match "__gnu_lto_slim"
14 optionally prefixed with "_".
15
d6361359 162017-10-20 Sriraman Tallam <tmsriram@google.com>
3b4190cc
ST
17
18 * options.h (-z,text_unlikely_segment): New option.
19 * layout.cc (Layout::layout): Create new output section
20 for .text.unlikely sections with the new option.
21 (Layout::segment_precedes): Check for the new option
22 when segment flags match.
23 * testsuite/text_unlikely_segment.cc: New test source.
24 * testsuite/text_unlikely_segment.sh: New test script.
25 * testsuite/Makefile.am (text_unlikely_segment): New test.
26 * testsuite/Makefile.in: Regenerate.
27
36862fc0
UK
282017-10-19 Umesh Kalappa <ukalappa@cisco.com>
29
30 * arm.cc (Stub::do_fixed_endian_write):Far call stubs support for arm
31 in the be8 mode.
32 * testsuite/Makefile.am: New test cases.
33 * testsuite/Makefile.in: Regenerate.
34 * testsuite/arm_farcall_arm_arm_be8.sh: New script for arm to arm far
35 call stubs.
36 * testsuite/arm_farcall_thumb_thumb_be8.sh: New script for thumb to
37 thumb far call stubs.
38
412294da
AM
392017-10-18 Kyle Butt <iteratee@google.com>
40 Alan Modra <amodra@gmail.com>
41
42 * powerpc.cc (Target_powerpc::Scan::local): Correct dst_off
43 calculation for TOC16 relocs.
44 (Target_powerpc::Scan::global): Likewise.
45
00956d3a
CC
462017-09-26 Cary Coutant <ccoutant@gmail.com>
47
48 PR gold/22213
49 * sparc.cc (Target_sparc): Fix incorrect register mask.
50
0cf44ec8
JW
512017-09-22 Jim Wilson <jim.wilson@linaro.org>
52
53 * aarch64.cc (Target_aarch64::aarch64_info): Set
54 is_default_stack_executable to false.
55
7790bd6c
AM
562017-09-22 Alan Modra <amodra@gmail.com>
57
58 * resolve.cc (clone): Fix got_offset_list test.
59
ec769010
AM
602017-09-22 Alan Modra <amodra@gmail.com>
61
62 * powerpc.cc (Target_powerpc<64,*>::powerpc_info): Set
63 is_default_stack_executable false.
64
ca464aac
TJ
652017-09-20 Teresa Johnson <tejohnson@google.com>
66
67 * plugin.cc (is_visible_from_outside): Check for export dynamic symbol
68 option and list.
69 * testsuite/Makefile.am (plugin_test_12): New test.
70 * testsuite/Makefile.in: Regenerate.
71 * testsuite/export_dynamic_plugin.cc: New test source.
72 * testsuite/plugin_test_12.sh: New test script.
73
64b5d6d7
AM
742017-09-20 Alan Modra <amodra@gmail.com>
75
76 * powerpc.cc (Target_powerpc::Branch_info::make_stub): Put
77 stubs for ppc32 non-branch relocs in first stub table.
78 (Target_powerpc::Relocate::relocate): Resolve similarly.
79
ab502e63
AM
802017-09-19 Alan Modra <amodra@gmail.com>
81
82 * options.h (stub-group-multi): Default to true. Add
83 --no-stub-group-multi.
84
9a23f96e
AM
852017-08-30 Alan Modra <amodra@gmail.com>
86
87 * powerpc.cc (Target_powerpc::Relocate::relocate): Nop addis on
88 TPREL16_HA, and convert insn on TPREL16_LO and TPREL16_LO_DS
89 relocs to use r2/r13 when addis would add zero.
90
34e0882b
AM
912017-08-29 Alan Modra <amodra@gmail.com>
92
93 * options.h (tls_get_addr_optimize): New option.
94 * symtab.h (Symbol::clear_in_reg, clone): New functions.
95 (Sized_symbol::clone): New function.
96 (Symbol_table::clone): New function.
97 * resolve.cc (Symbol::clone, Sized_symbol::clone): New functions.
98 * powerpc.cc (Target_powerpc::has_tls_get_addr_opt_,
99 tls_get_addr_, tls_get_addr_opt_): New vars.
100 (Target_powerpc::tls_get_addr_opt, tls_get_addr,
101 is_tls_get_addr_opt, replace_tls_get_addr,
102 set_has_tls_get_addr_opt, stk_linker): New functions.
103 (Target_powerpc::Track_tls::maybe_skip_tls_get_addr_call): Add
104 target param. Update callers. Compare symbols rather than names.
105 (Target_powerpc::do_define_standard_symbols): Init tls_get_addr_
106 and tls_get_addr_opt_.
107 (Target_powerpc::Branch_info::mark_pltcall): Translate tls_get_addr
108 sym to tls_get_addr_opt.
109 (Target_powerpc::Branch_info::make_stub): Likewise.
110 (Stub_table::define_stub_syms): Likewise.
111 (Target_powerpc::Scan::global): Likewise.
112 (Target_powerpc::Relocate::relocate): Likewise.
113 (add_3_12_2, add_3_12_13, bctrl, beqlr, cmpdi_11_0, cmpwi_11_0,
114 ld_11_1, ld_11_3, ld_12_3, lwz_11_3, lwz_12_3, mr_0_3, mr_3_0,
115 mtlr_11, std_11_1): New constants.
116 (Stub_table::eh_frame_added_): Delete.
117 (Stub_table::tls_get_addr_opt_bctrl_, plt_fde_len_, plt_fde_): New vars.
118 (Stub_table::init_plt_fde): New functions.
119 (Stub_table::add_eh_frame, replace_eh_frame): Move definition out
120 of line. Init and use plt_fde_.
121 (Stub_table::plt_call_size): Return size for tls_get_addr stub.
122 Extract alignment code to..
123 (Stub_table::plt_call_align): ..this new function. Adjust all callers.
124 (Stub_table::add_plt_call_entry): Set has_tls_get_addr_opt and
125 tls_get_addr_opt_bctrl, and align after that.
126 (Stub_table::do_write): Write out tls_get_addr stub.
127 (Target_powerpc::do_finalize_sections): Emit DT_PPC_OPT
128 PPC_OPT_TLS/PPC64_OPT_TLS bit.
129 (Target_powerpc::Relocate::relocate): Don't check for or modify
130 nop following bl for tls_get_addr stub.
131
34ca2bd7
AM
1322017-08-29 Alan Modra <amodra@gmail.com>
133
134 * symtab.h (Symbol): Split u_ into u1_ and u2_. Adjust accessors
135 to suit. Move plt_offset_ before got_offsets_.
136 * symtab.cc (Symbol::init_fields): Adjust for union change.
137 (Symbol::init_base_output_data): Likewise.
138 (Symbol::init_base_output_segment): Likewise.
139 (Symbol::allocate_base_common): Likewise.
140 (Symbol::output_section): Likewise.
141 (Symbol::set_output_section): Likewise.
142 (Symbol::set_output_segment): Likewise.
143 * resolve.cc (Symbol::override_base): Likewise.
144 (Symbol::override_base_with_special): Likewise.
145
cefdd1cd
IK
1462017-08-28 Igor Kudrin <ikudrin@accesssoftek.com>
147
148 * aarch64.cc (Target_aarch64::Relocate::relocate_tls):
149 Make got_tlsdesc_offset signed and fix its calculation.
150 * testsuite/Makefile.am (aarch64_tlsdesc): New test.
151 * testsuite/Makefile.in: Regenerate.
152 * testsuite/aarch64_tlsdesc.s: New test source file.
153 * testsuite/aarch64_tlsdesc.sh: New test script.
154 * testsuite/aarch64_tlsdesc.t: New test linker script.
155
565ed01a
AM
1562017-08-28 Alan Modra <amodra@gmail.com>
157
158 PR 21847
159 * powerpc.cc (Target_powerpc::is_elfv2_localentry0): Test
160 non_zero_localentry.
161 (Target_powerpc::resolve): New function.
162 (powerpc_info): Set has_resolve for 64-bit.
163 * target.h (Sized_target::resolve): Return bool.
164 * resolve.cc (Symbol_table::resolve): Continue with normal
165 processing when target resolve returns false.
166 * symtab.h (Symbol::non_zero_localentry, set_non_zero_localentry):
167 New accessors.
168 (Symbol::non_zero_localentry_): New flag bit.
169 * symtab.cc (Symbol::init_fields): Init non_zero_localentry_.
170
2760f24c
RG
1712017-08-08 Romain Geissler <romain.geissler@gmail.com>
172 Alan Modra <amodra@gmail.com>
173
174 * configure.ac: Add --enable-default-hash-style option.
175 * options.h (hash_style): Use DEFAULT_HASH_STYLE as default value.
176 * configure: Regenerate.
177 * config.in: Regenerate.
178
223b97ba
JC
1792017-08-03 James Clarke <jrtc27@jrtc27.com>
180
181 * options.h (General_options): Set a non-NULL second help string
182 argument for relax to allow --no-relax.
183
be897fb7
AM
1842017-08-01 Alan Modra <amodra@gmail.com>
185
186 * ehframe.cc (Fde::operator==): New.
187 (Cie::remove_fde, Eh_frame::remove_ehframe_for_plt): New.
188 * ehframe.h (Fde::operator==): Declare.
189 (Cie::remove_fde, Eh_frame::remove_ehframe_for_plt): Likewise.
190 * layout.cc (Layout::remove_eh_frame_for_plt): New.
191 * layout.h (Layout::remove_eh_frame_for_plt): Declare.
192 * powerpc.cc (Target_powerpc::do_relax): Remove old eh_frame FDEs.
193 (Stub_table::add_eh_frame): Delete eh_frame_added_ condition.
194 Don't add eh_frame for empty stub section.
195 (Stub_table::remove_eh_frame): New.
196
aacb3b6d
AM
1972017-07-31 Alan Modra <amodra@gmail.com>
198
199 * options.h (no_tls_optimize): New powerpc option.
200 * powerpc.cc (Target_powerpc::abiversion, set_abiversion): Formatting.
201 (Target_powerpc::stk_toc): Formatting, fix comment.
202 (Target_powerpc::Track_tls::tls_get_addr_state): Rename from
203 tls_get_addr.
204 (Target_powerpc::optimize_tls_gd, optimize_tls_ld, optimize_tls_ie):
205 Return TLSOPT_NONE when !tls_optimize.
206 (Target_powerpc::add_global_pair_with_rel): Check
207 for existing reloc before reserving.
208 (Target_powerpc::add_local_tls_pair): Likewise.
209
d44c746a
AM
2102017-07-31 Alan Modra <amodra@gmail.com>
211
565ed01a 212 PR 21847
d44c746a
AM
213 * powerpc.cc (Target_powerpc::scan_relocs): Warn on --plt-localentry
214 without ld.so checks.
215
8b5f1ed8
AM
2162017-07-29 Alan Modra <amodra@gmail.com>
217
218 PR 21847
219 * powerpc.cc (Target_powerpc::scan_relocs): Default to
220 --no-plt-localentry.
221
49ba15a2
L
2222017-07-28 H.J. Lu <hongjiu.lu@intel.com>
223
224 PR gold/21857
225 * compressed_output.cc (Output_compressed_section::set_final_data_size):
226 Call put_ch_reserved to clear the reserved field for 64-bit ELF.
227
104f0515
L
2282017-07-26 H.J. Lu <hongjiu.lu@intel.com>
229
230 * mips.cc (Mips_relocate_functions): Add "llu" suffix to
231 0x800080008000.
232
15a3a14f
AM
2332017-07-23 Alan Modra <amodra@gmail.com>
234
235 * powerpc.cc (glink_eh_frame_fde_64v2): Correct advance to
236 restore of LR.
237 (glink_eh_frame_fde_64v1): Advance to restore of LR at latest
238 possible insn.
239
de194d85
YC
2402017-07-18 Nick Clifton <nickc@redhat.com>
241
242 PR 21775
243 * aarch64.cc: Fix spelling typos.
244 * arm.cc: Likewise.
245 * layout.cc: Likewise.
246 * powerpc.cc: Likewise.
247 * x86_64.cc: Likewise.
248
429d795d
AM
2492017-07-12 Alan Modra <amodra@gmail.com>
250
251 * po/es.po: Update from translationproject.org/latest/gold/.
252 * po/fi.po: Likewise.
253 * po/fr.po: Likewise.
254 * po/id.po: Likewise.
255 * po/it.po: Likewise.
256 * po/vi.po: Likewise.
257 * po/zh_CN.po: Likewise.
258 * po/ja.po: New file from translationproject.org.
259 * po/sv.po: Likewise.
260 * po/uk.po: Likewise.
261
b7d7d459
CC
2622017-07-06 Han Shen <shenhan@google.com>
263
264 PR gold/21491
265 * aarch64.cc (Erratum_stub::invalidate_erratum_stub): New method.
266 (Erratum_stub::is_invalidated_erratum_stub): New method.
267 (Stub_table::relocate_reloc_stub): Renamed from "relocate_stub".
268 (Stub_table::relocate_reloc_stubs): Renamed from "relocate_stubs".
269 (Stub_table::relocate_erratum_stub): New method.
270 (AArch64_relobj::fix_errata_and_relocate_erratum_stubs): Renamed from
271 "fix_errata".
272 (Target_aarch64::relocate_reloc_stub): Renamed from "relocate_stub".
273
7ee7ff70
AM
2742017-06-23 Alan Modra <amodra@gmail.com>
275
276 * options.h (General_options): Add plt_localentry.
277 * powerpc.cc (Target_powerpc::st_other): New function.
278 (Target_powerpc::plt_localentry0_, plt_localentry0_init_,
279 has_localentry0_): New vars.
280 (Target_powerpc::plt_localentry0, set_has_localentry0,
281 is_elfv2_localentry0): New functions.
282 (Target_powerpc::Branch_info::mark_pltcall): Don't set tocsave or
283 return true for localentry:0 calls.
284 (Stub_table::Plt_stub_ent::localentry0_): New var.
285 (Stub_table::add_plt_call_entry): Set localentry0_ and has_localentry0_.
286 Don't set r2save_ for localentry:0 calls.
287 (Output_data_glink::do_write): Save r2 in __glink_PLTresolve for elfv2.
288 (Target_powerpc::scan_relocs): Default plt_localentry0_.
289 (Target_powerpc::do_finalize_sections): Set DT_PPC64_OPT.
290 (Target_powerpc::Relocate::relocate): Don't require nop following
291 calls for localentry:0 plt calls, and don't change nop.
292
7e57d19e
AM
2932017-06-23 Alan Modra <amodra@gmail.com>
294
295 * powerpc.cc (Target_powerpc::tocsave_loc_): New var.
296 (Target_powerpc::mark_pltcall, add_tocsave, tocsave_loc): New functions.
297 (Target_powerpc::Branch_info::tocsave_): New var.
298 (Target_powerpc::Branch_info::mark_pltcall): New function.
299 (Target_powerpc::Branch_info::make_stub): Pass tocsave_ to
300 add_plt_call_entry.
301 (Stub_table::Plt_stub_ent): Make public. Add r2save_.
302 (Stub_table::add_plt_call_entry): Add bool tocsave_ param. Set
303 r2save_.
304 (Stub_table::find_plt_call_entry): Return Plt_stub_ent*. Adjust
305 use throughout.
306 (Stub_table::do_write): Conditionally output r2 save in plt stubs.
307 (Target_powerpc::Scan::local): Handle R_PPC64_TOCSAVE.
308 (Target_powerpc::Scan::global): Likewise.
309 (Target_powerpc::Relocate::relocate): Skip r2 save in plt call stub
310 with tocsave reloc. Replace header tocsave nop with r2 save.
311 * symtab.h (struct Symbol_location_hash): Make public.
312
bdab445c
AM
3132017-06-21 Alan Modra <amodra@gmail.com>
314
315 * powerpc.cc (Plt_stub_key): Rename from Plt_stub_ent. Remove indx_.
316 (Plt_stub_key_hash): Rename from Plt_stub_ent_hash.
317 (struct Plt_stub_ent): New.
318 (Plt_stub_entries): Map from Plt_stub_key to Plt_stub_ent. Adjust
319 use throughout file.
320
69431bab
EC
3212017-06-20 Eric Christopher <echristo@gmail.com>
322
323 * aarch64.cc (scan_reloc_for_stub): Use plt_address_for_global to
324 calculate the symbol value.
325 (scan_reloc_section_for_stubs): Allow stubs to be created for
326 section symbols.
327 (maybe_apply_stub): Handle creating stubs for weak symbols to
328 match the code in scan_reloc_for_stub.
329
94de2a2c
JC
3302017-06-20 James Clarke <jrtc27@jrtc27.com>
331
332 * powerpc.cc (Stub_table::define_stub_syms): Always include object's
333 uniq_ value.
334
c092b67b
EC
3352017-06-15 Eric Christopher <echristo@gmail.com>
336
337 * aarch64.cc: Fix a few typos and grammar-os.
338
37de058a
JW
3392017-06-15 Jiong Wang <jiong.wang@arm.com>
340
341 * aarch64.cc (Insn_utilities::is_mrs_tpidr_el0): New method.
342 (AArch64_relobj<size, big_endian>::try_fix_erratum_843419_optimized):
343 Return ture for some TLS relaxed sequences.
344
81b6fe3b
EC
3452017-06-07 Eric Christopher <echristo@gmail.com>
346
347 * aarch64.cc (maybe_apply_stub): Add debug logging for looking
348 up stubs to undefined symbols and early return rather than
349 fail to look them up.
350 (scan_reloc_for_stub): Add debug logging for no stub creation
351 for undefined symbols.
352
590b87ff
AM
3532017-05-23 Alan Modra <amodra@gmail.com>
354
355 PR 21503
356 * options.h: Add --emit-stub-syms option.
357 * powerpc.cc (object_id): New.
358 (Powerpc_relobj): Add uniq_ and accessor. Sort variables for
359 better packing.
360 (Powerpc_dynobj): Sort variables for better packing.
361 (Target_powerpc::define_local): New function.
362 (Target_powerpc::group_sections): Pass stub table size to
363 Stub_table constructor.
364 (Target_powerpc::do_relax): Define stub and glink symbols.
365 (Stub_table): Add uniq_ variable, and id param to constructor.
366 (Stub_table::Plt_stub_ent): Add indx_ variable.
367 (Stub_table::Branch_stub_entries): Move typedef earlier.
368 (Stub_table::branch_stub_size): Replace "to" parameter with a
369 Branch_stub_entries iterator.
370 (Stub_table::add_long_branch_entry): Adjust to suit.
371 (Stub_table::add_plt_call_entry): Set indx_.
372 (Stub_table::define_stub_syms): New function.
373
0c38a3d1
EC
3742017-05-15 Eric Christopher <echristo@gmail.com>
375
376 * layout.cc (Layout::segment_precedes): Add a case for testing
377 pointer equality when determining which segment precedes
378 another.
379
67f46fed
JC
3802017-05-13 James Clarke <jrtc27@jrtc27.com>
381
382 PR gold/21444
383 * gold.cc (Target_sparc::Relocate::relocate_tls): Local
384 variables are final for position-independent executables. This
385 has to be consistent with Target_sparc::Scan::local otherwise
386 they will disagree as to whether local-exec is used.
387
6bf56e74
IK
3882017-05-12 Igor Kudrin <ikudrin@accesssoftek.com>
389
390 PR gold/21430
391 * aarch64.cc
392 (AArch64_relobj::convert_input_section_to_relaxed_section):
393 Set the section offset to -1ULL.
394 (Target_aarch64::relocate_section): Adjust the view in case
395 of a relaxed input section.
396 * testsuite/Makefile.am (pr21430): New test.
397 * testsuite/Makefile.in: Regenerate
398 * testsuite/pr21430.s: New test source file.
399 * testsuite/pr21430.sh: New test script.
400
a61d92b7
AM
4012017-04-27 Alan Modra <amodra@gmail.com>
402
403 * testsuite/plugin_section_order.c (onload): Add missing break.
404
aab2c177
VR
4052017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
406
407 * mips.cc (Mips_got_entry::hash()): Shift addend to reduce
408 possibility of collisions.
409 (Mips_got_entry::equals): Fix case for GOT_TLS_LDM
410 entries.
411
4d78db49
VR
4122017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
413
414 * mips.cc (Mips_relobj::merge_processor_specific_data_): New data
415 member.
416 (Mips_relobj::merge_processor_specific_data): New method.
417 (Mips_relobj::do_read_symbols): Set merge_processor_specific_data_
418 to false, only if the input file is a binary or if object has no
419 contents except the section name string table and an empty symbol
420 table with the undefined symbol.
421 (Target_mips::do_finalize_sections): Refactor. Skip empty object files
422 for merging processor-specific data.
423
152c92b2
VR
4242017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
425
426 * mips.cc (Target_mips::Relocate::calculated_value_): New data
427 member.
428 (Target_mips::Relocate::calculate_only_): Likewise.
429 (Target_mips::Relocate::relocate): Handle multiple consecutive
430 relocations with the same offset.
431
1728969e
VR
4322017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
433
1e1247c8
VR
434 * mips.cc (Target_mips::Relocate::relocate): Remove redundant
435 checks for relocatable link.
436 (Mips_relocate_functions::reljalr): Likewise.
1728969e 437
c3847462
VR
4382017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
439
1e1247c8
VR
440 * mips.cc (class Mips_output_section_options): New class.
441 (Target_mips::do_make_output_section): New method.
c3847462 442
453018bf
VR
4432017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
444
1e1247c8
VR
445 * mips.cc (Mips_relocate_functions::rel26): Don't print relocation
446 overflow error message.
447 (Target_mips::relocate_special_relocatable): Improve relocation
448 overflow error message.
449 (Target_mips::Relocate::relocate): Likewise.
450
4512017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
452
453 * mips.cc (symbol_refs_local): Return false if a symbol
454 is from a dynamic object.
455 (Target_mips::got_section): Make _GLOBAL_OFFSET_TABLE_ STV_HIDDEN.
456 (Target_mips::set_gp): Refactor. Make _gp STT_NOTYPE and
457 STB_LOCAL.
458 (Target_mips::do_finalize_sections): Set _gp after all the checks
459 for creating .got are done.
460 (Target_mips::Scan::global): Remove unused code.
453018bf 461
6528b6eb
AM
4622017-02-22 Alan Modra <amodra@gmail.com>
463
464 * powerpc.cc (Target_powerpc::make_iplt_section): Check that
465 output_section exists before attempting add_output_section_data.
466 (Target_powerpc::make_brlt_section): Likewise.
467
f9029569
VR
4682017-02-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
469
470 * mips.cc (Target_mips::Scan::get_reference_flags): Remove
471 gold_unreachable from default case.
472
e242ece1
VR
4732017-02-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
474
475 PR gold/21111
f9029569
VR
476 * mips.cc (Mips_relocate_functions::relhigher): New method.
477 (Mips_relocate_functions::relhighest): Likewise.
478 (mips_get_size_for_reloc): Add support for relocs: R_MIPS_HIGHER and
479 R_MIPS_HIGHEST.
480 (Target_mips::Scan::local): Add support for relocs: R_MIPS_HIGHER,
481 R_MIPS_HIGHEST, R_MICROMIPS_HIGHER and R_MICROMIPS_HIGHEST.
482 (Target_mips::Scan::global): Likewise.
483 (Target_mips::Scan::get_reference_flags): Likewise.
484 (Target_mips::Relocate::relocate): Call static methods for resolving
485 HIGHER and HIGHEST relocations.
e242ece1 486
4aebb631
RC
4872017-02-03 Rahul Chaudhry <rahulchaudhry@google.com>
488
489 * x86_64.cc (Target_x86_64::do_can_check_for_function_pointers):
490 Return true even when building pie binaries.
491 (Target_x86_64::possible_function_pointer_reloc): Check opcode
492 for R_X86_64_PC32 relocations.
493 (Target_x86_64::local_reloc_may_be_function_pointer): Pass
494 extra arguments to local_reloc_may_be_function_pointer.
495 (Target_x86_64::global_reloc_may_be_function_pointer): Likewise.
496 * gc.h (gc_process_relocs): Add check for STT_FUNC.
497 * testsuite/Makefile.am (icf_safe_pie_test): New test case.
498 * testsuite/Makefile.in: Regenerate.
499 * testsuite/icf_safe_pie_test.sh: New shell script.
500
e666304e
AM
5012017-02-03 Alan Modra <amodra@gmail.com>
502
503 * powerpc.cc (Powerpc_relobj::make_toc_relative): Don't crash
504 when no .toc section exists.
505
ed35cc4a
CC
5062017-01-31 Cary Coutant <ccoutant@gmail.com>
507
508 PR gold/21090
509 * x86_64.cc (Target_x86_64::can_convert_mov_to_lea): Add check
510 for predefined symbol.
511 (Target_x86_64::Relocate::relocate): Fix formatting.
512
741bcbe9
RC
5132017-01-23 Rahul Chaudhry <rahulchaudhry@google.com>
514
515 * testsuite/icf_safe_so_test.sh: Use "set -e".
516 * testsuite/icf_safe_test.sh: Likewise.
517 * testsuite/icf_test.sh: Likewise.
518
04bc2a28
VR
5192017-01-23 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
520
521 * mips.cc (Mips_output_data_plt::rel_plt): Remove const from return
522 type.
523 (Target_mips::make_plt_entry): Make the sh_info field of .rel.plt
524 point to .plt.
525
c1f59f8f
VR
5262017-01-23 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
527
528 PR gold/21054
529 * mips.cc (Mips_got_info::record_global_got_symbol): Don't add symbol
530 to the dynamic symbol table if it is forced to local visibility.
531 (Target_mips::do_finalize_sections): Don't add __RLD_MAP symbol to the
532 dynamic symbol table if it is forced to local visibility.
533
a24df305
NC
5342017-01-20 Nick Clifton <nickc@redhat.com>
535
536 * aarch64.cc (Stub_template_repertoire): Change ST_E_835769_INSNS
537 from a pointer to an array.
538
857e829e
L
5392017-01-13 H.J. Lu <hongjiu.lu@intel.com>
540
541 PR gold/21040
542 * powerpc.cc (Powerpc_relobj<size, big_endian>::make_toc_relative):
543 Cast 0x80008000 to uint64_t.
544
aca5eec6
CC
5452017-01-12 Cary Coutant <ccoutant@gmail.com>
546
547 * object.cc (Sized_relobj_file): Fix byte counts for calls to memmem.
548
6624f3a1
CC
5492017-01-11 Cary Coutant <ccoutant@gmail.com>
550
551 PR gold/21040
552 * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
553 Remove unnecessary 'typename' keyword.
554 (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
555 (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
556 (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
557 (Output_data_plt_x86_64_bnd::do_write): Likewise.
558
976e204b
CC
5592017-01-11 Cary Coutant <ccoutant@gmail.com>
560
561 PR gold/21040
562 * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
563 Remove unnecessary 'typename' keyword.
564 (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
565 (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
566 (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
567 * testsuite/copy_test_relro_1.cc (p, b, c, q): Add separate extern
568 declarations.
569
1fa5f68b
CC
5702017-01-11 Cary Coutant <ccoutant@gmail.com>
571
572 PR gold/21039
573 * testsuite/script_test_13.sh: Adjust patterns to work for i386.
574 * testsuite/script_test_15a.sh: Likewise.
575 * testsuite/script_test_15b.sh: Likewise.
576 * testsuite/script_test_15c.sh: Likewise.
577
5edad15d
AM
5782017-01-11 Alan Modra <amodra@gmail.com>
579
580 * powerpc.cc (class Powerpc_copy_relocs): New.
581 (Powerpc_copy_relocs::emit): New function.
582 (Powerpc_relobj::relatoc_, toc_, no_toc_opt_): New variables.
583 (Powerpc_relobj::toc_shndx, set_no_toc_opt, no_toc_opt): New inlines.
584 (Powerpc_relobj::do_relocate_sections): New function.
585 (Powerpc_relobj::make_toc_relative): Likewise.
586 (Powerpc_relobj::do_find_special_sections): Stash away .rela.toc
587 and .toc too.
588 (ok_lo_toc_insn): Move earlier, and handle more insns.
589 (Target_powerpc::Scan::local): If optimizing toc accesses, set
590 no_toc_opt for entries we can't edit. Check insn validity.
591 Emit "toc optimization is not supported" warning, downgraded
592 from error.
593 (Target_powerpc::Scan::global): Likewise.
594 (Target_powerpc::Relocate::relocate): Edit TOC indirect code
595 to TOC relative. Don't emit "toc optimization is not supported"
596 error here.
597
98461510
CC
5982017-01-10 Cary Coutant <ccoutant@gmail.com>
599
600 * aarch64.cc (AArch64_relobj::do_relocate_sections): Call
601 Sized_relobj_file::relocate_section_range().
602 * arm.cc (Arm_relobj::do_relocate_sections): Likewise.
603 * object.h (Sized_relobj_file::relocate_section_range): New method.
604 * reloc.cc (Sized_relobj_file::do_relocate_sections): Move
605 implementation...
606 (Sized_relobj_file::relocate_section_range): ...to new method.
607
f7fd19e2
AM
6082017-01-10 Alan Modra <amodra@gmail.com>
609
610 * testsuite/ver_test_8.sh: Accept .TOC. in lieu of
611 _GLOBAL_OFFSET_TABLE_. Allow zero count.
612 * testsuite/copy_test_relro_1.cc (c, q): New vars.
613 * testsuite/copy_test_relro.cc: Rewrite to test read-only
614 status of variables directly. Reference new vars in
615 read-only data.
616
f159cdb6
AM
6172017-01-10 Alan Modra <amodra@gmail.com>
618
619 * options.h: Add --secure-plt option.
620 * powerpc.cc (Target_powerpc::Scan::local): Detect and error
621 on -fPIC -mbss-plt code.
622 (Target_powerpc::Scan::global): Likewise.
623
3254d32c
AM
6242017-01-09 Alan Modra <amodra@gmail.com>
625
626 * powerpc.cc (Target_powerpc::make_plt_section): Point sh_info of
627 ".rela.plt" at ".plt".
628
0e123f69
AM
6292017-01-07 Alan Modra <amodra@gmail.com>
630
631 * powerpc.cc: Use shorter equivalent elfcpp typedef for
632 Reltype and reloc_size throughout.
633 (Target_powerpc::symval_for_branch): Exclude dynamic symbols.
634 (Target_powerpc::Scan::local): Use local var r_sym.
635 (Target_powerpc::Scan::global: Likewise.
636 (Target_powerpc::Relocate::relocate): Delete shadowing r_sym.
637
2571583a
AM
6382017-01-02 Alan Modra <amodra@gmail.com>
639
640 Update year range in copyright notice of all files.
641
5c1ad6b5 642For older changes see ChangeLog-2016
3499769a 643\f
5c1ad6b5 644Copyright (C) 2017 Free Software Foundation, Inc.
3499769a
AM
645
646Copying and distribution of this file, with or without modification,
647are permitted in any medium without royalty provided the copyright
648notice and this notice are preserved.
649
650Local Variables:
651mode: change-log
652left-margin: 8
653fill-column: 74
654version-control: never
655End:
This page took 0.24811 seconds and 4 git commands to generate.