Fix the MSP430 assembler's parsing of register names.
[deliverable/binutils-gdb.git] / gold / ChangeLog
CommitLineData
71300e2c
NC
12018-06-24 Nick Clifton <nickc@redhat.com>
2
3 * po/gold.pot: Regenerate.
4
719d8288
NC
52018-06-24 Nick Clifton <nickc@redhat.com>
6
7 2.31 branch created.
8
155ea1bc
CC
92018-06-23 Cary Coutant <ccoutant@gmail.com>
10
11 * version.cc (version_string): Bump to 1.16.
12 * NEWS: Add new features in 1.16.
13
add41311
CC
142018-06-23 Cary Coutant <ccoutant@gmail.com>
15
16 PR gold/22914
17 * x86_64.cc (Target_x86_64::record_gnu_property): Initialize val.
18
750ea5ed
CC
192018-06-23 Cary Coutant <ccoutant@gmail.com>
20
21 PR gold/22915
22 * x86_64.cc (Output_data_plt_x86_64_ibt): New class.
23 (Target_x86_64::do_make_data_plt): (All instantiations) Check for
24 IBT feature bit and create IBT PLTs.
25
a2575bec
CC
262018-06-22 Cary Coutant <ccoutant@gmail.com>
27
28 PR gold/22914
29 * layout.cc (read_sized_value): Fix spelling of section name.
30 (Layout::layout_gnu_property): Call Sized_target::record_gnu_property
31 for target-specific properties;
32 don't store them with target-independent properties yet.
33 (Layout::merge_gnu_properties): New method.
34 (Layout::add_gnu_property): New method.
35 (Layout::create_gnu_properties_note): Call target to finalize
36 target-specific properties. Fix spelling of output section name.
37 * layout.h (Layout::merge_gnu_properties): New method.
38 (Layout::add_gnu_property): New method.
39 * object.cc (Sized_relobj_file::do_layout): Call
40 Layout::merge_gnu_properties.
41 * target.h (Target::merge_gnu_property): Remove.
42 (Target::finalize_gnu_properties): New method.
43 (Target::do_merge_gnu_property): Move to Sized_target and rename.
44 (Target::do_finalize_gnu_properties): New virtual method.
45 (Sized_target::record_gnu_property): Moved and renamed from
46 Target::do_merge_gnu_property.
47 (Sized_target::merge_gnu_properties): New virtual method.
48 * x86_64.cc (Target_x86_64::isa_1_used_, isa_1_needed_)
49 (feature_1_, object_feature_1_, seen_first_object_): New data members.
50 (Target_x86_64::do_merge_gnu_property): Rename to ...
51 (Target_x86_64::record_gnu_property): ... this. Save target-specific
52 properties in Target class object.
53 (Target_x86_64::merge_gnu_properties): New method.
54 (add_property): New static inline function.
55 (Target_x86_64::do_finalize_gnu_properties): New method.
56 * testsuite/Makefile.am (gnu_property_test): Remove C source file;
57 link directly without compiler driver.
58 * testsuite/Makefile.in: Regenerate.
59 * testsuite/gnu_property_a.S: Add _start.
60
a1893a82
CC
612018-06-22 Cary Coutant <ccoutant@gmail.com>
62
63 * incremental.cc (Sized_incremental_binary::setup_readers): Use
64 emplace_back for GCC 5 and later.
65 * incremental.h (Incremental_binary::Input_reader): Provide copy
66 constructor.
67 (Sized_incremental_binary::Sized_input_reader): Likewise.
68
6c04fd9b
CC
692018-06-22 Cary Coutant <ccoutant@gmail.com>
70
71 PR gold/22914
72 * layout.cc (Layout::Layout): Initialize gnu_properties_.
73 (read_sized_value, write_sized_value): New functions.
74 (Layout::layout_gnu_property): New method.
75 (Layout::create_notes): Call create_gnu_properties_note.
76 (Layout::create_gnu_properties_note): New method.
77 * layout.h (Layout::layout_gnu_property): New method.
78 (Layout::create_gnu_properties_note): New method.
79 (Layout::Gnu_property, Layout::Gnu_properties): New types.
80 (Layout::gnu_properties_): New data member.
81 * object.cc (Sized_relobj_file::layout_gnu_property_section): New
82 method.
83 (Sized_relobj_file::do_layout): Handle .note.gnu.property sections.
84 * object.h (Sized_relobj_file::layout_gnu_property_section): New
85 method.
86 * target.h (Target::merge_gnu_property): New method.
87 (Target::do_merge_gnu_property): New virtual method.
88 * x86_64.cc (Target_x86_64::do_merge_gnu_property): New method.
89 * testsuite/Makefile.am (gnu_property_test): New test case.
90 * testsuite/Makefile.in: Regenerate.
91 * testsuite/gnu_property_a.S: New source file.
92 * testsuite/gnu_property_b.S: New source file.
93 * testsuite/gnu_property_c.S: New source file.
94 * testsuite/gnu_property_main.c: New source file.
95 * testsuite/gnu_property_test.sh: New test script.
96
cea6ffbd
CC
972018-06-21 Cary Coutant <ccoutant@gmail.com>
98
99 * resolve.cc (Symbol_table::resolve): Rename tobinding to
100 orig_tobinding. Call set_is_needed() for objects that resolve
101 non-weak references.
102 (Symbol_table::should_override): Allow a dynamic definition to
103 override an earlier one in a not-needed library.
104 * symtab.cc (Symbol_table::set_dynsym_indexes): Remove separate
105 processing for as-needed symbols. Add warning when discarding
106 version informatin.
107 * testsuite/Makefile.am (weak_as_needed): New test case.
108 * testsuite/Makefile.in: Regenerate.
109 * testsuite/weak_as_needed.sh: New test script.
110 * testsuite/weak_as_needed_a.c: New source file.
111 * testsuite/weak_as_needed_b.c: New source file.
112 * testsuite/weak_as_needed_b.script: New version script.
113 * testsuite/weak_as_needed_c.c: New source file.
114 * testsuite/weak_as_needed_c.script: New version script.
115
ebb13322
CC
1162018-06-20 Cary Coutant <ccoutant@gmail.com>
117
118 PR gold/23268
119 * dynobj.cc (Versions::Versions): Change init for needs_base_version_.
120 (Versions::record_version): Add verdefs for both shared objects and
121 executables.
122 (Versions::add_def): Likewise for base version.
123 (Versions::add_need): Don't add base version for executables.
124 (Versions::version_index): Look up version for both shared objects and
125 executables.
126 * testsuite/Makefile.am (ver_test_14): New test case.
127 * testsuite/Makefile.in: Regenerate.
128 * testsuite/ver_test_14.script: New version script.
129 * testsuite/ver_test_14.sh: New test script.
130
c8dc28bc
CC
1312018-06-19 Joshua Watt <jpewhacker@gmail.com>
132 Cary Coutant <ccoutant@gmail.com>
133
134 * configure.ac: Replace manual thread configuration with AX_PTHREAD.
135 Add --enable-threads=auto.
136 * Makefile.am (THREADFLAGS, THREADLIBS): New defines.
4ef2c1b9 137 (AM_CFLAGS, AM_CXXFLAGS): Add $(THREADFLAGS).
c8dc28bc
CC
138 (THREADSLIB): Remove; change all references to THREADLIBS.
139 * Makefile.in: Regenerate.
140 * aclocal.m4: Regenerate.
141 * config.in: Regenerate.
142 * configure: Regenerate.
143 * testsuite/Makefile.am (THREADSLIB): Replace with...
144 (THREADFLAGS, THREADLIBS): ... these.
145 (LDADD): Remove; add as individual defines for...
146 (object_unittest, binary_unittest, leb128_unittest)
147 (overflow_unittest): ... these tests.
148 (tls_test, tls_pic_test, tls_pie_test, tls_pie_pic_test)
149 (tls_shared_test, tls_shared_ie_test, tls_shared_gd_to_ie_test)
150 (tls_shared_gnu2_gd_to_ie_test, tls_shared_gnu2_test_LDFLAGS)
151 (tls_shared_nonpic_test_LDFLAGS): Add $(THREADFLAGS) and ($THREADLIBS).
152 * testsuite/Makefile.in: Regenerate.
153
27ab0424
CC
1542018-06-19 Cary Coutant <ccoutant@gmail.com>
155
156 * testsuite/Makefile.am (MOSTLYCLEANFILES): Add *.stderr.
157 * testsuite/Makefile.in: Regenerate.
158
d0ac1c44
SM
1592018-06-19 Simon Marchi <simon.marchi@ericsson.com>
160
161 * configure.ac: Remove AC_PREREQ, add missing quoting and usage
162 of AC_LANG_SOURCE.
163 * Makefile.in: Re-generate.
164 * aclocal.m4: Re-generate.
165 * configure: Re-generate.
166 * testsuite/Makefile.in: Re-generate.
167
a45a8f91
SC
1682018-05-10 Stephen Crane <sjc@immunant.com>
169
170 * aarch64.cc (Target_aarch64::do_finalize_sections): Use size of
171 .got section for the _GLOBAL_OFFSET_TABLE_ symbol computation.
172
651d1620
CC
1732018-04-24 Cary Coutant <ccoutant@gmail.com>
174
175 PR gold/20642
176 PR gold/22820
177 * gc.h (gc_process_relocs): Flag STT_SECTION symbols in symvec.
178 * icf.cc (get_section_contents): For merge sections, ignore the
179 addend for relocations against non-section symbols.
180
890d1555
CC
1812018-04-24 Cary Coutant <ccoutant@gmail.com>
182
183 PR gold/16504
184 * dynobj.cc (Versions::symbol_section_contents): Don't set
185 VERSYM_HIDDEN flag for undefined symbols.
186 * symtab.cc (Symbol_table::add_from_object): Don't override default
187 version definition with a different default version.
188 * symtab.h (Symbol::from_dyn): New method.
189 * testsuite/plugin_test.c (struct sym_info): Add ver field.
190 (claim_file_hook): Pass symbol version to plugin API.
191 (parse_readelf_line): Parse symbol version.
192 * testsuite/Makefile.am (ver_test_pr16504): New test case.
193 * testsuite/Makefile.in: Regenerate.
194 * testsuite/ver_test_pr16504.sh: New test script.
195 * testsuite/ver_test_pr16504_a.c: New source file.
196 * testsuite/ver_test_pr16504_a.script: New version script.
197 * testsuite/ver_test_pr16504_b.c: New source file.
198 * testsuite/ver_test_pr16504_b.script: New version script.
199
d83d5403
CC
2002018-04-19 Cary Coutant <ccoutant@gmail.com>
201
202 PR gold/23046
203 * gc.h (gc_process_relocs): Pass target to
204 scan.local_reloc_may_be_function_pointer.
205
f792cedd
NC
2062018-04-18 Nick Clifton <nickc@redhat.com>
207
208 * po/es.po: Updated Spanish translation.
209
aae82809
CC
2102018-04-14 Cary Coutant <ccoutant@gmail.com>
211
212 PR gold/23046
213 * gc.h (gc_process_relocs): Pass target to
214 scan.global_reloc_may_be_function_pointer.
215
c4a614e2
AM
2162018-04-09 Alan Modra <amodra@gmail.com>
217
218 * configure: Regenerate.
219
23cedd1d
AM
2202018-04-09 Alan Modra <amodra@gmail.com>
221
222 * powerpc.cc (Target_powerpc::Track_tls::maybe_skip_tls_get_addr_call):
223 Handle inline plt sequence relocs.
224 (Stub_table::Plt_stub_key::Plt_stub_key): Likewise.
225 (Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Likewise.
226 (Target_powerpc::Relocate::relocate): Likewise.
227
2d7ad24e
AM
2282018-04-09 Alan Modra <amodra@gmail.com>
229
230 * powerpc.cc (Target_powerpc::lplt_): New variable.
231 (Target_powerpc::lplt_section): Associated accessor.
232 (Target_powerpc::plt_off): Handle local non-ifunc symbols.
233 (Target_powerpc::make_lplt_section): New function.
234 (Target_powerpc::make_local_plt_entry): New function.
235 (Powerpc_relobj::do_relocate_sections): Write out lplt.
236 (Output_data_plt_powerpc::first_plt_entry_offset): Zero for lplt.
237 (Output_data_plt_powerpc::add_local_entry): New function.
238 (Output_data_plt_powerpc::do_write): Ignore lplt.
239 (Target_powerpc::make_iplt_section): Make lplt first.
240 (Target_powerpc::make_brlt_section): Make .branch_lt relro.
241 (Target_powerpc::Scan::local): Handle PLT16 relocs.
242
08be3224
AM
2432018-04-09 Alan Modra <amodra@gmail.com>
244
245 * powerpc.cc (Target_powerpc::plt_off): New functions.
246 (is_plt16_reloc): New function.
247 (Stub_table::plt_off): Use Target_powerpc::plt_off.
248 (Stub_table::plt_call_size): Use plt_off.
249 (Stub_table::do_write): Likewise.
250 (Target_powerpc::Scan::get_reference_flags): Return RELATIVE_REF
251 for PLT16 relocations.
252 (Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Return true
253 for PLT16 relocations.
254 (Target_powerpc::Scan::global): Make a PLT entry for PLT16 relocations.
255 (Target_powerpc::Relocate::relocate): Support PLT16 relocations.
256 (Powerpc_scan_relocatable_reloc::global_strategy): Return RELOC_SPECIAL
257 for ppc32 plt16 relocs.
258
43193fe9
CC
2592018-04-06 Cary Coutant <ccoutant@gmail.com>
260
261 * object.cc (Sized_relobj_file::include_section_group): Store
262 reference to Kept_section info for discarded comdat sections
263 regardless of size. Move size checking to map_to_kept_section.
264 (Sized_relobj_file::include_linkonce_section): Likewise.
265 (Sized_relobj_file::map_to_kept_section): Add section name parameter.
266 Insert size checking logic from above functions.
267 (Sized_relobj_file::find_kept_section_object): New method.
268 (Sized_relobj_file::get_symbol_name): New method.
269 * object.h (Sized_relobj_file::map_to_kept_section): Add section_name
270 parameter. Adjust all callers.
271 (Sized_relobj_file::find_kept_section_object): New method.
272 (Sized_relobj_file::get_symbol_name): New method.
273 (Sized_relobj_file::Kept_comdat_section): Replace object and shndx
274 fields with sh_size, kept_section, symndx, and is_comdat fields.
275 (Sized_relobj_file::set_kept_comdat_section): Replace kept_object
276 and kept_shndx parameters with is_comdat, symndx, sh_size, and
277 kept_section.
278 (Sized_relobj_file::get_kept_comdat_section): Likewise.
279 * target-reloc.h (enum Comdat_behavior): Change CB_WARNING to CB_ERROR.
280 Adjust all references.
281 (issue_undefined_symbol_error): New function template.
282 (relocate_section): Pass section name to map_to_kept_section.
283 Move discarded section code to new function above.
284 * aarch64.cc (Target_aarch64::scan_reloc_section_for_stubs): Move
285 declaration for gsym out one level. Call issue_discarded_error.
286 * arm.cc (Target_arm::scan_reloc_section_for_stubs): Likewise.
287 * powerpc.cc (Relocate_comdat_behavior): Change CB_WARNING to CB_ERROR.
288
c54b27d1
CC
2892018-04-05 Cary Coutant <ccoutant@gmail.com>
290
291 * target-reloc.h (relocate_section): Add local symbol index or global
292 symbol name to warning about relocation that refers to discarded
293 section.
294
494e49c9
CC
2952018-04-05 James Cowgill <james.cowgill@mips.com>
296
297 Revert previous patch and apply revised patch.
298
299 PR gold/22770
300 * mips.cc (Mips_got_info::record_got_page_entry): Don't insert
301 Got_page_entry for object's GOT.
302 (Mips_got_info::add_got_page_entries): Add all pages from from's GOT.
303 Rename to add_got_page_count.
304 (Got_page_entry): Remove num_pages.
305
67faf1f4
JC
3062018-04-05 James Cowgill <james.cowgill@mips.com>
307
308 PR gold/22770
309 * mips.cc (Mips_got_info::record_got_page_entry): Fetch existing
310 page entries for the object's GOT.
311
54483898
AM
3122018-04-05 Alan Modra <amodra@gmail.com>
313
314 * powerpc.cc (Target_powerpc::make_brlt_section): Make .branch_lt relro.
315
4fb0d2b9
NC
3162018-04-04 Nick Clifton <nickc@redhat.com>
317
318 * po/es.po: Updated Spanish translation.
319
bce5a025
CC
3202018-04-02 Cary Coutant <ccoutant@gmail.com>
321
322 PR gold/23016
323 * incremental.cc (can_incremental_update): Check for unwind section
324 type.
325 * layout.h (Layout::layout): Add sh_type parameter.
326 * layout.cc (Layout::layout): Likewise.
327 (Layout::layout_reloc): Create new output reloc section if data
328 section does not already have one.
329 (Layout::layout_eh_frame): Check for unwind section type.
330 (Layout::make_eh_frame_section): Use unwind section type for .eh_frame
331 and .eh_frame_hdr.
332 * object.h (Sized_relobj_file::Shdr_write): New typedef.
333 (Sized_relobj_file::layout_section): Add sh_type parameter.
334 (Sized_relobj_file::Deferred_layout::Deferred_layout): Add sh_type
335 parameter.
336 * object.cc (Sized_relobj_file::check_eh_frame_flags): Check for
337 unwind section type.
338 (Sized_relobj_file::layout_section): Add sh_type parameter; pass it
339 to Layout::layout.
340 (Sized_relobj_file::do_layout): Make local copy of sh_type.
341 Force .eh_frame sections to unwind section type.
342 Pass sh_type to layout_section.
343 (Sized_relobj_file<size, big_endian>::do_layout_deferred_sections):
344 Pass sh_type to layout_section.
345 * output.cc (Output_section::Output_section): Initialize reloc_section_.
346 * output.h (Output_section::reloc_section): New method.
347 (Output_section::set_reloc_section): New method.
348 (Output_section::reloc_section_): New data member.
349 * target.h (Target::unwind_section_type): New method.
350 (Target::Target_info::unwind_section_type): New data member.
351
352 * aarch64.cc (aarch64_info): Add unwind_section_type.
353 * arm.cc (arm_info, arm_nacl_info): Likewise.
354 * i386.cc (i386_info, i386_nacl_info, iamcu_info): Likewise.
355 * mips.cc (mips_info, mips_nacl_info): Likewise.
356 * powerpc.cc (powerpc_info): Likewise.
357 * s390.cc (s390_info): Likewise.
358 * sparc.cc (sparc_info): Likewise.
359 * tilegx.cc (tilegx_info): Likewise.
360 * x86_64.cc (x86_64_info, x86_64_nacl_info): Likewise.
361
362 * testsuite/Makefile.am (pr23016_1, pr23016_2): New test cases.
363 * testsuite/Makefile.in: Regenerate.
364 * testsuite/testfile.cc: Add unwind_section_type.
365 * testsuite/pr23016_1.sh: New test script.
366 * testsuite/pr23016_1a.s: New source file.
367 * testsuite/pr23016_1b.s: New source file.
368 * testsuite/pr23016_2.sh: New test script.
369 * testsuite/pr23016_2a.s: New source file.
370 * testsuite/pr23016_2b.s: New source file.
371
24538276
CC
3722018-03-28 Cary Coutant <ccoutant@gmail.com>
373
374 PR gold/21423
375 PR gold/22500
376 * configure.ac: Call AC_USE_SYSTEM_EXTENSIONS.
377 Replace check for --enable-plugins with AC_PLUGINS.
378 * options.cc (parse_plugin, parse_plugin_opt): Remove #ifdef.
379 (General_options::finalize): Check if plugins enabled.
380 * options.h (--plugin, --plugin-opt): Define even if plugins not
381 enabled.
382 * Makefile.in: Regenerate.
383 * aclocal.m4: Regenerate.
384 * configure: Regenerate.
385 * testsuite/Makefile.in: Regenerate.
386
e82e6b2b
CC
3872018-03-28 Cary Coutant <ccoutant@gmail.com>
388
389 PR gold/22969
390 * aarch64-reloc.def: Add TLSLE_LDST* relocations.
391 * aarch64.cc (Target_aarch64::optimize_tls_reloc): Likewise.
392 (Target_aarch64::Scan::local): Likewise.
393 (Target_aarch64::Scan::global): Likewise.
394 (Target_aarch64::Relocate::relocate): Likewise.
395 (Target_aarch64::Relocate::relocate_tls): Likewise.
396
9c75b456
RM
3972018-03-27 Roland McGrath <mcgrathr@google.com>
398
399 * testsuite/split_x86_64.sh: Fix bad regexp.
400
0b7a4aa6
CC
4012018-03-26 Cary Coutant <ccoutant@gmail.com>
402
0b7a4aa6
CC
403 PR gold/22868
404 * plugin.cc (Sized_pluginobj::do_add_symbols): Use a real section
405 index instead of SHN_ABS for defined symbols.
406 * testsuite/Makefile.am (plugin_pr22868): New test case.
407 * testsuite/Makefile.in: Regenerate
408 * testsuite/plugin_pr22868.sh: New test script.
409 * testsuite/plugin_pr22868_a.c: New source file.
410 * testsuite/plugin_pr22868_b.c: New source file.
411
8da9a904
CC
4122018-03-23 Cary Coutant <ccoutant@gmail.com>
413
414 * plugin.cc (link_or_copy_file): Remove newlines from warning messages.
415 Add pedantic check for return value from ::write.
416
3215deaa
CC
4172018-03-23 Cary Coutant <ccoutant@gmail.com>
418
419 * debug.h (DEBUG_PLUGIN): New constant.
420 (DEBUG_ALL): Add DEBUG_PLUGIN.
421 (debug_string_to_enum): Likewise.
422 * plugin.cc (make_sized_plugin_object): Add filename parameter.
423 (Plugin_recorder): New class.
424 (Plugin_manager::~Plugin_manager): Delete recorder_.
425 (Plugin_manager::load_plugins): Create and initialize recorder_.
426 (Plugin_manager::claim_file): Record claimed and unclaimed files.
427 (Plugin_manager::make_plugin_object): Use object name as name for
428 plugin object, if available.
429 (Plugin_manager::add_input_file): Record replacement files.
430 (Sized_pluginobj::do_add_symbols): Record plugin symbols.
431 (Plugin_finish::run): Call Plugin_recorder::finish().
432 (make_sized_plugin_object): Add filename parameter and pass to
433 Sized_pluginobj constructor.
434 * plugin.h (Plugin::filename): New method.
435 (Plugin::recorder): New method.
436 (Plugin::recorder_): New data member.
437
779bdadb
ST
4382018-03-07 Sriraman Tallam <tmsriram@google.com>
439
440 * layout.cc (Layout::default_section_order): Check for text section
441 prefixes.
442 (Layout::text_section_name_mapping): New static member.
443 (Layout::text_section_name_mapping_count): New static member.
444 (Layout::match_section_name): New static function.
445 (Layout::output_section_name): Check for text section prefixes.
446 * layout.h (Output_section_order::ORDER_TEXT_HOT): New enum value.
447 (Output_section_order::ORDER_TEXT_STARTUP): New enum value.
448 (Output_section_order::ORDER_TEXT_EXIT): New enum value.
449 (Output_section_order::ORDER_TEXT_UNLIKELY): New enum value.
450 (Layout::text_section_name_mapping): New static member.
451 (Layout::text_section_name_mapping_count): New static member.
452 (Layout::match_section_name): New static function.
453 * options.h (keep_text_section_prefix): New -z option.
454 * testsuite/Makefile.am (keep_text_section_prefix): New test.
455 * testsuite/Makefile.in: Regenerate.
456 * testsuite/keep_text_section_prefix.cc: New test source.
457 * testsuite/keep_text_section_prefix.sh: New test script.
458
0b65c07b
ST
4592018-02-22 Sriraman Tallam <tmsriram@google.com>
460
461 * plugin.cc (get_wrap_symbols): New plugin interface.
462 (load): Add get_wrap_symbols to transfer vector.
463 * plugin-api.h (ld_plugin_get_wrap_symbols): New plugin interface.
464 * testsuite/plugin_test.c (onload): Call and check get_wrap_symbols
465 interface.
466 * testsuite/plugin_test_wrap_symbols.sh: New test script.
467 * testsuite/plugin_test_wrap_symbols_1.cc: New file.
468 * testsuite/plugin_test_wrap_symbols_2.cc: New file.
469 * testsuite/Makefile.am (plugin_test_wrap_symbols): New test.
470 * testsuite/Makefile.in: Regenerate.
471
3281b315
ST
4722018-02-07 Sriraman Tallam <tmsriram@google.com>
473
474 * expression.cc (Symbol_expression::set_expr_sym_in_real_elf):
475 New method.
476 (Unary_expression::set_expr_sym_in_real_elf): New method.
477 (Binary_expression::set_expr_sym_in_real_elf): New method.
478 (Trinary_expression::set_expr_sym_in_real_elf): New method.
479 * plugin.cc (get_symbol_resolution_info): Fix symbol resolution if
480 defined or used in defsyms.
481 * plugin.h (Plugin_manager::is_defsym_def): New method.
482 (Plugin_manager::Plugin_manager): Initialize defsym_defines_set_.
483 (Plugin_manager::defsym_defines_set_): New member.
484 (Plugin_manager::Defsym_defines_set): New typedef.
485 * script.cc (Script_options::set_defsym_uses_in_real_elf): New method.
486 (Script_options::find_defsym_defs): New method.
487 * script.h (Expression::set_expr_sym_in_real_elf): New method.
488 (Symbol_assignment::is_defsym): New method.
489 (Symbol_assignment::value): New method.
490 (Script_options::find_defsym_defs): New method.
491 (Script_options::set_defsym_uses_in_real_elf): New method.
492 * testsuite/Makefile.am (plugin_test_defsym): New test.
493 * testsuite/Makefile.in: Regenerate.
494 * testsuite/plugin_test.c: Check for new symbol resolution.
495 * testsuite/plugin_test_defsym.sh: New script.
496 * testsuite/plugin_test_defsym.c: New test source.
497
407aa07c
AM
4982018-02-07 Alan Modra <amodra@gmail.com>
499
500 Revert 2018-01-17 Alan Modra <amodra@gmail.com>
501 * options.h: Remove --speculate-indirect-jumps support.
502 * powerpc.cc: Likewise.
503
c8334458
CC
5042018-02-02 Cary Coutant <ccoutant@gmail.com>
505
506 * PR gold/22776
507 * dwarf_reader.cc (Sized_dwarf_line_info::read_header_prolog): Add
508 support for DWARF-4 line number tables.
509 * dwarf_reader.h (Sized_dwarf_line_info::max_ops_per_insn): New field.
510
691d2e9a
AM
5112018-01-18 Alan Modra <amodra@gmail.com>
512
513 * powerpc.cc (param_plt_align): New function supplying default
514 --plt-align values. Use it..
515 (Stub_table::plt_call_align): ..here, and..
516 (Output_data_glink::global_entry_align): ..here.
517 (Stub_table::stub_align): Correct 32-bit minimum alignment.
518
1be5d8d3
AM
5192018-01-17 Alan Modra <amodra@gmail.com>
520
521 * options.h (speculate_indirect_jumps): New option.
522 * powerpc.cc (beqctrm, beqctrlm, crseteq): New insn constants.
523 (output_bctr): New function.
524 (Stub_table::plt_call_size): Add space for speculation barrier.
525 (Stub_table::branch_stub_size): Likewise.
526 (Output_data_glink::pltresolve_size): Likewise.
527 (Stub_table::do_write): Output speculation barriers.
528
9e390558
AM
5292018-01-17 Alan Modra <amodra@gmail.com>
530
531 * options.h (plt_align): Support for PowerPC32 too.
532 * powerpc.cc (Stub_table::stub_align): Heed --plt-align for 32-bit.
533 (Stub_table::plt_call_size, branch_stub_size): Tidy.
534 (Stub_table::plt_call_align): Implement using stub_align.
535 (Output_data_glink::global_entry_align): New function.
536 (Output_data_glink::global_entry_off): New function.
537 (Output_data_glink::global_entry_address): Use global_entry_off.
538 (Output_data_glink::pltresolve_size): New function, replacing
539 pltresolve_size_ constant. Update all uses.
540 (Output_data_glink::add_global_entry): Align offset.
541 (Output_data_glink::set_final_data_size): Use global_entry_align.
542 (Stub_table::do_write): Don't pad __glink_PLTrelsolve with nops.
543 Tidy stub output. Use global_entry_off.
544
930b5f8b
CC
5452018-01-15 Cary Coutant <ccoutant@gmail.com>
546
547 PR gold/22694
548 * options.h (-fuse-ld): Add correct helparg.
549
616dcb87
NC
5502018-01-15 Nick Clifton <nickc@redhat.com>
551
552 * po/uk.po: Updated Ukranian translation.
553
3957a496
NC
5542018-01-13 Nick Clifton <nickc@redhat.com>
555
556 * po/gold.pot: Regenerated.
557
faf766e3
NC
5582018-01-13 Nick Clifton <nickc@redhat.com>
559
560 2.30 branch created.
561
27f7b092
CC
5622018-01-12 Cary Coutant <ccoutant@gmail.com>
563
564 * NEWS: Add new features in 1.15.
565 * version.cc (version_string): Bump to 1.15.
566
5672018-01-12 Sterling Augustine <saugustine@google.com>
b4b07ef1
EC
568
569 * cref.cc (Cref_inputs::Cref_table_compare::operator): Add
570 conditionals and calls to is_forwarder.
571
219d1afa
AM
5722018-01-03 Alan Modra <amodra@gmail.com>
573
574 Update year range in copyright notice of all files.
575
1e563868 576For older changes see ChangeLog-2017
3499769a 577\f
1e563868 578Copyright (C) 2018 Free Software Foundation, Inc.
3499769a
AM
579
580Copying and distribution of this file, with or without modification,
581are permitted in any medium without royalty provided the copyright
582notice and this notice are preserved.
583
584Local Variables:
585mode: change-log
586left-margin: 8
587fill-column: 74
588version-control: never
589End:
This page took 0.163175 seconds and 4 git commands to generate.