[MIPS] Add Loongson 3A1000 proccessor support.
[deliverable/binutils-gdb.git] / gold / ChangeLog
1 2018-08-29 Chenghua Xu <paul.hua.gm@gmail.com>
2
3 * mips.cc (Mips_mach, add_machine_extensions, elf_mips_mach):
4 Rename loongson3a to gs464.
5 (mips_isa_ext_mach, mips_isa_ext): Delete loongson3a.
6 (infer_abiflags): Use ases instead of isa_ext for infer ABI
7 flags.
8 (elf_mips_mach_name): Rename loongson3a to gs464.
9
10 2018-07-10 Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
11
12 * object.cc (Sized_relobj_file::map_to_kept_section): Initialize
13 kept_file.
14
15 2018-08-07 Cary Coutant <ccoutant@gmail.com>
16
17 PR ld/23486
18 * x86_64.cc (Target_x86_64::Target_x86_64): Initialize
19 object_isa_1_used_.
20 (Target_x86_64::object_isa_1_used_): New data member.
21 (Target_x86_64::record_gnu_property): Save ISA_1_USED bits for object.
22 (Target_x86_64::merge_gnu_properties): Merge ISA_1_USED bits.
23
24 2018-08-06 Cary Coutant <ccoutant@gmail.com>
25
26 PR gold/23455
27 * options.h (General_options): Add --warn-drop-version option.
28 * symtab.cc (Symbol_table::set_dynsym_indexes): Check it.
29
30 2018-08-06 Cary Coutant <ccoutant@gmail.com>
31
32 * target.h (Sized_target::record_gnu_property): Change first two
33 parameters to unsigned int.
34 * x86_64.cc (Target_x86_64::record_gnu_property): Likewise.
35
36 2018-07-30 Nick Clifton <nickc@redhat.com>
37
38 * layout.cc (section_name_mapping): Add an entry for
39 .gnu.build.attributes.
40
41 2018-07-18 Nick Clifton <nickc@redhat.com>
42
43 * po/fr.po: Updated French translation.
44
45 2018-07-14 Cary Coutant <ccoutant@gmail.com>
46
47 PR gold/23397
48 * object.cc (Sized_relobj_file::do_layout): Mark section as deferred.
49 * testsuite/Makefile.am (plugin_test_1): Add --emit-relocs option to
50 existing test case.
51 * testsuite/Makefile.in: Regenerate.
52
53 2018-07-14 Cary Coutant <ccoutant@gmail.com>
54
55 PR gold/23409
56 * symtab.cc (Symbol_table::define_special_symbol): Add check for
57 version name on existing symbol.
58 * testsuite/Makefile.am (ver_test_pr23409): New test case.
59 * testsuite/Makefile.in: Regenerate.
60 * testsuite/ver_test_pr23409.sh: New test script.
61 * testsuite/ver_test_pr23409_1.script: New version script.
62 * testsuite/ver_test_pr23409_2.script: New version script.
63
64 2018-07-11 Franz Sirl <franz.sirl-kernel@lauterbach.com>
65
66 * main.cc (main): Print m.arena as long long.
67
68 2018-07-09 Cary Coutant <ccoutant@gmail.com>
69
70 * incremental.cc (Sized_incremental_binary::setup_readers): Use
71 emplace_back for C++ 11 or later.
72
73 2018-07-06 Alan Modra <amodra@gmail.com>
74
75 * powerpc.cc: Include attributes.h.
76 (Powerpc_relobj::attributes_section_data_): New variable, with
77 accessor and associated constructor and destructor support.
78 (Powerpc_dynobj::attributes_section_data_): Likewise.
79 (Powerpc_relobj::do_read_symbols): Stash SHT_GNU_ATTRIBUTES section
80 contents in attributes_section_data_.
81 (Powerpc_dynobj::do_read_symbols): Likewise.
82 (Target_powerpc): Add attributes_section_data_, last_fp_, last_ld_,
83 last_vec_, and last_struct_ vars.
84 (Target_powerpc::merge_object_attributes): New function.
85 (Target_powerpc::do_finalize_sections): Iterate over input objects
86 merging attributes. Create output attributes section.
87
88 2018-06-26 Nick Clifton <nickc@redhat.com>
89
90 * po/uk.po: Updated Ukranian translation.
91
92 2018-06-24 Nick Clifton <nickc@redhat.com>
93
94 * po/gold.pot: Regenerate.
95
96 2018-06-24 Nick Clifton <nickc@redhat.com>
97
98 2.31 branch created.
99
100 2018-06-23 Cary Coutant <ccoutant@gmail.com>
101
102 * version.cc (version_string): Bump to 1.16.
103 * NEWS: Add new features in 1.16.
104
105 2018-06-23 Cary Coutant <ccoutant@gmail.com>
106
107 PR gold/22914
108 * x86_64.cc (Target_x86_64::record_gnu_property): Initialize val.
109
110 2018-06-23 Cary Coutant <ccoutant@gmail.com>
111
112 PR gold/22915
113 * x86_64.cc (Output_data_plt_x86_64_ibt): New class.
114 (Target_x86_64::do_make_data_plt): (All instantiations) Check for
115 IBT feature bit and create IBT PLTs.
116
117 2018-06-22 Cary Coutant <ccoutant@gmail.com>
118
119 PR gold/22914
120 * layout.cc (read_sized_value): Fix spelling of section name.
121 (Layout::layout_gnu_property): Call Sized_target::record_gnu_property
122 for target-specific properties;
123 don't store them with target-independent properties yet.
124 (Layout::merge_gnu_properties): New method.
125 (Layout::add_gnu_property): New method.
126 (Layout::create_gnu_properties_note): Call target to finalize
127 target-specific properties. Fix spelling of output section name.
128 * layout.h (Layout::merge_gnu_properties): New method.
129 (Layout::add_gnu_property): New method.
130 * object.cc (Sized_relobj_file::do_layout): Call
131 Layout::merge_gnu_properties.
132 * target.h (Target::merge_gnu_property): Remove.
133 (Target::finalize_gnu_properties): New method.
134 (Target::do_merge_gnu_property): Move to Sized_target and rename.
135 (Target::do_finalize_gnu_properties): New virtual method.
136 (Sized_target::record_gnu_property): Moved and renamed from
137 Target::do_merge_gnu_property.
138 (Sized_target::merge_gnu_properties): New virtual method.
139 * x86_64.cc (Target_x86_64::isa_1_used_, isa_1_needed_)
140 (feature_1_, object_feature_1_, seen_first_object_): New data members.
141 (Target_x86_64::do_merge_gnu_property): Rename to ...
142 (Target_x86_64::record_gnu_property): ... this. Save target-specific
143 properties in Target class object.
144 (Target_x86_64::merge_gnu_properties): New method.
145 (add_property): New static inline function.
146 (Target_x86_64::do_finalize_gnu_properties): New method.
147 * testsuite/Makefile.am (gnu_property_test): Remove C source file;
148 link directly without compiler driver.
149 * testsuite/Makefile.in: Regenerate.
150 * testsuite/gnu_property_a.S: Add _start.
151
152 2018-06-22 Cary Coutant <ccoutant@gmail.com>
153
154 * incremental.cc (Sized_incremental_binary::setup_readers): Use
155 emplace_back for GCC 5 and later.
156 * incremental.h (Incremental_binary::Input_reader): Provide copy
157 constructor.
158 (Sized_incremental_binary::Sized_input_reader): Likewise.
159
160 2018-06-22 Cary Coutant <ccoutant@gmail.com>
161
162 PR gold/22914
163 * layout.cc (Layout::Layout): Initialize gnu_properties_.
164 (read_sized_value, write_sized_value): New functions.
165 (Layout::layout_gnu_property): New method.
166 (Layout::create_notes): Call create_gnu_properties_note.
167 (Layout::create_gnu_properties_note): New method.
168 * layout.h (Layout::layout_gnu_property): New method.
169 (Layout::create_gnu_properties_note): New method.
170 (Layout::Gnu_property, Layout::Gnu_properties): New types.
171 (Layout::gnu_properties_): New data member.
172 * object.cc (Sized_relobj_file::layout_gnu_property_section): New
173 method.
174 (Sized_relobj_file::do_layout): Handle .note.gnu.property sections.
175 * object.h (Sized_relobj_file::layout_gnu_property_section): New
176 method.
177 * target.h (Target::merge_gnu_property): New method.
178 (Target::do_merge_gnu_property): New virtual method.
179 * x86_64.cc (Target_x86_64::do_merge_gnu_property): New method.
180 * testsuite/Makefile.am (gnu_property_test): New test case.
181 * testsuite/Makefile.in: Regenerate.
182 * testsuite/gnu_property_a.S: New source file.
183 * testsuite/gnu_property_b.S: New source file.
184 * testsuite/gnu_property_c.S: New source file.
185 * testsuite/gnu_property_main.c: New source file.
186 * testsuite/gnu_property_test.sh: New test script.
187
188 2018-06-21 Cary Coutant <ccoutant@gmail.com>
189
190 * resolve.cc (Symbol_table::resolve): Rename tobinding to
191 orig_tobinding. Call set_is_needed() for objects that resolve
192 non-weak references.
193 (Symbol_table::should_override): Allow a dynamic definition to
194 override an earlier one in a not-needed library.
195 * symtab.cc (Symbol_table::set_dynsym_indexes): Remove separate
196 processing for as-needed symbols. Add warning when discarding
197 version informatin.
198 * testsuite/Makefile.am (weak_as_needed): New test case.
199 * testsuite/Makefile.in: Regenerate.
200 * testsuite/weak_as_needed.sh: New test script.
201 * testsuite/weak_as_needed_a.c: New source file.
202 * testsuite/weak_as_needed_b.c: New source file.
203 * testsuite/weak_as_needed_b.script: New version script.
204 * testsuite/weak_as_needed_c.c: New source file.
205 * testsuite/weak_as_needed_c.script: New version script.
206
207 2018-06-20 Cary Coutant <ccoutant@gmail.com>
208
209 PR gold/23268
210 * dynobj.cc (Versions::Versions): Change init for needs_base_version_.
211 (Versions::record_version): Add verdefs for both shared objects and
212 executables.
213 (Versions::add_def): Likewise for base version.
214 (Versions::add_need): Don't add base version for executables.
215 (Versions::version_index): Look up version for both shared objects and
216 executables.
217 * testsuite/Makefile.am (ver_test_14): New test case.
218 * testsuite/Makefile.in: Regenerate.
219 * testsuite/ver_test_14.script: New version script.
220 * testsuite/ver_test_14.sh: New test script.
221
222 2018-06-19 Joshua Watt <jpewhacker@gmail.com>
223 Cary Coutant <ccoutant@gmail.com>
224
225 * configure.ac: Replace manual thread configuration with AX_PTHREAD.
226 Add --enable-threads=auto.
227 * Makefile.am (THREADFLAGS, THREADLIBS): New defines.
228 (AM_CFLAGS, AM_CXXFLAGS): Add $(THREADFLAGS).
229 (THREADSLIB): Remove; change all references to THREADLIBS.
230 * Makefile.in: Regenerate.
231 * aclocal.m4: Regenerate.
232 * config.in: Regenerate.
233 * configure: Regenerate.
234 * testsuite/Makefile.am (THREADSLIB): Replace with...
235 (THREADFLAGS, THREADLIBS): ... these.
236 (LDADD): Remove; add as individual defines for...
237 (object_unittest, binary_unittest, leb128_unittest)
238 (overflow_unittest): ... these tests.
239 (tls_test, tls_pic_test, tls_pie_test, tls_pie_pic_test)
240 (tls_shared_test, tls_shared_ie_test, tls_shared_gd_to_ie_test)
241 (tls_shared_gnu2_gd_to_ie_test, tls_shared_gnu2_test_LDFLAGS)
242 (tls_shared_nonpic_test_LDFLAGS): Add $(THREADFLAGS) and ($THREADLIBS).
243 * testsuite/Makefile.in: Regenerate.
244
245 2018-06-19 Cary Coutant <ccoutant@gmail.com>
246
247 * testsuite/Makefile.am (MOSTLYCLEANFILES): Add *.stderr.
248 * testsuite/Makefile.in: Regenerate.
249
250 2018-06-19 Simon Marchi <simon.marchi@ericsson.com>
251
252 * configure.ac: Remove AC_PREREQ, add missing quoting and usage
253 of AC_LANG_SOURCE.
254 * Makefile.in: Re-generate.
255 * aclocal.m4: Re-generate.
256 * configure: Re-generate.
257 * testsuite/Makefile.in: Re-generate.
258
259 2018-05-10 Stephen Crane <sjc@immunant.com>
260
261 * aarch64.cc (Target_aarch64::do_finalize_sections): Use size of
262 .got section for the _GLOBAL_OFFSET_TABLE_ symbol computation.
263
264 2018-04-24 Cary Coutant <ccoutant@gmail.com>
265
266 PR gold/20642
267 PR gold/22820
268 * gc.h (gc_process_relocs): Flag STT_SECTION symbols in symvec.
269 * icf.cc (get_section_contents): For merge sections, ignore the
270 addend for relocations against non-section symbols.
271
272 2018-04-24 Cary Coutant <ccoutant@gmail.com>
273
274 PR gold/16504
275 * dynobj.cc (Versions::symbol_section_contents): Don't set
276 VERSYM_HIDDEN flag for undefined symbols.
277 * symtab.cc (Symbol_table::add_from_object): Don't override default
278 version definition with a different default version.
279 * symtab.h (Symbol::from_dyn): New method.
280 * testsuite/plugin_test.c (struct sym_info): Add ver field.
281 (claim_file_hook): Pass symbol version to plugin API.
282 (parse_readelf_line): Parse symbol version.
283 * testsuite/Makefile.am (ver_test_pr16504): New test case.
284 * testsuite/Makefile.in: Regenerate.
285 * testsuite/ver_test_pr16504.sh: New test script.
286 * testsuite/ver_test_pr16504_a.c: New source file.
287 * testsuite/ver_test_pr16504_a.script: New version script.
288 * testsuite/ver_test_pr16504_b.c: New source file.
289 * testsuite/ver_test_pr16504_b.script: New version script.
290
291 2018-04-19 Cary Coutant <ccoutant@gmail.com>
292
293 PR gold/23046
294 * gc.h (gc_process_relocs): Pass target to
295 scan.local_reloc_may_be_function_pointer.
296
297 2018-04-18 Nick Clifton <nickc@redhat.com>
298
299 * po/es.po: Updated Spanish translation.
300
301 2018-04-14 Cary Coutant <ccoutant@gmail.com>
302
303 PR gold/23046
304 * gc.h (gc_process_relocs): Pass target to
305 scan.global_reloc_may_be_function_pointer.
306
307 2018-04-09 Alan Modra <amodra@gmail.com>
308
309 * configure: Regenerate.
310
311 2018-04-09 Alan Modra <amodra@gmail.com>
312
313 * powerpc.cc (Target_powerpc::Track_tls::maybe_skip_tls_get_addr_call):
314 Handle inline plt sequence relocs.
315 (Stub_table::Plt_stub_key::Plt_stub_key): Likewise.
316 (Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Likewise.
317 (Target_powerpc::Relocate::relocate): Likewise.
318
319 2018-04-09 Alan Modra <amodra@gmail.com>
320
321 * powerpc.cc (Target_powerpc::lplt_): New variable.
322 (Target_powerpc::lplt_section): Associated accessor.
323 (Target_powerpc::plt_off): Handle local non-ifunc symbols.
324 (Target_powerpc::make_lplt_section): New function.
325 (Target_powerpc::make_local_plt_entry): New function.
326 (Powerpc_relobj::do_relocate_sections): Write out lplt.
327 (Output_data_plt_powerpc::first_plt_entry_offset): Zero for lplt.
328 (Output_data_plt_powerpc::add_local_entry): New function.
329 (Output_data_plt_powerpc::do_write): Ignore lplt.
330 (Target_powerpc::make_iplt_section): Make lplt first.
331 (Target_powerpc::make_brlt_section): Make .branch_lt relro.
332 (Target_powerpc::Scan::local): Handle PLT16 relocs.
333
334 2018-04-09 Alan Modra <amodra@gmail.com>
335
336 * powerpc.cc (Target_powerpc::plt_off): New functions.
337 (is_plt16_reloc): New function.
338 (Stub_table::plt_off): Use Target_powerpc::plt_off.
339 (Stub_table::plt_call_size): Use plt_off.
340 (Stub_table::do_write): Likewise.
341 (Target_powerpc::Scan::get_reference_flags): Return RELATIVE_REF
342 for PLT16 relocations.
343 (Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Return true
344 for PLT16 relocations.
345 (Target_powerpc::Scan::global): Make a PLT entry for PLT16 relocations.
346 (Target_powerpc::Relocate::relocate): Support PLT16 relocations.
347 (Powerpc_scan_relocatable_reloc::global_strategy): Return RELOC_SPECIAL
348 for ppc32 plt16 relocs.
349
350 2018-04-06 Cary Coutant <ccoutant@gmail.com>
351
352 * object.cc (Sized_relobj_file::include_section_group): Store
353 reference to Kept_section info for discarded comdat sections
354 regardless of size. Move size checking to map_to_kept_section.
355 (Sized_relobj_file::include_linkonce_section): Likewise.
356 (Sized_relobj_file::map_to_kept_section): Add section name parameter.
357 Insert size checking logic from above functions.
358 (Sized_relobj_file::find_kept_section_object): New method.
359 (Sized_relobj_file::get_symbol_name): New method.
360 * object.h (Sized_relobj_file::map_to_kept_section): Add section_name
361 parameter. Adjust all callers.
362 (Sized_relobj_file::find_kept_section_object): New method.
363 (Sized_relobj_file::get_symbol_name): New method.
364 (Sized_relobj_file::Kept_comdat_section): Replace object and shndx
365 fields with sh_size, kept_section, symndx, and is_comdat fields.
366 (Sized_relobj_file::set_kept_comdat_section): Replace kept_object
367 and kept_shndx parameters with is_comdat, symndx, sh_size, and
368 kept_section.
369 (Sized_relobj_file::get_kept_comdat_section): Likewise.
370 * target-reloc.h (enum Comdat_behavior): Change CB_WARNING to CB_ERROR.
371 Adjust all references.
372 (issue_undefined_symbol_error): New function template.
373 (relocate_section): Pass section name to map_to_kept_section.
374 Move discarded section code to new function above.
375 * aarch64.cc (Target_aarch64::scan_reloc_section_for_stubs): Move
376 declaration for gsym out one level. Call issue_discarded_error.
377 * arm.cc (Target_arm::scan_reloc_section_for_stubs): Likewise.
378 * powerpc.cc (Relocate_comdat_behavior): Change CB_WARNING to CB_ERROR.
379
380 2018-04-05 Cary Coutant <ccoutant@gmail.com>
381
382 * target-reloc.h (relocate_section): Add local symbol index or global
383 symbol name to warning about relocation that refers to discarded
384 section.
385
386 2018-04-05 James Cowgill <james.cowgill@mips.com>
387
388 Revert previous patch and apply revised patch.
389
390 PR gold/22770
391 * mips.cc (Mips_got_info::record_got_page_entry): Don't insert
392 Got_page_entry for object's GOT.
393 (Mips_got_info::add_got_page_entries): Add all pages from from's GOT.
394 Rename to add_got_page_count.
395 (Got_page_entry): Remove num_pages.
396
397 2018-04-05 James Cowgill <james.cowgill@mips.com>
398
399 PR gold/22770
400 * mips.cc (Mips_got_info::record_got_page_entry): Fetch existing
401 page entries for the object's GOT.
402
403 2018-04-05 Alan Modra <amodra@gmail.com>
404
405 * powerpc.cc (Target_powerpc::make_brlt_section): Make .branch_lt relro.
406
407 2018-04-04 Nick Clifton <nickc@redhat.com>
408
409 * po/es.po: Updated Spanish translation.
410
411 2018-04-02 Cary Coutant <ccoutant@gmail.com>
412
413 PR gold/23016
414 * incremental.cc (can_incremental_update): Check for unwind section
415 type.
416 * layout.h (Layout::layout): Add sh_type parameter.
417 * layout.cc (Layout::layout): Likewise.
418 (Layout::layout_reloc): Create new output reloc section if data
419 section does not already have one.
420 (Layout::layout_eh_frame): Check for unwind section type.
421 (Layout::make_eh_frame_section): Use unwind section type for .eh_frame
422 and .eh_frame_hdr.
423 * object.h (Sized_relobj_file::Shdr_write): New typedef.
424 (Sized_relobj_file::layout_section): Add sh_type parameter.
425 (Sized_relobj_file::Deferred_layout::Deferred_layout): Add sh_type
426 parameter.
427 * object.cc (Sized_relobj_file::check_eh_frame_flags): Check for
428 unwind section type.
429 (Sized_relobj_file::layout_section): Add sh_type parameter; pass it
430 to Layout::layout.
431 (Sized_relobj_file::do_layout): Make local copy of sh_type.
432 Force .eh_frame sections to unwind section type.
433 Pass sh_type to layout_section.
434 (Sized_relobj_file<size, big_endian>::do_layout_deferred_sections):
435 Pass sh_type to layout_section.
436 * output.cc (Output_section::Output_section): Initialize reloc_section_.
437 * output.h (Output_section::reloc_section): New method.
438 (Output_section::set_reloc_section): New method.
439 (Output_section::reloc_section_): New data member.
440 * target.h (Target::unwind_section_type): New method.
441 (Target::Target_info::unwind_section_type): New data member.
442
443 * aarch64.cc (aarch64_info): Add unwind_section_type.
444 * arm.cc (arm_info, arm_nacl_info): Likewise.
445 * i386.cc (i386_info, i386_nacl_info, iamcu_info): Likewise.
446 * mips.cc (mips_info, mips_nacl_info): Likewise.
447 * powerpc.cc (powerpc_info): Likewise.
448 * s390.cc (s390_info): Likewise.
449 * sparc.cc (sparc_info): Likewise.
450 * tilegx.cc (tilegx_info): Likewise.
451 * x86_64.cc (x86_64_info, x86_64_nacl_info): Likewise.
452
453 * testsuite/Makefile.am (pr23016_1, pr23016_2): New test cases.
454 * testsuite/Makefile.in: Regenerate.
455 * testsuite/testfile.cc: Add unwind_section_type.
456 * testsuite/pr23016_1.sh: New test script.
457 * testsuite/pr23016_1a.s: New source file.
458 * testsuite/pr23016_1b.s: New source file.
459 * testsuite/pr23016_2.sh: New test script.
460 * testsuite/pr23016_2a.s: New source file.
461 * testsuite/pr23016_2b.s: New source file.
462
463 2018-03-28 Cary Coutant <ccoutant@gmail.com>
464
465 PR gold/21423
466 PR gold/22500
467 * configure.ac: Call AC_USE_SYSTEM_EXTENSIONS.
468 Replace check for --enable-plugins with AC_PLUGINS.
469 * options.cc (parse_plugin, parse_plugin_opt): Remove #ifdef.
470 (General_options::finalize): Check if plugins enabled.
471 * options.h (--plugin, --plugin-opt): Define even if plugins not
472 enabled.
473 * Makefile.in: Regenerate.
474 * aclocal.m4: Regenerate.
475 * configure: Regenerate.
476 * testsuite/Makefile.in: Regenerate.
477
478 2018-03-28 Cary Coutant <ccoutant@gmail.com>
479
480 PR gold/22969
481 * aarch64-reloc.def: Add TLSLE_LDST* relocations.
482 * aarch64.cc (Target_aarch64::optimize_tls_reloc): Likewise.
483 (Target_aarch64::Scan::local): Likewise.
484 (Target_aarch64::Scan::global): Likewise.
485 (Target_aarch64::Relocate::relocate): Likewise.
486 (Target_aarch64::Relocate::relocate_tls): Likewise.
487
488 2018-03-27 Roland McGrath <mcgrathr@google.com>
489
490 * testsuite/split_x86_64.sh: Fix bad regexp.
491
492 2018-03-26 Cary Coutant <ccoutant@gmail.com>
493
494 PR gold/22868
495 * plugin.cc (Sized_pluginobj::do_add_symbols): Use a real section
496 index instead of SHN_ABS for defined symbols.
497 * testsuite/Makefile.am (plugin_pr22868): New test case.
498 * testsuite/Makefile.in: Regenerate
499 * testsuite/plugin_pr22868.sh: New test script.
500 * testsuite/plugin_pr22868_a.c: New source file.
501 * testsuite/plugin_pr22868_b.c: New source file.
502
503 2018-03-23 Cary Coutant <ccoutant@gmail.com>
504
505 * plugin.cc (link_or_copy_file): Remove newlines from warning messages.
506 Add pedantic check for return value from ::write.
507
508 2018-03-23 Cary Coutant <ccoutant@gmail.com>
509
510 * debug.h (DEBUG_PLUGIN): New constant.
511 (DEBUG_ALL): Add DEBUG_PLUGIN.
512 (debug_string_to_enum): Likewise.
513 * plugin.cc (make_sized_plugin_object): Add filename parameter.
514 (Plugin_recorder): New class.
515 (Plugin_manager::~Plugin_manager): Delete recorder_.
516 (Plugin_manager::load_plugins): Create and initialize recorder_.
517 (Plugin_manager::claim_file): Record claimed and unclaimed files.
518 (Plugin_manager::make_plugin_object): Use object name as name for
519 plugin object, if available.
520 (Plugin_manager::add_input_file): Record replacement files.
521 (Sized_pluginobj::do_add_symbols): Record plugin symbols.
522 (Plugin_finish::run): Call Plugin_recorder::finish().
523 (make_sized_plugin_object): Add filename parameter and pass to
524 Sized_pluginobj constructor.
525 * plugin.h (Plugin::filename): New method.
526 (Plugin::recorder): New method.
527 (Plugin::recorder_): New data member.
528
529 2018-03-07 Sriraman Tallam <tmsriram@google.com>
530
531 * layout.cc (Layout::default_section_order): Check for text section
532 prefixes.
533 (Layout::text_section_name_mapping): New static member.
534 (Layout::text_section_name_mapping_count): New static member.
535 (Layout::match_section_name): New static function.
536 (Layout::output_section_name): Check for text section prefixes.
537 * layout.h (Output_section_order::ORDER_TEXT_HOT): New enum value.
538 (Output_section_order::ORDER_TEXT_STARTUP): New enum value.
539 (Output_section_order::ORDER_TEXT_EXIT): New enum value.
540 (Output_section_order::ORDER_TEXT_UNLIKELY): New enum value.
541 (Layout::text_section_name_mapping): New static member.
542 (Layout::text_section_name_mapping_count): New static member.
543 (Layout::match_section_name): New static function.
544 * options.h (keep_text_section_prefix): New -z option.
545 * testsuite/Makefile.am (keep_text_section_prefix): New test.
546 * testsuite/Makefile.in: Regenerate.
547 * testsuite/keep_text_section_prefix.cc: New test source.
548 * testsuite/keep_text_section_prefix.sh: New test script.
549
550 2018-02-22 Sriraman Tallam <tmsriram@google.com>
551
552 * plugin.cc (get_wrap_symbols): New plugin interface.
553 (load): Add get_wrap_symbols to transfer vector.
554 * plugin-api.h (ld_plugin_get_wrap_symbols): New plugin interface.
555 * testsuite/plugin_test.c (onload): Call and check get_wrap_symbols
556 interface.
557 * testsuite/plugin_test_wrap_symbols.sh: New test script.
558 * testsuite/plugin_test_wrap_symbols_1.cc: New file.
559 * testsuite/plugin_test_wrap_symbols_2.cc: New file.
560 * testsuite/Makefile.am (plugin_test_wrap_symbols): New test.
561 * testsuite/Makefile.in: Regenerate.
562
563 2018-02-07 Sriraman Tallam <tmsriram@google.com>
564
565 * expression.cc (Symbol_expression::set_expr_sym_in_real_elf):
566 New method.
567 (Unary_expression::set_expr_sym_in_real_elf): New method.
568 (Binary_expression::set_expr_sym_in_real_elf): New method.
569 (Trinary_expression::set_expr_sym_in_real_elf): New method.
570 * plugin.cc (get_symbol_resolution_info): Fix symbol resolution if
571 defined or used in defsyms.
572 * plugin.h (Plugin_manager::is_defsym_def): New method.
573 (Plugin_manager::Plugin_manager): Initialize defsym_defines_set_.
574 (Plugin_manager::defsym_defines_set_): New member.
575 (Plugin_manager::Defsym_defines_set): New typedef.
576 * script.cc (Script_options::set_defsym_uses_in_real_elf): New method.
577 (Script_options::find_defsym_defs): New method.
578 * script.h (Expression::set_expr_sym_in_real_elf): New method.
579 (Symbol_assignment::is_defsym): New method.
580 (Symbol_assignment::value): New method.
581 (Script_options::find_defsym_defs): New method.
582 (Script_options::set_defsym_uses_in_real_elf): New method.
583 * testsuite/Makefile.am (plugin_test_defsym): New test.
584 * testsuite/Makefile.in: Regenerate.
585 * testsuite/plugin_test.c: Check for new symbol resolution.
586 * testsuite/plugin_test_defsym.sh: New script.
587 * testsuite/plugin_test_defsym.c: New test source.
588
589 2018-02-07 Alan Modra <amodra@gmail.com>
590
591 Revert 2018-01-17 Alan Modra <amodra@gmail.com>
592 * options.h: Remove --speculate-indirect-jumps support.
593 * powerpc.cc: Likewise.
594
595 2018-02-02 Cary Coutant <ccoutant@gmail.com>
596
597 * PR gold/22776
598 * dwarf_reader.cc (Sized_dwarf_line_info::read_header_prolog): Add
599 support for DWARF-4 line number tables.
600 * dwarf_reader.h (Sized_dwarf_line_info::max_ops_per_insn): New field.
601
602 2018-01-18 Alan Modra <amodra@gmail.com>
603
604 * powerpc.cc (param_plt_align): New function supplying default
605 --plt-align values. Use it..
606 (Stub_table::plt_call_align): ..here, and..
607 (Output_data_glink::global_entry_align): ..here.
608 (Stub_table::stub_align): Correct 32-bit minimum alignment.
609
610 2018-01-17 Alan Modra <amodra@gmail.com>
611
612 * options.h (speculate_indirect_jumps): New option.
613 * powerpc.cc (beqctrm, beqctrlm, crseteq): New insn constants.
614 (output_bctr): New function.
615 (Stub_table::plt_call_size): Add space for speculation barrier.
616 (Stub_table::branch_stub_size): Likewise.
617 (Output_data_glink::pltresolve_size): Likewise.
618 (Stub_table::do_write): Output speculation barriers.
619
620 2018-01-17 Alan Modra <amodra@gmail.com>
621
622 * options.h (plt_align): Support for PowerPC32 too.
623 * powerpc.cc (Stub_table::stub_align): Heed --plt-align for 32-bit.
624 (Stub_table::plt_call_size, branch_stub_size): Tidy.
625 (Stub_table::plt_call_align): Implement using stub_align.
626 (Output_data_glink::global_entry_align): New function.
627 (Output_data_glink::global_entry_off): New function.
628 (Output_data_glink::global_entry_address): Use global_entry_off.
629 (Output_data_glink::pltresolve_size): New function, replacing
630 pltresolve_size_ constant. Update all uses.
631 (Output_data_glink::add_global_entry): Align offset.
632 (Output_data_glink::set_final_data_size): Use global_entry_align.
633 (Stub_table::do_write): Don't pad __glink_PLTrelsolve with nops.
634 Tidy stub output. Use global_entry_off.
635
636 2018-01-15 Cary Coutant <ccoutant@gmail.com>
637
638 PR gold/22694
639 * options.h (-fuse-ld): Add correct helparg.
640
641 2018-01-15 Nick Clifton <nickc@redhat.com>
642
643 * po/uk.po: Updated Ukranian translation.
644
645 2018-01-13 Nick Clifton <nickc@redhat.com>
646
647 * po/gold.pot: Regenerated.
648
649 2018-01-13 Nick Clifton <nickc@redhat.com>
650
651 2.30 branch created.
652
653 2018-01-12 Cary Coutant <ccoutant@gmail.com>
654
655 * NEWS: Add new features in 1.15.
656 * version.cc (version_string): Bump to 1.15.
657
658 2018-01-12 Sterling Augustine <saugustine@google.com>
659
660 * cref.cc (Cref_inputs::Cref_table_compare::operator): Add
661 conditionals and calls to is_forwarder.
662
663 2018-01-03 Alan Modra <amodra@gmail.com>
664
665 Update year range in copyright notice of all files.
666
667 For older changes see ChangeLog-2017
668 \f
669 Copyright (C) 2018 Free Software Foundation, Inc.
670
671 Copying and distribution of this file, with or without modification,
672 are permitted in any medium without royalty provided the copyright
673 notice and this notice are preserved.
674
675 Local Variables:
676 mode: change-log
677 left-margin: 8
678 fill-column: 74
679 version-control: never
680 End:
This page took 0.063657 seconds and 5 git commands to generate.