bfd doc chew
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
b4ab4364
AM
12014-04-09 Alan Modra <amodra@gmail.com>
2
3 * elf32-ppc.c (ppc_elf_relocate_section): Remove bctr from list
4 of safe ppc476 insns at end of page. Also remove non-branch insns.
5 Expand comments.
6
61e2488c
JT
72014-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
8
9 * peXXigen.c (pe_print_debugdata): New function: Displays the
10 contents of the debug directory and decodes codeview entries.
11 (_bfd_XXi_swap_debugdir_in, _bfd_XXi_swap_debugdir_out)
12 (_bfd_XXi_slurp_codeview_record, _bfd_XXi_write_codeview_record):
13 Add functions for reading and writing debugdir and codeview
14 records.
15 * libpei.h (_bfd_XXi_swap_debugdir_in, _bfd_XXi_swap_debugdir_out)
16 (_bfd_XXi_write_codeview_record): Add prototypes and macros.
17 * libcoff-in.h (pe_tdata): Add build-id data.
18 * libcoff.h: Regenerate.
19 * coffcode.h (coff_write_object_contents): Run build_id
20 after_write_object_contents hook.
21
115c6d5c
AM
222014-04-05 Alan Modra <amodra@gmail.com>
23
24 * elflink.c (_bfd_elf_add_default_symbol): Pass poldbfd when
25 merging non-default sym.
26
26954155
TG
272014-04-04 Tristan Gingold <gingold@adacore.com>
28
29 * mach-o.c (bfd_mach_o_header_p): Reject 64 bit target when not
30 configured for.
31
ca148c5a
TG
322014-04-04 Tristan Gingold <gingold@adacore.com>
33
34 * mach-o.c (bfd_mach_o_convert_section_name_to_mach_o): Fix
35 thinko on names length.
36
47c50932
TG
372014-04-04 Tristan Gingold <gingold@adacore.com>
38
39 * mach-o-i386.c (bfd_mach_o_i386_swap_reloc_out): Use target index
40 of output_section.
41 * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Ditto.
42
4ef27e04
TG
432014-04-04 Tristan Gingold <gingold@adacore.com>
44
45 * bfd.c (bfd_get_arch_size): Default is taken from arch.
46
b69c8728
JT
472014-04-03 Jon Turney <jon.turney@dronecode.org.uk>
48
49 * peXXigen.c (pe_print_edata): Verify edt.name lies inside
50 section before dereferencing.
51 (pe_print_idata, pe_print_edata, pe_print_reloc)
52 (rsrc_print_section): Don't bother interpreting the contents
53 of sections which have no contents.
54
1b6aeedb
MG
552014-04-03 Maria Guseva <m.guseva@samsung.com>
56
57 PR ld/16803
58 * elf.c (_bfd_elf_set_section_contents): Use correct type to hold
59 file position.
60
707e555b
TG
612014-04-03 Tristan Gingold <gingold@adacore.com>
62
63 * mach-o.c (bfd_mach_o_mangle_symbols): Use index from
64 output_section.
65 (bfd_mach_o_build_seg_command): Add comment. Realign segment.
66 Fix style.
67 (bfd_mach_o_build_commands, bfd_mach_o_read_thread): Fix style.
68
c3fcb775
AM
692014-04-03 Alan Modra <amodra@gmail.com>
70
71 * elf-bfd.h (struct elf_backend_data
72 <elf_backend_bfd_from_remote_memory>): Replace "size_t size"
73 with "bfd_size_type size".
74 (_bfd_elf32_bfd_from_remote_memory): Likewise.
75 (_bfd_elf64_bfd_from_remote_memory): Likewise.
76 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
77 * elfcode.h (bfd_from_remote_memory): Likewise.
2493504a
AM
78 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Likewise.
79 * bfd-in2.h: Regenerate.
c3fcb775 80
7a79c514
TG
812014-04-02 Tristan Gingold <gingold@adacore.com>
82
83 * mach-o.h (bfd_mach_o_twolevel_hints_command)
84 (bfd_mach_o_prebind_cksum_command): New types.
85 (bfd_mach_o_prebound_dylib_command): Rewrite.
86 (bfd_mach_o_load_command): Add prebind_cksum and twolevel_hints
87 fields.
88 * mach-o.c (bfd_mach_o_read_prebound_dylib): Read and decode the
89 command.
90 (bfd_mach_o_read_prebind_cksum): New function.
91 (bfd_mach_o_read_twolevel_hints): Ditto.
92 (bfd_mach_o_read_command): Handle prebind cksum and twolevel hints
93 commands.
94
5979d6b6
AM
952014-04-02 Alan Modra <amodra@gmail.com>
96
97 * elfcode.h (bfd_from_remote_memory): Add "size" parameter.
98 Consolidate code handling possible section headers past end of
99 segment. Don't use p_align for page size guess, instead use
100 minpagesize. Take note of ld.so clearing section headers when
101 p_memsz > p_filesz. Handle file header specifying no section
102 headers. Handle zero p_align throughout. Default loadbase to
103 zero. Add comments. Rename contents_size to high_offset, and
104 make it a bfd_vma. Delete unnecessary bfd_set_error calls.
105 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Update prototpe.
106 * elf-bfd.h (struct elf_backend_data <elf_backend_from_remote_memory>):
107 Likewise.
108 (_bfd_elf32_bfd_from_remote_memory): Likewise.
109 (_bfd_elf64_bfd_from_remote_memory): Likewise.
110 * elf.c (bfd_elf_bfd_from_remote_memory): Adjust.
111 * bfd-in2.h: Regnerate.
112
23d72939
TG
1132014-04-01 Tristan Gingold <gingold@adacore.com>
114
115 * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Avoid to crash
116 when num == 0.
117
6a631e86
YG
1182014-03-27 Yury Gribov <y.gribov@samsung.com>
119 Pavel Fedin <p.fedin@samsung.com>
120
121 * elf32-arm.c: Add support for limited pretty-printing of PLT
122 entries on eabi and nacl targets.
123 (elf32_arm_get_synthetic_symtab): Add new callback.
124 (elf32_arm_nacl_plt_sym_val): Likewise.
125 (elf32_arm_plt0_size): Add helper function.
126 (elf32_arm_plt_size): Likewise.
127
10be66a4
TG
1282014-03-27 Tristan Gingold <gingold@adacore.com>
129
130 * mach-o.c (bfd_mach_o_read_dylinker): Remove assert.
131 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_DYLD_ENVIRONMENT.
132
3cc27770
TG
1332014-03-27 Tristan Gingold <gingold@adacore.com>
134
135 * mach-o.h (bfd_mach_o_get_base_address): New prototype.
136 * mach-o.c (bfd_mach_o_write_symtab)
137 (bfd_mach_o_write_contents)
138 (bfd_mach_o_set_section_flags_from_bfd)
139 (bfd_mach_o_build_seg_command): Fix indentation.
140 (bfd_mach_o_get_base_address): New function.
141
55bfc9ac
NC
1422014-03-26 Nick Clifton <nickc@redhat.com>
143
144 * cofflink.c (_bfd_coff_generic_relocate_section): Skip
145 relocations in discarded sections.
146
d8028530
TG
1472014-03-26 Tristan Gingold <gingold@adacore.com>
148
149 * mach-o.c (bfd_mach_o_convert_architecture): Add
150 BFD_MACH_O_CPU_TYPE_ARM64.
151
f6c7c3e8
AM
1522014-03-26 Alan Modra <amodra@gmail.com>
153
154 * elf64-ppc.c (ppc64_elf_check_relocs): Account for possibly
155 needed plt entries when taking the address of functions for
156 abiversion == 0 (ie. unknown) as well as abiversion == 2.
157 Move opd setup and abiversion checks to..
158 (ppc64_elf_before_check_relocs): ..here. Renamed from
159 ppc64_elf_process_dot_syms. Set output abiversion from input and
160 input abiversion from output, if either is not set.
161 (ppc64_elf_merge_private_bfd_data): Don't merge flags here.
162 (elf_backend_check_directives): Update.
163
c955de36
WN
1642014-03-25 Will Newton <will.newton@linaro.org>
165
166 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections):
167 Set value of DT_PLTRELSZ and DT_RELASZ based on the size
168 of input sections rather than output sections.
169
97323ad1
WN
1702014-03-20 Will Newton <will.newton@linaro.org>
171
172 PR ld/16715
173 * elf32-arm.c (elf32_arm_check_relocs): Set
174 pointer_equality_needed for absolute references within
175 executable links.
176 (elf32_arm_finish_dynamic_symbol): Set st_value to zero
177 unless pointer_equality_needed is set.
178
1d63324c
NC
1792014-03-19 Nick Clifton <nickc@redhat.com>
180
6caf7111
NC
181 * peXXigen.c (rsrc_process_section): Add code to scan input
182 sections and record their lengths. Use these lengths to find the
183 start of each merged .rsrc section.
1d63324c 184
fbe383b9
TG
1852014-03-17 Tristan Gingold <gingold@adacore.com>
186
187 * mach-o.c (bfd_mach_o_read_dylib): Handle lazy load dylib.
188 (bfd_mach_o_read_command): Ditto.
189
5a026fc9
NC
1902014-03-14 Meador Inge <meadori@codesourcery.com>
191
192 * configure.in: Add strnlen to AC_CHECK_DECLS.
193 * config.in: Regenerate.
194 * configure: Regenerate.
195 * sysdep.h (strnlen): Add prototype.
196
c3301df1
AM
1972014-03-14 Alan Modra <amodra@gmail.com>
198
199 * elf32-ppc.c (ppc_elf_relocate_section): Correct overflow
200 handling for VLE_SDA21 relocs.
201
167ad85b
TG
2022014-03-13 Tristan Gingold <gingold@adacore.com>
203
204 * peicode.h (pe_ILF_object_p): Adjust, as the version number
205 has been read.
206 (pe_bfd_object_p): Also read version number to detect ILF.
207 * pe-x86_64.c (COFF_WITH_PE_BIGOBJ): Define.
208 (x86_64pe_bigobj_vec): Define
209 * coffcode.h (bfd_coff_backend_data): Add _bfd_coff_max_nscns field.
210 (bfd_coff_max_nscns): New macro.
211 (coff_compute_section_file_positions): Use unsigned int for
212 target_index. Compare with bfd_coff_max_nscns.
213 (bfd_coff_std_swap_table, ticoff0_swap_table, ticoff1_swap_table):
214 Set a value for _bfd_coff_max_nscns.
215 (header_bigobj_classid): New constant.
216 (coff_bigobj_swap_filehdr_in, coff_bigobj_swap_filehdr_out)
217 (coff_bigobj_swap_sym_in, coff_bigobj_swap_sym_out)
218 (coff_bigobj_swap_aux_in, coff_bigobj_swap_aux_out): New
219 functions.
220 (bigobj_swap_table): New table.
221 * libcoff.h: Regenerate.
222 * coff-sh.c (bfd_coff_small_swap_table): Likewise.
223 * coff-alpha.c (alpha_ecoff_backend_data): Add value for
224 _bfd_coff_max_nscns.
225 * coff-mips.c (mips_ecoff_backend_data): Likewise.
226 * coff-rs6000.c (bfd_xcoff_backend_data)
227 (bfd_pmac_xcoff_backend_data): Likewise.
228 * coff64-rs6000.c (bfd_xcoff_backend_data)
229 (bfd_xcoff_aix5_backend_data): Likewise.
230 * targets.c (x86_64pe_bigobj_vec): Declare.
231 * configure.in (x86_64pe_bigobj_vec): New vector.
232 * configure: Regenerate.
233 * config.bfd: Add bigobj object format for Windows targets.
234
c792917c
NC
2352014-03-12 Nick Clifton <nickc@redhat.com>
236
237 PR ld/16671
238 * elf32-arm.c (elf32_arm_add_symbol_hook): Check for ARM format
239 before testing for vxworks.
240
fa47fa92
AM
2412014-03-12 Alan Modra <amodra@gmail.com>
242
243 * Makefile.in: Regenerate.
244
bbefd0a9
AM
2452014-03-12 Alan Modra <amodra@gmail.com>
246
247 PR 16690
248 * elf.c (copy_elf_program_header): Ignore first section lma if
249 non-alloc.
250
3c865fca
AM
2512014-03-11 Alan Modra <amodra@gmail.com>
252
253 PR 16686
254 * coff-rs6000.c: Include stdint.h.
255 * coff64-rs6000.c: Likewise.
256
ce15efd8
TG
2572014-03-10 Tristan Gingold <gingold@adacore.com>
258
259 * ticoff.h: Removed.
260
86c95733
AM
2612014-03-08 Alan Modra <amodra@gmail.com>
262
263 * elf32-ppc.c (ppc_elf_howto_raw): Correct overflow check for
264 many relocations. Correct bitsize and rightshift too for a number
265 of VLE relocs. Describe R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO.
266 Correct dst_mask on R_PPC_VLE_SDA21_LO.
267 (ppc_elf_vle_split16): Tidy, delete unnecessary prototype.
268 (ppc_elf_relocate_section): Modify overflow test for 16-bit
269 fields in instructions to signed/unsigned according to whether
270 the field takes a signed or unsigned value. Tidy vle split16 code.
271 Correct R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO handling.
272
b80eed39
AM
2732014-03-08 Alan Modra <amodra@gmail.com>
274
275 * elf64-ppc.c (ppc64_elf_howto_raw): Use complain_overflow_signed
276 for R_PPC64_ADDR14, R_PPC64_ADDR14_BRTAKEN, R_PPC64_ADDR14_BRNTAKEN,
277 R_PPC64_SECTOFF, R_PPC64_ADDR16_DS, R_PPC64_SECTOFF_DS,
278 R_PPC64_REL16 entries. Use complain_overflow_dont for R_PPC64_TOC.
279 (ppc64_elf_relocate_section): Modify overflow test for 16-bit
280 fields in instructions to signed/unsigned according to whether
281 the field takes a signed or unsigned value.
282
c38e8559
PA
2832014-03-07 Pedro Alves <palves@redhat.com>
284
5893c83a 285 PR gdb/16696
c38e8559
PA
286 * rs6000-core.c (rs6000coff_core_p): Cast pointers to bfd_vma
287 through ptr_to_uint instead of through long.
288
e9847026
NC
2892014-03-06 Nick Clifton <nickc@redhat.com>
290
291 PR 16664
292 * elf-attrs.c (_bfd_elf_parse_attributes): Add checks for corrupt
293 attribute section names.
294
4b95cf5c
AM
2952014-03-05 Alan Modra <amodra@gmail.com>
296
297 Update copyright years.
298
45965137
AM
2992014-03-05 Alan Modra <amodra@gmail.com>
300
301 * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_ADDR64_LOCAL entry.
302 (ppc64_elf_reloc_type_lookup): Support R_PPC64_ADDR64_LOCAL.
303 (ppc64_elf_check_relocs): Likewise.
304 (ppc64_elf_relocate_section): Likewise.
305 * Add BFD_RELOC_PPC64_ADDR64_LOCAL.
306 * bfd-in2.h: Regenerate.
307 * libbfd.h: Regenerate.
308
cd0c81e9 3092014-03-04 Heiher <r@hev.cc>
4ba154f5
RS
310
311 * elfxx-mips.c (mips_set_isa_flags): Use E_MIPS_ARCH_64R2 for
312 Loongson-3A.
313 (mips_mach_extensions): Make bfd_mach_mips_loongson_3a an
314 extension of bfd_mach_mipsisa64r2.
315
eed94f8f
NC
3162014-03-04 Nick Clifton <nickc@redhat.com>
317
318 PR ld/16017
319 * elf32-arm.c (elf32_thumb2_plt0_entry): New array.
320 (elf32_thumb2_plt_entry): New array.
321 (elf32_arm_create_dynamic_sections): Set PLT entry sizes when
322 using thumb2 based PLT.
323 (elf32_arm_populate_plt_entry): Handle generating Thumb2 based PLT
324 entries.
325 (elf32_arm_final_link_relocate): Do not bias jumps to Thumb based
326 PLT entries.
327 (elf32_arm_finish_dynamic_sections): Handle creation of Thumb2
328 based PLT 0-entry.
329 (elf32_arm_output_plt_map_1): Handle creation of local symbols for
330 Thumb2 based PLT 0-entry.
331 (elf32_arm_output_arch_local_syms): Handle creation of local
332 symbols for Thumb2 based PLT entries.
333
9850436d
AM
3342014-02-28 Alan Modra <amodra@gmail.com>
335
336 PR ld/16643
337 * elflink.c (elf_gc_sweep): Call gc_sweep_hook for exactly
338 the same conditions we called check_relocs.
339
1db37fe6
YG
3402014-02-27 Yuri Gribov <y.gribov@samsung.com>
341
342 * bfd-in.h: Add export of bfd_elf32_arm_use_long_plt.
343 * bfd-in2.h: Regenerate.
344 * elf32-arm.c (elf32_arm_plt_entry_long): New array.
345 (elf32_arm_link_hash_table_create): Set plt_entry_size to 16 if
346 using long PLT entries.
347 (bfd_elf32_arm_use_long_plt): New function.
348 (elf32_arm_populate_plt_entry): Add support for long PLT entries.
349
db434ba0
AM
3502014-02-27 Alan Modra <amodra@gmail.com>
351
352 * elf32-ppc.c (ppc_elf_link_hash_table_create): Provide default
353 params for targets that don't use ppc32elf.em.
354
d9972968
CLT
3552014-02-20 Chung-Lin Tang <cltang@codesourcery.com>
356
357 * elf32-nios2.c (nios2_elf32_relocate_section): Fix calculation
358 of GOTOFF relocations.
359
0ff2b86e
L
3602014-02-19 Igor Zamyatin <igor.zamyatin@intel.com>
361 H.J. Lu <hongjiu.lu@intel.com>
362
363 * elf64-x86-64.c (elf_x86_64_bnd_plt0_entry): New.
364 (elf_x86_64_legacy_plt_entry): Likewise.
365 (elf_x86_64_bnd_plt_entry): Likewise.
366 (elf_x86_64_legacy_plt2_entry): Likewise.
367 (elf_x86_64_bnd_plt2_entry): Likewise.
368 (elf_x86_64_bnd_arch_bed): Likewise.
369 (elf_x86_64_link_hash_entry): Add has_bnd_reloc and plt_bnd.
370 (elf_x86_64_link_hash_table): Add plt_bnd.
371 (elf_x86_64_link_hash_newfunc): Initialize has_bnd_reloc and
372 plt_bnd.
373 (elf_x86_64_copy_indirect_symbol): Also copy has_bnd_reloc.
374 (elf_x86_64_check_relocs): Create the second PLT for Intel MPX
375 in 64-bit mode.
376 (elf_x86_64_allocate_dynrelocs): Handle the second PLT for IFUNC
377 symbols. Resolve call to the second PLT if it is created.
378 (elf_x86_64_size_dynamic_sections): Keep the second PLT section.
379 (elf_x86_64_relocate_section): Resolve PLT references to the
380 second PLT if it is created.
381 (elf_x86_64_finish_dynamic_symbol): Use BND PLT0 and fill the
382 second PLT entry for BND relocation.
383 (elf_x86_64_finish_dynamic_sections): Use MPX backend data if
384 the second PLT is created.
385 (elf_x86_64_get_synthetic_symtab): New.
386 (bfd_elf64_get_synthetic_symtab): Likewise. Undefine for NaCl.
387
7d4c687d
AM
3882014-02-19 Alan Modra <amodra@gmail.com>
389
390 * elf64-ppc.h (struct ppc64_elf_params): Add save_restore_funcs.
391 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Use it to control
392 provision of out-of-line register save/restore routines.
393
5db3e65d
JC
3942014-02-18 Jack Carter <jack.carter@imgtec.com>
395
396 * elfxx-mips.c(_bfd_mips_elf_modify_segment_map): Deleted hard coding of
397 PT_DYNAMIC segment flags.
398
024a2310
JK
3992014-02-17 Jan Kratochvil <jan.kratochvil@redhat.com>
400
401 PR binutils/16595
402 * simple.c (struct saved_offsets): New.
403 (simple_save_output_info): Use it for ptr.
404 (simple_restore_output_info): Use it for ptr. Check section_count.
405 (bfd_simple_get_relocated_section_contents): Use it for saved_offsets.
406
e7d1c40c
AM
4072014-02-17 Alan Modra <amodra@gmail.com>
408
409 * elf64-ppc.h (struct ppc64_elf_params): Define.
410 (ppc64_elf_init_stub_bfd, ppc64_elf_edit_opd, ppc64_elf_tls_setup,
411 ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
412 ppc64_elf_build_stubs): Update prototype.
413 * elf64-ppp.c (struct ppc_link_hash_table): Add params, delete other
414 fields now in params. Adjust code throughout file.
415 (ppc64_elf_init_stub_bfd): Delete "abfd" parameter, add "params".
416 Save params pointer in htab.
417 (ppc64_elf_edit_opd, ppc64_elf_tls_setup,
418 ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
419 ppc64_elf_build_stubs): Remove parameters now in "params".
420
668e22e5
AM
4212014-02-17 Alan Modra <amodra@gmail.com>
422
423 * elf32-ppc.c (ppc_elf_relocate_section): Move relocs on insns
424 patched for ppc476 workaround. Reapply branch taken/not taken
425 relocs.
426
9f7552cf
AM
4272014-02-12 Alan Modra <amodra@gmail.com>
428
429 * elf32-ppc.c (ppc_elf_relax_section): Don't build long-branch
430 stubs for calls to __tls_get_addr that we know will later be
431 optimised away.
432
795bc6b3
AM
4332014-02-12 Alan Modra <amodra@gmail.com>
434
435 * elf32-ppc.c (ppc_elf_relax_section): Enable ppc476 workaround
436 for ld -r, when code sections are sufficiently aligned.
437 * elf32-ppc.h (struct ppc_elf_params): Delete pagesize. Add
438 pagesize_p2.
439
b407645f
AM
4402014-02-12 Alan Modra <amodra@gmail.com>
441
442 PR gold/15530
443 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support
444 --export-dynamic and --dynamic-list marking of symbols.
445 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Reorder
446 cheap tests first.
447
d6f6f455
L
4482014-02-10 H.J. Lu <hongjiu.lu@intel.com>
449
450 PR gold/16530
451 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Mark symbol in
452 executables if it matches dynamic_list.
453
c1c69e83
AM
4542014-02-10 Alan Modra <amodra@gmail.com>
455
456 * po/SRC-POTFILES.in: Regenerate.
457 * po/bfd.pot: Regenerate.
458
53291d1f
AM
4592014-02-09 Alan Modra <amodra@gmail.com>
460
461 * elf-bfd.h (struct elf_backend_data): Add caches_rawsize.
462 * elfxx-target.h (elf_backend_caches_rawsize): Define.
463 (elfNN_bed): Init new field.
464 * elflink.c (elf_link_input_bfd): Handle caches_rawsize.
465 * elf32-ppc.c (shared_stub_entry): Zero addi offset.
466 (ppc_elf_relax_section): Don't reallocate section here, write
467 stubs, or write out relocs for ld -r here..
468 (ppc_elf_relocate_section): ..instead write stubs here, and use
469 existing code to write out relocs for ld -r. Fix offset
470 adjustment on reloc for little-endian.
471 (elf_backend_caches_rawsize): Define.
472
d1eb5696
RO
4732014-02-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
474
85773039 475 PR build/16550
d1eb5696
RO
476 * cache.c (bfd_cache_max_open): Cast RLIM_INFINITY to rlim_t.
477
2915c55b
JK
4782014-02-04 Jan Kratochvil <jan.kratochvil@redhat.com>
479
480 * coff-rs6000.c (xcoff_write_archive_contents_big): Free OFFSETS in
481 return paths. Three times.
482 * elf64-ppc.c (ppc64_elf_link_hash_table_create): Free HTAB in all
483 return paths.
484 (ppc64_elf_tls_optimize): Free TOC_REF in return path.
485 (ppc64_elf_edit_toc): Free USED in return path.
486
1c2de463
SL
4872014-02-03 Sandra Loosemore <sandra@codesourcery.com>
488
489 * reloc.c (BFD_RELOC_NIOS2_GOT_LO, BFD_RELOC_NIOS2_GOT_HA): New.
490 (BFD_RELOC_NIOS2_CALL_LO, BFD_RELOC_NIOS2_CALL_HA): New.
491 * libbfd.h: Regenerated.
492 * bfd-in2.h: Regenerated.
493 * elf32-nios2.c (elf_nios2_howto_table_rel): Add new relocations.
494 (nios2_reloc_map): Likewise.
495 (GOT_USED, CALL_USED): Renamed from GOT16_USED and CALL16_USED.
496 Fixed all references.
497 (nios2_elf32_relocate_section): Add new relocations.
498 (nios2_elf32_check_relocs): Likewise.
499 (nios2_elf32_gc_sweep_hook): Likewise.
500
5446cbdf
AM
5012014-02-03 Alan Modra <amodra@gmail.com>
502
503 * elf32-ppc.c (struct ppc_elf_link_hash_table): Add params.
504 Delete emit_stub_syms, no_tls_get_addr_opt. Update all uses.
505 (ppc_elf_link_params): New function.
506 (ppc_elf_create_glink): Align .glink to 64 bytes for ppc476
507 workaround.
508 (ppc_elf_select_plt_layout): Remove plt_style and emit_stub_syms
509 parameters. Use htab->params instead.
510 (ppc_elf_tls_setup): Remove no_tls_get_addr_opt parameter.
511 (ppc_elf_size_dynamic_sections): Align __glink_PLTresolve to
512 64 bytes for ppc476 workaround.
513 (struct ppc_elf_relax_info): New.
514 (ppc_elf_relax_section): Exclude linker created sections and
515 those too small to hold one instruction. Don't add another
516 branch around trampolines on later relax passes. Don't
517 generate trampolines for undefined symbols when !relocatable,
518 nor for plugin symbols. Allocate space for ppc476 workaround
519 patch area. Free fixups on error return path.
520 (ppc_elf_relocate_section): Handle ppc476 workaround patching.
521 * elf32-ppc.h (struct ppc_elf_params): New.
522 (ppc_elf_select_plt_layout, ppc_elf_tls_setup): Update prototype.
523 (ppc_elf_link_params): Declare.
524 * section.c (SEC_INFO_TYPE_TARGET): Define.
525 * bfd-in2.h: Regenerate.
526
82e91538
SL
5272014-02-02 Sandra Loosemore <sandra@codesourcery.com>
528
529 * elf32-nios2.c (struct elf32_nios2_link_hash_table): Add
530 h_gp_got field.
531 (nios2_elf32_relocate_section): Use got_base to adjust
532 GOT-pointer-relative relocations relative to _gp_got.
533 (create_got_section): Create _gp_got symbol.
534 (nios2_elf32_finish_dynamic_symbol): Make _gp_got absolute.
535 (nios2_elf32_size_dynamic_sections): Set _gp_got offset.
536
78058a5e
SL
5372014-01-30 Sandra Loosemore <sandra@codesourcery.com>
538
539 * bfd-in2.h: Update from reloc.c.
540 * elf32-nios2.c: Include elf32-nios2.h.
541 (elf_nios2_howto_table_rel): Add entry for R_NIOS2_CALL26_NOAT.
542 (nios2_reloc_map): Likewise.
543 (enum elf32_nios2_stub_type): Declare.
544 (struct elf32_nios2_stub_hash_entry): Declare.
545 (nios2_stub_hash_entry, nios2_stub_hash_lookup): New macros.
546 (struct elf32_nios2_link_hash_entry): Add hsh_cache field.
547 (struct elf32_nios2_link_hash_table): Add new fields bstab,
548 stub_bfd, add_stub_section, layout_sections_again, stub_group,
549 bfd_count, top_index, input_list, all_local_syms.
550 (nios2_call26_stub_entry): New.
551 (nios2_elf32_install_imm16): Move up in file.
552 (nios2_elf32_install_data): Move up in file.
553 (hiadj): Move up in file.
554 (stub_hash_newfunc): New.
555 (link_hash_newfunc): Initialize hsh_cache field.
556 (STUB_SUFFIX): New.
557 (nios2_stub_name): New.
558 (nios2_get_stub_entry): New.
559 (nios2_add_stub): New.
560 (nios2_elf32_setup_section_lists): New.
561 (nios2_elf32_next_input_section): New.
562 (CALL26_SEGMENT): New.
563 (MAX_STUB_SECTION_SIZE): New.
564 (group_sections): New.
565 (nios2_type_of_stub): New.
566 (nios2_build_one_stub): New.
567 (nios2_size_one_stub): New.
568 (get_local_syms): New.
569 (nios2_elf32_size_stubs): New.
570 (nios2_elf32_build_stubs): New.
571 (nios2_elf32_do_call26_relocate): Correct CALL26 overflow test.
572 (nios2_elf32_relocate_section): Handle R_NIOS2_CALL26_NOAT. Add
573 trampolines for R_NIOS2_CALL26 stubs.
574 (nios2_elf32_check_relocs): Handle R_NIOS2_CALL26_NOAT.
575 (nios2_elf32_gc_sweep_hook): Likewise.
576 (nios2_elf32_link_hash_table_create): Initialize the stub hash table.
577 (nios2_elf32_link_hash_table_free): New.
578 (bfd_elf32_bfd_link_hash_table_free): Define.
579 * elf32-nios2.h: New file.
580 * libbfd.h: Update from reloc.c.
581 * reloc.c (BFD_RELOC_NIOS2_CALL26_NOAT): New.
582
df3ce959
NC
5832014-01-29 Nick Clifton <nickc@redhat.com>
584
585 PR binutils/16318
586 * elf32-metag.c (elf_metag_post_process_headers): Call
587 _bfd_elf_post_process_headers.
588 * elf32-sh64.c (sh64_elf_copy_private_data): Call
589 _bfd_elf_copy_private_data.
590 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
591
27b829ee
NC
5922014-01-29 Nick Clifton <nickc@redhat.com>
593
594 * bfd-in.h (bfd_set_section_vma): Delete.
595 (bfd_set_section_alignment): Delete.
596 (bfd_set_section_userdata): Delete.
597 (bfd_set_cacheable): Delete.
598 * bfd.c (bfd_set_cacheable): New static inline function.
599 * section.c (bfd_set_section_userdata): Likewise.
600 (bfd_set_section_vma): Likewise.
601 (bfd_set_section_alignment): Likewise.
602 * bfd-in2.h: Regenerate.
603
0a9c7b2b
NC
6042014-01-28 Nick Clifton <nickc@redhat.com>
605
606 * dwarf2.c (find_abstract_instance_name): For DW_FORM_ref_addr
607 attributes select the CU containing the abbreviation, which may not
608 be the current CU.
609
3ba720c7
AM
6102014-01-24 Alan Modra <amodra@gmail.com>
611
612 * elf64-ppc.c (ppc_build_one_stub): Correct reloc count passed
613 to get_relocs for ELFv2.
614
d923cae0
L
6152014-01-23 H.J. Lu <hongjiu.lu@intel.com>
616
617 PR ld/16498
3ba720c7 618 * elf.c (_bfd_elf_map_sections_to_segments): Issue a linker error
d923cae0
L
619 if TLS sections are not adjacent.
620
16e4ecc0
AM
6212014-01-22 Alan Modra <amodra@gmail.com>
622
623 * elflink.c (elf_link_add_object_symbols): Call minfo for --as-needed.
624
eb8d7fda
AM
6252014-01-22 Alan Modra <amodra@gmail.com>
626
627 * elf64-ppc.c (STK_LINKER): Comment typo fix.
628
4584ec12
L
6292014-01-21 H.J. Lu <hongjiu.lu@intel.com>
630
631 PR ld/16467
632 * elflink.c (_bfd_elf_merge_symbol): When types of the existing
633 regular default symbol definition and the versioned dynamic
634 symbol definition mismatch, skip the default symbol definition
635 if one of them is IFUNC.
636
22ef172a
L
6372014-01-21 H.J. Lu <hongjiu.lu@intel.com>
638
639 PR ld/2404
640 * elflink.c (_bfd_elf_merge_symbol): Don't check info->shared,
641 info->export_dynamic nor h->ref_dynamic for type mismatch when
642 adding the default version.
643
b75d42bc
AM
6442014-01-16 Alan Modra <amodra@gmail.com>
645
646 * elfxx-mips.c (mips_elf_record_got_page_entry): Pass in a
647 mips_elf_traverse_got_arg* rather than mips_got_info*.
648 Adjust caller. Alloc on output_bfd rather than symbol section
649 owner.
650
c353e543
L
6512014-01-15 H.J. Lu <hongjiu.lu@intel.com>
652
653 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
654 change.
655 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
656
818d220a
L
6572014-01-14 H.J. Lu <hongjiu.lu@intel.com>
658
659 PR ld/16428
660 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't discard relocs
661 against __ehdr_start.
662 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
663
c3ce498c
L
6642014-01-14 H.J. Lu <hongjiu.lu@intel.com>
665
666 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
667 change.
668 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
669
d1ec1e40
L
6702014-01-14 H.J. Lu <hongjiu.lu@intel.com>
671
672 PR ld/16428
673 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't update reloc
674 count if there are any non pc-relative relocs.
675 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
676
f44a1f8e
CL
6772014-01-14 Michael Hudson-Doyle <michael.hudson@linaro.org>
678 Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org>
679
680 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use correct
681 offset while calculating relocation address.
682 (elfNN_aarch64_create_small_pltn_entry): Likewise.
683 (elfNN_aarch64_init_small_plt0_entry): Likewise.
684
fd0fd00c
MJ
6852014-01-13 Ma Jiang <ma.jiang@zte.com.cn>
686
687 PR ld/16202
688 * elf32-arm.c (elf32_arm_final_link_relocate): Refetch addends for
689 R_ARM_ABS8 and R_ARM_ABS16.
690
aa726b9e
AM
6912014-01-13 Alan Modra <amodra@gmail.com>
692
693 * elf32-ppc.c (ppc_elf_check_relocs): For @local call to ifunc,
694 error when shared and force a plt call otherwise.
695 (ppc_elf_size_dynamic_sections): Don't emit DT_PPC_GOT unless
696 plt_type == PLT_NEW.
697 (ppc_elf_relocate_section): Add missing test to resolve ifuncs to
698 the appropriate call stub.
699
eec2f3ed
AM
7002014-01-10 Alan Modra <amodra@gmail.com>
701
702 PR ld/14207
703 PR ld/16322
704 PR binutils/16323
705 * elf.c (assign_file_positions_for_load_sections): Revert last change.
706 (assign_file_positions_for_non_load_sections): When setting up
707 PT_GNU_RELRO header, don't require a corresponding PT_LOAD
708 header that completely covers the relro region.
709
09bf66a8
TG
7102014-01-09 Tristan Gingold <gingold@adacore.com>
711
712 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): use jump
713 table macros and add macros to initializa the structure.
714
43a8475c
L
7152014-01-08 H.J. Lu <hongjiu.lu@intel.com>
716
717 PR ld/14207
718 PR ld/16322
719 PR binutils/16323
720 * elf.c (_bfd_elf_map_sections_to_segments): Don't check section
721 size for PT_GNU_RELRO segment.
722 (assign_file_positions_for_load_sections): If PT_LOAD segment
723 doesn't fit PT_GNU_RELRO segment, adjust its p_filesz and p_memsz.
724
1651e569
TT
7252014-01-07 Tom Tromey <tromey@redhat.com>
726
727 * elf32-xtensa.c (vsprint_msg): Don't use old VA_* compatibility
728 wrappers.
729
dc9155b2
NC
7302014-01-03 Nick Clifton <nickc@redhat.com>
731
732 PR binutils/16199
733 * elf.c (vma_page_aligned_bias): Handle a maxpagesize value of
734 zero.
735
dd8dfa39 7362014-01-02 Yuanhui Zhang <asmwarrior@gmail.com>
044387af
A
737
738 PR binutils/14289
739 * pef.c (bfd_pef_xlib_read_header): Increase buffer size to 80.
740
1be5090b
NC
7412014-01-02 Nick Clifton <nickc@redhat.com>
742
743 PR binutils/11983
744 * archive.c (_bfd_get_elt_at_filepos): Store a copy of the
745 filename in the bfd's filename field.
746 * elfcode.h (bfd_from_remote_memory): Likewise.
747 * ieee.c (ieee_object_p): Likewise.
748 * mach-o.c (bfd_mach_o_fat_member_init): Likewise.
749 * oasys.c (oasys_openr_next_archived_file): Likewise.
750 * vms-lib.c (_bfd_vms_lib_get_module): Likewise.
751 * opncls.c (bfd_fopen): Likewise.
752 (bfd_openstreamr): Likewise.
753 (bfd_openr_iovec): Likewise.
754 (bfd_openw): Likewise.
755 (bfd_create): Likewise.
756 (_bfd_delete_bfd): Free filename.
757
5fb776a6 758For older changes see ChangeLog-2013
56882138 759\f
5fb776a6 760Copyright (C) 2014 Free Software Foundation, Inc.
752937aa
NC
761
762Copying and distribution of this file, with or without modification,
763are permitted in any medium without royalty provided the copyright
764notice and this notice are preserved.
765
56882138
AM
766Local Variables:
767mode: change-log
768left-margin: 8
769fill-column: 74
770version-control: never
771End:
This page took 0.983624 seconds and 4 git commands to generate.