1 2013-03-25 Tristan Gingold <gingold@adacore.com>
3 * configure.in: Bump version to 2.23.2
4 * Makefile.am (RELEASE): Set.
5 * configure, Makefile.in: Regenerate.
7 2013-03-04 Alan Modra <amodra@gmail.com>
9 * elf32-ppc.c (ppc_elf_relocate_section <R_PPC_PLTREL24>): Adjust
10 non-zero addends when relocatable, rather than addends >= 32768.
11 Always zero "addend" before applying relocation.
13 2013-02-18 Alan Modra <amodra@gmail.com>
16 * elf-bfd.h (_bfd_elf_strtab_clear_refs): Delete.
17 (_bfd_elf_strtab_clear_all_refs): Declare.
18 (_bfd_elf_strtab_resize): Declare.
19 * elf-strtab.c (_bfd_elf_strtab_clear_refs): Delete.
20 (_bfd_elf_strtab_clear_all_refs): New function.
21 (_bfd_elf_strtab_resize): Likewise.
22 * elflink.c (elf_link_add_object_symbols): Use _bfd_elf_strtab_resize.
24 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
26 * elfxx-mips.c (mips_elf_recreate_got): Remove free.
27 (mips_elf_resolve_final_got_entries): Remove bogus comment.
29 2013-02-10 Alan Modra <amodra@gmail.com>
32 * elf32-sh.c (sh_elf_link_hash_table_create): Use bfd_zmalloc.
34 2013-02-08 Alan Modra <amodra@gmail.com>
37 * elf-bfd.h (struct elf_obj_tdata): Add elf_find_function_cache.
38 * elf.c (elf_find_function): Revert last change. Use new
39 tdata field rather than static vars for cache.
41 2013-02-07 Roberto Agostino Vitillo <ra.vitillo@gmail.com>
44 * elf.c (elf_find_function): Don't cache if symbols change.
46 2013-02-07 Alan Modra <amodra@gmail.com>
49 * elf-attrs.c (_bfd_elf_copy_obj_attributes): Don't attempt to
50 copy attributes from or to non-ELF.
52 2013-02-01 Alan Modra <amodra@gmail.com>
54 * elf64-ppc.c (dec_dynrel_count): Don't error when elf_gc_sweep_symbol
57 2013-01-31 Alan Modra <amodra@gmail.com>
58 David S. Miller <davem@davemloft.net>
61 * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Handle implicit
62 references to __tls_get_addr.
63 * elf32-tilpro.c (tilepro_elf_gc_mark_hook): Likewise. Correct
64 vtinherit and vtentry reloc handling too.
65 * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): As for tilepro.
67 2013-01-31 Alan Modra <amodra@gmail.com>
69 * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
71 2013-01-28 Alan Modra <amodra@gmail.com>
72 * elf64-ppc.c: Use %T to print symbols names and remove redundant
73 "relocation" in error messages throughout file.
74 (ppc64_elf_relocate_section): Remove sibling call error message,
75 replace with "call lacks nop". Specially report errors for
76 branches to function entry points via OPD lookup and branches
77 to stubs. Remove NULL symbol handling now done by %T.
79 2013-01-22 Alan Modra <amodra@gmail.com>
81 Apply mainline patches
82 2013-01-15 Alan Modra <amodra@gmail.com>
83 * elf64-ppc.c (ppc64_elf_size_stubs): Default shared libs to
86 2013-01-14 Alan Modra <amodra@gmail.com>
88 * bfdio.c (struct bfd_iovec <bclose>): Revert 2012-11-06.
89 (memory_bclose): Likewise. Return 0 on success.
90 * cache.c (cache_bclose): Likewise.
91 * opncls.c (opncls_bclose, bfd_close): Likewise.
92 * vms-lib.c (vms_lib_bclose): Likewise.
93 * libbfd.h: Regenerate.
95 2013-01-13 Alan Modra <amodra@gmail.com>
96 * elf-bfd.h (struct elf_link_hash_entry): Delete dynamic_weak.
97 Add ref_dynamic_nonweak.
98 * elflink.c (_bfd_elf_mark_dynamic_def_weak): Delete.
99 (_bfd_elf_merge_symbol): Don't call above function. Move
100 setting of ref_dynamic_nonweak and dynamic_def earlier. Don't
102 (elf_link_add_object_symbols): Delete redundant "override" test.
103 Don't set dynamic_def here.
104 (elf_link_output_extsym): Update.
106 2013-01-12 Alan Modra <amodra@gmail.com>
107 * elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
108 * elf-strtab.c (_bfd_elf_strtab_refcount): New function.
109 * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
111 2013-01-12 Alan Modra <amodra@gmail.com>
113 * elf-bfd.h (_bfd_elf_strtab_clear_refs): Declare.
114 (_bfd_elf_strtab_clear_all_refs): Define.
115 * elf-strtab.c (_bfd_elf_strtab_clear_refs): New function.
116 (_bfd_elf_strtab_clear_all_refs): Delete.
117 * elflink.c (elf_link_add_object_symbols): Clear out added
118 strtab refs. Correct handling of warning common symbols.
120 2012-12-19 H.J. Lu <hongjiu.lu@intel.com>
121 * elf32-i386.c (elf_i386_relocate_section): Replace
122 bfd_elf32_swap_reloc_out with elf_append_rel.
123 (elf_i386_finish_dynamic_symbol): Likewise.
124 * elflink.c (elf_append_rel): Call swap_reloc_out instead of
127 2012-12-18 Alan Modra <amodra@gmail.com>
128 * elf.c (swap_out_syms): Set shndx to SHN_ABS when not one of
129 the special MAP_* values.
131 2012-12-07 Alan Modra <amodra@gmail.com>
133 * elf.c (_bfd_elf_map_sections_to_segments): Include elf header
134 size when determining phdr_in_segment.
136 2012-12-05 Alan Modra <amodra@gmail.com>
137 * elf64-ppc.c (build_plt_stub): Fix off by one error in branch
140 2012-11-21 H.J. Lu <hongjiu.lu@intel.com>
142 * elf.c (copy_elf_program_header): When rewriting program
143 header, set the output maxpagesize to the maximum alignment
144 of input PT_LOAD segments.
146 2012-11-13 Joe Seymour <jseymour@codesourcery.com>
147 * elf.c (rewrite_elf_program_header): Allocate elf_segment_map
148 with bfd_zalloc, instead of bfd_alloc.
150 2012-11-06 H.J. Lu <hongjiu.lu@intel.com>
152 * bfdio.c (bfd_iovec): Change return type of bclose to
154 (memory_bclose): Change return type to bfd_boolean.
155 * cache.c (cache_bclose): Likewise.
156 * opncls.c (opncls_bclose): Likewise. Return TRUE on success.
157 * vms-lib.c (vms_lib_bclose): Likewise. Return TRUE.
158 * libbfd.h: Regenerated.
160 2012-11-06 Alan Modra <amodra@gmail.com>
162 * opncls.c (opncls_iovec): Forward declare.
163 (_bfd_new_bfd_contained_in): If using opncls_iovec, copy iostream
166 2012-11-06 Alan Modra <amodra@gmail.com>
167 * elf64-ppc.c (maybe_strip_output): Heed SEC_KEEP.
169 2012-11-05 Alan Modra <amodra@gmail.com>
170 * elf64-ppc.c (ppc64_elf_edit_toc): Clear "repeat" inside
171 loop. Really mark toc entry referring to another toc entry
172 only if the first is used.
174 2012-10-29 Alan Modra <amodra@gmail.com>
175 * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask in
176 R_PPC_VLE_LO16A, R_PPC_VLE_HI16A, R_PPC_VLE_HA16A,
177 R_PPC_VLE_SDAREL_LO16A, R_PPC_VLE_SDAREL_HI16A,
178 R_PPC_VLE_SDAREL_HA16A reloc howtos.
180 2012-10-26 Alan Modra <amodra@gmail.com>
182 * elf32-ppc.c (ppc_elf_reloc_type_lookup): Decode ppc64 _DS
183 bfd_reloc values. Map to corresponding D-form relocs.
184 (is_insn_ds_form, is_insn_qs_form): New functions.
185 (ppc_elf_relocate_section): Validate insn with DS-form or DQ-form
186 fields using D-form reloc.
188 2012-10-21 Hans-Peter Nilsson <hp@bitrange.com>
189 * linker.c (_bfd_generic_link_output_symbols): Handle a
190 no-longer-global symbol entered as a BFD_PLUGIN.
192 2012-10-08 Alan Modra <amodra@gmail.com>
194 * elf.c (_bfd_elf_make_section_from_shdr): Treat .gdb_index as
197 2012-09-04 H.J. Lu <hongjiu.lu@intel.com>
199 * elf.c (ignore_section_sym): Also ignore section symbols without
202 2012-12-21 H.J. Lu <hongjiu.lu@intel.com>
204 * elf64-x86-64.c (elf_x86_64_relocate_section): Check
205 R_X86_64_standard instead of R_X86_64_max for unrecognized
208 2012-12-21 H.J. Lu <hongjiu.lu@intel.com>
211 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Properly
212 adjust h->plt.refcount.
213 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
215 2012-12-20 H.J. Lu <hongjiu.lu@intel.com>
218 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Also check
219 local IFUNC references.
220 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
222 2012-12-20 H.J. Lu <hongjiu.lu@intel.com>
225 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Check local
227 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
229 2012-12-17 Roland McGrath <mcgrathr@google.com>
230 Alan Modra <amodra@gmail.com>
232 * elf32-arm.c (elf32_arm_size_stubs): Skip input BFDs that are
235 2012-12-09 H.J. Lu <hongjiu.lu@intel.com>
238 * archive.c (bsd_write_armap): Properly check indicies bigger than
241 2012-11-29 Roland McGrath <mcgrathr@google.com>
243 * elf-nacl.c (segment_eligible_for_headers): Disallow writable segments.
245 2012-11-26 Roland McGrath <mcgrathr@google.com>
247 * elf-nacl.c (nacl_modify_segment_map): Don't crash when INFO is null.
249 2012-11-21 Roland McGrath <mcgrathr@google.com>
251 * elf-nacl.c (segment_nonexecutable_and_has_contents): Renamed to ...
252 (segment_eligible_for_headers): ... this. Take new arguments
253 MAXPAGESIZE and SIZEOF_HEADERS. Return false if the first section's
254 start address doesn't leave space for the headers.
255 (nacl_modify_segment_map): Update caller.
257 2012-11-19 Joey Ye <joey.ye@arm.com>
259 * elf32-arm.c (elf32_arm_final_link_relocate,
260 case R_ARM_THM_ALU_PREL_11_0, case R_ARM_THM_PC12): Align address of
261 the place being relocated.
262 (elf32_arm_final_link_relocate, case R_ARM_THM_PC8): Align address
263 of the place being relocated and truncate addend.
266 2012-11-14 Roland McGrath <mcgrathr@google.com>
268 * elf32-arm.c (elf32_arm_nacl_plt0_entry): Use bic rather than bfc
269 instruction for data sandboxing.
271 2012-11-13 Tristan Gingold <gingold@adacore.com>
273 * Makefile.am (RELEASE): Unset.
274 * Makefile.in: Regenerate.
276 2012-11-13 Tristan Gingold <gingold@adacore.com>
278 * configure.in: Bump version to 2.23.1
279 * Makefile.am (RELEASE): Set.
280 * configure, Makefile.in: Regenerate.
282 2012-11-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
285 * elf32-s390.c (elf_s390_relocate_section): Set elf.dynobj for
287 * elf64-s390.c (elf_s390_relocate_section): Likewise.
289 2012-11-05 Alan Modra <amodra@gmail.com>
291 * configure.in: Apply 2012-09-10 change to config.in here.
293 2012-10-29 Sean Keys <skeys@ipdatasys.com>
295 * elf32-xgate.c(elf_xgate_howto_table): Fix src and dest mask for
298 2012-10-22 Tristan Gingold <gingold@adacore.com>
300 * configure.in: Bump version to 2.23.0
301 * Makefile.am (RELEASE): Unset.
302 * configure, Makefile.in: Regenerate.
304 2012-10-22 Tristan Gingold <gingold@adacore.com>
306 * configure.in: Bump version to 2.23
307 * Makefile.am (RELEASE): Set.
308 * configure, Makefile.in: Regenerate.
310 2012-10-16 Sofiane Naci <sofiane.naci@arm.com>
312 * elf64-aarch64.c (elf64_aarch64_tls_howto_table): Fix shift value for
313 R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, R_AARCH64_TLSLE_MOVW_TPREL_G2,
314 R_AARCH64_TLSLE_MOVW_TPREL_G1, R_AARCH64_TLSLE_MOVW_TPREL_G1_NC,
315 R_AARCH64_TLSLE_ADD_TPREL_HI12.
316 (elf64_aarch64_tlsdesc_howto_table): Fix shift value for
317 R_AARCH64_TLSDESC_LD64_PREL19 and R_AARCH64_TLSDESC_OFF_G1.
318 (elf64_aarch64_final_link_relocate): Add signed_addend when resolving
319 AARCH64_TLSLE_*_TPREL_* relocations.
321 2012-09-20 Walter Lee <walt@tilera.com>
323 * elf32-tilepro.c (tilepro_elf_relocate_section): Adjust got
324 relocations with value of hgot.
325 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
327 2012-09-18 H.J. Lu <hongjiu.lu@intel.com>
330 * elf-bfd.h (_bfd_elf_merge_symbol): Add an argument to return
331 if the old symbol is weak.
333 * elf32-sh-symbian.c (sh_symbian_relocate_section): Update
334 _bfd_elf_merge_symbol call.
336 * elflink.c (_bfd_elf_merge_symbol): Add an argument to return
337 if the old symbol is weak.
338 (_bfd_elf_add_default_symbol): Update _bfd_elf_merge_symbol
340 (elf_link_add_object_symbols): Don't update symbol type from a
341 weak definition. Update symbol type from a common symbol when
342 overriding a weak symbol.
344 2012-09-17 Walter Lee <walt@tilera.com>
346 * elf32-tilepro.c (tilepro_elf_relocate_section): Remove unused
348 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
350 2012-09-17 Walter Lee <walt@tilera.com>
352 * elf32-tilepro.c (tilepro_elf_relocate_section): Fix computation
353 of got relocations for when .got.plt section is merged with .got.
354 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
356 2012-09-13 Doug Kwan <dougkwan@google.com>
358 * elf64-ppc.c (ppc64_elf_relocate_section): Use pre-adjusted
359 relocation for stub lookup.
361 2012-09-10 Matthias Klose <doko@ubuntu.com>
363 * config.in: Disable sanity check for kfreebsd.
365 2012-09-07 Alan Modra <amodra@gmail.com>
368 * elf64-ppc.c (ppc64_elf_relocate_section): Map symbols defined
369 by a linker script in .opd to corresponding input .opd section.
371 2012-08-09 Maciej W. Rozycki <macro@codesourcery.com>
373 * elfxx-mips.c (LA25_LUI_MICROMIPS_1, LA25_LUI_MICROMIPS_2):
374 Remove macros, folding them into...
375 (LA25_LUI_MICROMIPS): ... this new macro.
376 (LA25_J_MICROMIPS_1, LA25_J_MICROMIPS_2): Likewise into...
377 (LA25_J_MICROMIPS): ... this new macro.
378 (LA25_ADDIU_MICROMIPS_1, LA25_ADDIU_MICROMIPS_2): Likewise
380 (LA25_ADDIU_MICROMIPS): ... this new macro.
381 (bfd_put_micromips_32, bfd_get_micromips_32): New functions.
382 (mips_elf_create_la25_stub): Use them.
383 (check_br32_dslot, check_br32, check_relocated_bzc): Likewise.
384 (_bfd_mips_elf_relax_section): Likewise.
386 * elf32-ppc.c (ppc_elf_relocate_section): Assert that dynindx is
388 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
390 2012-08-28 Maciej W. Rozycki <macro@codesourcery.com>
392 * elflink.c (_bfd_elf_merge_symbol): Also override the version
393 a dynamic symbol defaulted to if preempted with a hidden or
396 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Look up
397 the options section in the output rather than input BFD to
398 decide if to add a DT_MIPS_OPTIONS tag.
400 2012-08-13 Maciej W. Rozycki <macro@codesourcery.com>
402 * config.bfd: Wrap mips*el-*-linux* and mips*-*-linux* into
405 2012-08-13 Maciej W. Rozycki <macro@codesourcery.com>
407 * elfxx-mips.c (mips_elf_calculate_relocation): Fix the handling
408 of protected symbols.
410 2012-08-06 Maciej W. Rozycki <macro@codesourcery.com>
412 * elflink.c (bfd_elf_record_link_assignment): Remove --defsym
413 symbols special case.
415 * elf64-mips.c (mips16_elf64_howto_table_rela): Correct src_mask
416 field initializers throughout.
417 * elfn32-mips.c (elf_mips16_howto_table_rela): Likewise.
419 2012-08-03 Maciej W. Rozycki <macro@codesourcery.com>
421 * elfxx-mips.c (mips_elf_perform_relocation): Update the
422 cross-mode jump message.
424 2012-09-04 Sergey A. Guriev <sergey.a.guriev@intel.com>
426 * cpu-ia64-opc.c (ins_cnt6a): New function.
430 (elf64_ia64_operands): Add new operand types.
432 2012-08-05 Maciej W. Rozycki <macro@linux-mips.org>
434 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Don't allocate
435 PLT slots for local symbols.
437 2012-08-28 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
440 2012-08-24 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
441 * elf32-arm.c (v8): New array.
442 (tag_cpu_arch_combine): Add support for ARMv8 attributes.
443 (elf32_arm_merge_eabi_attributes): Likewise.
444 (VFP_VERSION_COUNT): New define.
446 2012-08-17 Nick Clifton <nickc@redhat.com>
448 * po/vi.po: Updated Vietnamese translation.
450 2012-08-16 Ian Bolton <ian.bolton@arm.com>
451 Laurent Desnogues <laurent.desnogues@arm.com>
452 Jim MacArthur <jim.macarthur@arm.com>
453 Marcus Shawcroft <marcus.shawcroft@arm.com>
454 Nigel Stephens <nigel.stephens@arm.com>
455 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
456 Richard Earnshaw <rearnsha@arm.com>
457 Sofiane Naci <sofiane.naci@arm.com>
458 Tejas Belagod <tejas.belagod@arm.com>
459 Yufeng Zhang <yufeng.zhang@arm.com>
461 * Makefile.am: Add AArch64 files.
462 * Makefile.in: Regenerate.
463 * archures.c (bfd_aarch64_arch): New declaration.
464 (bfd_archures_list): Use bfd_archures_list.
465 * bfd-in.h (bfd_elf64_aarch64_init_maps): New declaration.
466 (bfd_aarch64_process_before_allocation): New declaration.
467 (bfd_elf64_aarch64_process_before_allocation): New declaration.
468 (bfd_elf64_aarch64_set_options): New declaration.
469 (bfd_elf64_aarch64_add_glue_sections_to_bfd): New declaration.
470 (BFD_AARCH64_SPECIAL_SYM_TYPE_MAP): New definition.
471 (BFD_AARCH64_SPECIAL_SYM_TYPE_TAG): New definition.
472 (BFD_AARCH64_SPECIAL_SYM_TYPE_OTHER): New definition.
473 (BFD_AARCH64_SPECIAL_SYM_TYPE_ANY): New definition.
474 (bfd_is_aarch64_special_symbol_name): New declaration.
475 (bfd_aarch64_merge_machines): New declaration.
476 (bfd_aarch64_update_notes): New declaration.
477 (int bfd_aarch64_get_mach_from_notes): New declaration.
478 (elf64_aarch64_setup_section_lists): New declaration.
479 (elf64_aarch64_next_input_section): New declaration.
480 (elf64_aarch64_size_stubs): New declaration.
481 (elf64_aarch64_build_stubs): New declaration.
482 * config.bfd: Add AArch64.
483 * configure.in: Add AArch64.
484 * configure: Regenerate.
485 * cpu-aarch64.c: New file.
486 * elf-bfd.h: Add AArch64.
487 * bfd-in2.h: Regenerate.
488 * libbfd.h: Regenerate.
489 * elf64-aarch64.c: New file.
490 * reloc.c: Add AArch64 relocations.
491 * targets.c: Add AArch64.
492 * po/SRC-POTFILES.in: Regenerate.
494 2012-08-14 Nick Clifton <nickc@redhat.com>
496 * po/uk.po: Updated Ukranian translation.
498 2012-08-09 Nick Clifton <nickc@redhat.com>
500 * po/vi.po: Updated Vietnamese translation.
502 2012-08-07 Nick Clifton <nickc@redhat.com>
504 * po/uk.po: Updated Ukranian translation.
506 2012-07-30 Nick Clifton <nickc@redhat.com>
508 * po/bfd.pot: Updated template.
509 * po/es.po: Updated Spanish translation.
510 * po/fi.po: Updated Finnish translation.
511 * po/fr.po: Updated French translation.
512 * po/ru.po: Updated Russian translation.
513 * po/uk.po: Updated Ukranian translation.
515 2012-07-27 Tristan Gingold <gingold@adacore.com>
517 * configure.in: Bump version to 2.22.90
518 * configure: Regenerate.
520 2012-07-26 Teresa Johnson <tejohnson@google.com>
522 * bfd/dwarf2.c (find_line): Initialize discriminator_ptr
525 2012-07-26 Meador Inge <meadori@codesourcery.com>
526 Nick Clifton <nickc@redhat.com>
529 * elf32-arm.c (elf32_arm_finish_dynamic_sections): Report an error
530 if a required section is missing from the linker script.
532 2012-07-24 Jan Waclawek <konfera@efton.sk>
534 * elf32-avr.c (elf32_avr_relax_delete_bytes): Call
535 _bfd_elf_link_read_relocs with keep_memory as TRUE.
537 2012-07-24 Teresa Johnson <tejohnson@google.com>
539 * bfd.c (bfd_find_nearest_line_discriminator): New macro.
540 * coff-rs6000.c: Init _bfd_find_nearest_line_discriminator.
541 * coff64-rs6000.c: Likewise.
542 * dwarf2.c (struct line_info): Add discriminator field.
543 (add_line_info): Fill in new discriminator field.
544 (decode_line_info): Record discriminator information instead
546 (lookup_address_in_line_info_table): Return discriminator field if
548 (comp_unit_find_nearest_line): Add discriminator argument.
549 (find_line): Likewise.
550 (_bfd_dwarf2_find_nearest_line): Likewise.
551 (_bfd_dwarf2_find_line): Likewise.
552 * elf-bfd.h (_bfd_elf_find_nearest_line_discriminator): New.
553 (_bfd_elf_find_line_discriminator): Likewise.
554 (_bfd_generic_find_nearest_line_discriminator): Likewise. Defined.
555 * elf.c (_bfd_elf_find_nearest_line): Change to a wrapper
556 that invokes _bfd_elf_find_nearest_line_discriminator with correct
558 (_bfd_elf_find_nearest_line_discriminator): New.
559 (_bfd_elf_find_line): Change to a wrapper
560 that invokes _bfd_elf_find_line_discriminator with correct
562 (_bfd_elf_find_line_discriminator): New.
563 * coffgen.c (coff_find_nearest_line_with_names): Handle
564 new discriminator argument.
565 * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
566 * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
567 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
568 * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
569 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Add discriminator
571 (_bfd_dwarf2_find_line): Likewise.
572 (_bfd_generic_find_nearest_line_discriminator): New.
573 * libbfd.c (_bfd_generic_find_nearest_line_discriminator): New.
574 * bfd-in2.h: Regenerated.
575 * libbfd.h: Likewise.
576 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize
577 _bfd_find_nearest_line_discriminator with
578 _bfd_generic_find_nearest_line_discriminator.
579 (bfd_target): Add _bfd_find_nearest_line_discriminator.
581 2012-07-24 Sean Keys <skeys@ipdatasys.com>
583 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Added code
584 that enables the linker to offset addresses, when linking against
585 symbols from the XGATE processor and vice versa.
587 2012-07-23 Nick Clifton <nickc@redhat.com>
589 * cisco-core.c (cisco_core_file_failing_command): Make static.
590 (cisco_core_file_failing_signal): Make static.
592 2012-07-18 H.J. Lu <hongjiu.lu@intel.com>
594 * bfd-in2.h: Regenerated.
596 2012-07-18 Nicolàs Alejandro Di Risio <sheeva@tiscali.it>
599 * section.c: Fix a typo in comments.
601 2012-07-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
603 * elf64-s390.c: Include elf-s390-common.c.
604 (R_390_IRELATIVE): New reloc.
605 (elf_s390_reloc_type_lookup): Support R_390_IRELATIVE.
606 (RELA_ENTRY_SIZE): New macro.
607 (elf_s390_link_hash_entry): New fields ifunc_resolver_address and
608 *ifunc_resolver_section.
609 (struct plt_entry): New struct.
610 (struct elf_s390_obj_tdata): New field local_plt.
611 (elf_s390_local_plt): New macro.
612 (struct elf_s390_link_hash_table): New field irelifunc.
614 (link_hash_newfunc): Initialize new fields.
615 (elf_s390_check_relocs): Handle IFUNC symbols.
616 (elf_s390_adjust_dynamic_symbol): Don't do anything for IFUNC
618 (allocate_dynrelocs): Call s390_elf_allocate_ifunc_dyn_relocs for
620 (elf_s390_size_dynamic_sections): Handle IFUNC symbols.
621 (elf_s390_relocate_section): Likewise.
622 (elf_s390_finish_dynamic_symbol): Likewise.
623 (elf_s390_finish_dynamic_sections): Handle local IFUNC symbols.
624 (elf_s390_finish_ifunc_symbol): New function.
625 (elf_s390_gc_sweep_hook): Handle local plt entries.
626 (elf_backend_add_symbol_hook): Define.
627 * elf32-s390.c: See elf64-s390.c changes.
628 * elf-s390-common.c: New file.
629 * bfd-in2.h (BFD_RELOC_390_IRELATIVE): New enum field.
630 * libbfd.h (BFD_RELOC_390_IRELATIVE): New entry for
631 BFD_RELOC_390_IRELATIVE.
632 * reloc.c (BFD_RELOC_390_IRELATIVE): Document new relocation.
634 2012-07-13 Nick Clifton <nickc@redhat.com>
636 * aix386-core.c: Remove use of PTR and PARAMS macros.
637 * archive.c: Likewise.
639 * cisco-core.c: Likewise.
640 * coff-alpha.c: Likewise.
641 * coff-apollo.c: Likewise.
642 * coff-aux.c: Likewise.
643 * coff-h8300.c: Likewise.
644 * coff-h8500.c: Likewise.
645 * coff-i386.c: Likewise.
646 * coff-i960.c: Likewise.
647 * coff-ia64.c: Likewise.
648 * coff-m68k.c: Likewise.
649 * coff-m88k.c: Likewise.
650 * coff-mcore.c: Likewise.
651 * coff-mips.c: Likewise.
652 * coff-or32.c: Likewise.
653 * coff-ppc.c: Likewise.
654 * coff-rs6000.c: Likewise.
655 * coff-sh.c: Likewise.
656 * coff-sparc.c: Likewise.
657 * coff-stgo32.c: Likewise.
658 * coff-tic30.c: Likewise.
659 * coff-tic4x.c: Likewise.
660 * coff-tic54x.c: Likewise.
661 * coff-tic80.c: Likewise.
662 * coff-w65.c: Likewise.
663 * cofflink.c: Likewise.
664 * cpu-arc.c: Likewise.
665 * cpu-cris.c: Likewise.
666 * cpu-h8500.c: Likewise.
667 * cpu-i960.c: Likewise.
668 * cpu-msp430.c: Likewise.
669 * cpu-ns32k.c: Likewise.
670 * cpu-powerpc.c: Likewise.
671 * cpu-rs6000.c: Likewise.
672 * cpu-tic4x.c: Likewise.
673 * cpu-w65.c: Likewise.
675 * ecofflink.c: Likewise.
676 * elf-m10200.c: Likewise.
677 * elf32-bfin.c: Likewise.
678 * elf32-cris.c: Likewise.
679 * elf32-crx.c: Likewise.
680 * elf32-fr30.c: Likewise.
681 * elf32-frv.c: Likewise.
682 * elf32-h8300.c: Likewise.
683 * elf32-i960.c: Likewise.
684 * elf32-m32c.c: Likewise.
685 * elf32-m68hc11.c: Likewise.
686 * elf32-m68hc12.c: Likewise.
687 * elf32-m68hc1x.c: Likewise.
688 * elf32-m68k.c: Likewise.
689 * elf32-mcore.c: Likewise.
690 * elf32-rl78.c: Likewise.
691 * elf32-rx.c: Likewise.
692 * elf32-s390.c: Likewise.
693 * elf32-vax.c: Likewise.
694 * elf64-alpha.c: Likewise.
695 * elf64-mmix.c: Likewise.
696 * elf64-s390.c: Likewise.
697 * elf64-sparc.c: Likewise.
698 * elfnn-ia64.c: Likewise.
699 * elfxx-mips.c: Likewise.
700 * elfxx-sparc.c: Likewise.
702 * hp300hpux.c: Likewise.
703 * hppabsd-core.c: Likewise.
704 * hpux-core.c: Likewise.
705 * i386dynix.c: Likewise.
706 * i386linux.c: Likewise.
707 * i386lynx.c: Likewise.
708 * i386mach3.c: Likewise.
709 * i386msdos.c: Likewise.
710 * i386os9k.c: Likewise.
711 * irix-core.c: Likewise.
712 * lynx-core.c: Likewise.
713 * m68klinux.c: Likewise.
714 * mach-o.h: Likewise.
715 * mipsbsd.c: Likewise.
716 * netbsd-core.c: Likewise.
717 * nlm32-i386.c: Likewise.
718 * osf-core.c: Likewise.
719 * pc532-mach.c: Likewise.
721 * ppcboot.c: Likewise.
722 * ptrace-core.c: Likewise.
723 * reloc16.c: Likewise.
724 * sco5-core.c: Likewise.
726 * sparclinux.c: Likewise.
727 * sparclynx.c: Likewise.
728 * ticoff.h: Likewise.
729 * trad-core.c: Likewise.
730 * vms-lib.c: Likewise.
733 2012-07-09 Alan Modra <amodra@gmail.com>
736 * elflink.c (elf_sort_symbol): Sort by size too.
737 (elf_link_add_object_symbols <weakdefs>): Simplify binary search.
738 Do not depend on ordering of symbol aliases. Match largest size.
740 2012-07-03 H.J. Lu <hongjiu.lu@intel.com>
742 * elf.c (assign_section_numbers): Check if number of sections
744 * elfcode.h (elf_object_p): Likewise.
746 2012-07-03 Nick Clifton <nickc@redhat.com>
748 * archive.c (bsd_write_armap): Catch attempts to create an archive
749 with indicies bigger than 4Gb.
750 (coff_write_armap): Likewise.
752 2012-07-03 H.J. Lu <hongjiu.lu@intel.com>
755 * elf.c (_bfd_elf_make_section_from_shdr): Don't compress empty
758 2012-07-03 H.J. Lu <hongjiu.lu@intel.com>
761 * elflink.c (_bfd_elf_update_dynamic_flags): New.
762 (_bfd_elf_merge_symbol): Update both real and indirect symbol
764 (_bfd_elf_add_default_symbol): Make the real symbol dynamic if
765 the indirect symbol is defined in a shared library.
766 (elf_link_add_object_symbols): Likewise. If the indirect
767 symbol has been forced local, don't make the real symbol
769 (elf_link_check_versioned_symbol): Check indirect symbol.
770 (elf_link_output_extsym): Use real symbol definition when
771 reporting indirect symbol error. Check version info for
772 dynamic versioned symbol.
774 2012-07-03 Alan Modra <amodra@gmail.com>
777 * elf.c (assign_file_positions_for_load_sections): Remove assertions
778 that only PT_LOAD headers include file header and section headers.
779 (assign_file_positions_for_non_load_sections): Similarly don't
780 assert PT_GNU_RELRO header does not include file and section headers.
781 Compare first section vma rather than PT_LOAD p_vaddr against
782 relro_start when looking for PT_LOAD covering PT_GNU_RELRO. Replace
783 abort with assertion.
785 2012-07-02 Alan Modra <amodra@gmail.com>
787 * elf32-m32c.c (m32c_elf_check_relocs): Use bfd_make_section
788 "anyway" variant when creating .plt.
789 (m32c_elf_relax_plt_section): Remove redundant test and unused param.
790 (m32c_elf_relax_section): Test SEC_LINKER_CREATED before calling
791 m32c_elf_relax_plt_section.
792 * elfxx-mips.c (mips_elf_create_got_section): Use make anyway variant
793 when creating .got and .got.plt.
794 (_bfd_mips_elf_final_link): Likewise for .rtproc, and use
795 bfd_get_linker_section.
796 * sunos.c: Similarly throughout.
798 2012-07-01 Andreas Schwab <schwab@linux-m68k.org>
800 * elf.c (_bfd_elf_make_section_from_shdr): Fix typo in error
803 2012-06-29 H.J. Lu <hongjiu.lu@intel.com>
805 * elf64-x86-64.c (elf_x86_64_relocate_section): Return FALSE
806 on unresolvable relocation.
808 2012-06-29 H.J. Lu <hongjiu.lu@intel.com>
810 * archive.c (_bfd_compute_and_write_armap): Simplify global
813 2012-06-29 Nick Clifton <nickc@redhat.com>
816 * elf32-arm.c (elf32_arm_check_relocs): Do not increment refcount
817 for locally bound symbols.
819 2012-06-29 Alan Modra <amodra@gmail.com>
821 * section.c (bfd_get_linker_section): New function.
822 * elf32-arm.c: When retrieving SEC_LINKER_CREATED sections, use
823 the above throughout rather than bfd_get_section_by_name. Use
824 bfd_make_section_anyway rather than bfd_make_section when creating
826 * elf32-bfin.c: Likewise.
827 * elf32-cr16.c: Likewise.
828 * elf32-cris.c: Likewise.
829 * elf32-frv.c: Likewise.
830 * elf32-hppa.c: Likewise.
831 * elf32-i370.c: Likewise.
832 * elf32-i386.c: Likewise.
833 * elf32-lm32.c: Likewise.
834 * elf32-m32c.c: Likewise.
835 * elf32-m32r.c: Likewise.
836 * elf32-m68k.c: Likewise.
837 * elf32-microblaze.c: Likewise.
838 * elf32-ppc.c: Likewise.
839 * elf32-rl78.c: Likewise.
840 * elf32-s390.c: Likewise.
841 * elf32-score.c: Likewise.
842 * elf32-score7.c: Likewise.
843 * elf32-sh.c: Likewise.
844 * elf32-tic6x.c: Likewise.
845 * elf32-tilepro.c: Likewise.
846 * elf32-vax.c: Likewise.
847 * elf32-xstormy16.c: Likewise.
848 * elf32-xtensa.c: Likewise.
849 * elf64-alpha.c: Likewise.
850 * elf64-hppa.c: Likewise.
851 * elf64-ia64-vms.c: Likewise.
852 * elf64-ppc.c: Likewise.
853 * elf64-s390.c: Likewise.
854 * elf64-sh64.c: Likewise.
855 * elf64-sparc.c: Likewise.
856 * elf64-x86-64.c: Likewise.
857 * elfnn-ia64.c: Likewise.
858 * elfxx-mips.c: Likewise.
859 * elfxx-sparc.c: Likewise.
860 * elfxx-tilegx.c: Likewise.
861 * elflink.c: Likewise.
862 * elf-vxworks.c: Likewise.
863 * elf-m10300.c: Likewise. Also make use of htab plt, got and
865 * bfd-in2.h: Regenerate.
866 * elf32-lm32.c (lm32_elf_check_relocs): Use the correct bfd when
867 calling create_rofixup_section.
868 * elflink.c (bfd_elf_final_link): Simplify test for .dynstr.
870 2012-06-29 Alan Modra <amodra@gmail.com>
872 * elf32-sh.c (sh_elf_create_dynamic_sections): Don't create .rela
873 section for bss type sections, except for .rela.bss.
874 * elf-m10300.c (_bfd_mn10300_elf_create_dynamic_sections): Likewise.
875 * elf32-cr16.c (_bfd_cr16_elf_create_dynamic_sections): Likewise.
876 * elf32-lm32.c (lm32_elf_create_dynamic_sections): Likewise.
877 * elf32-m32r.c (m32r_elf_create_dynamic_sections): Likewise.
878 * elf64-sh64.c (sh64_elf64_create_dynamic_sections): Likewise.
880 2012-06-28 Roland McGrath <mcgrathr@google.com>
882 * elf32-arm.c (elf32_arm_populate_plt_entry): Use int32_t for
883 displacement calculation in nacl_p case.
885 2012-06-28 Nick Clifton <nickc@redhat.com>
887 * po/uk.po: New Ukranian translation.
888 * configure.in (ALL_LINGUAS): Add uk.
889 * configure: Regenerate.
891 2012-06-26 Alan Modra <amodra@gmail.com>
893 * elf64-ppc.c (ppc64_elf_next_toc_section): Don't error if input
894 file has multiple .got/.toc sections and all don't fit in
897 2012-06-22 Roland McGrath <mcgrathr@google.com>
899 * elf.c (assign_file_positions_for_non_load_sections): Define
900 __ehdr_start symbol if it's referenced and there's a PT_LOAD
901 segment that covers both the file and program headers.
903 2012-06-22 Andreas Schwab <schwab@linux-m68k.org>
905 * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Don't make
906 _GLOBAL_OFFSET_TABLE_ and _DYNAMIC absolute.
908 2012-06-22 Alan Modra <amodra@gmail.com>
910 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't emit out-of-line
911 save/restore functions when relocatable. Make "funcs" static.
913 2012-06-18 Hans-Peter Nilsson <hp@axis.com>
915 * elf32-cris.c (cris_elf_plt_sym_val): Rewrite to work in presence
916 of merged .got and .got.plt entries.
918 2012-06-18 John Szakmeister <john@szakmeister.net>
920 * elf32-arm.c (elf32_arm_final_link_relocate): Correct return value.
922 2012-06-17 Hans-Peter Nilsson <hp@axis.com>
924 * elf32-cris.c (cris_elf_relocate_section): <R_CRIS_32_IE>
925 <R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>: Handle references to
926 thread common symbols.
928 2012-06-13 Nick Clifton <nickc@redhat.com>
930 * elf32-arm.c (bfd_arm_get_mach_from_attributes): New function.
931 (elf32_arm_object_p): If the machine number could not be deduced
932 from the notes, call bfd_arm_get_mach_from_attributes to get the
933 number from the attributes.
935 2012-06-12 H.J. Lu <hongjiu.lu@intel.com>
938 * elf.c (assign_file_positions_for_non_load_sections): Abort if
939 PT_GNU_RELRO segment doesn't fit in PT_LOAD segment.
941 2012-06-12 Alan Modra <amodra@gmail.com>
944 * elf.c (_bfd_elf_map_sections_to_segments): Disregard bss type
945 sections at end of PT_LOAD segment when searching for segment
946 that contains end of relro extent.
948 2012-06-11 H.J. Lu <hongjiu.lu@intel.com>
950 * elf.c (assign_file_positions_for_non_load_sections): Reindent.
952 2012-06-11 H.J. Lu <hongjiu.lu@intel.com>
954 * elf.c (_bfd_elf_map_sections_to_segments): Reindent.
956 2012-06-06 Alan Modra <amodra@gmail.com>
958 * elflink.c (elf_link_input_bfd): Provide a file symbol for
959 each input file with local syms, if the input lacks such.
960 (bfd_elf_final_link): Add a file symbol to mark end of locals
961 for which we can associate with input files.
962 (struct elf_final_link_info): Add filesym_count field.
963 (struct elf_outext_info): Add need_second_pass and second_pass.
964 (elf_link_output_extsym): Detect symbols defined in the output
965 file, emit them on second pass over locals.
967 2012-06-04 Jan Kratochvil <jan.kratochvil@redhat.com>
969 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
970 of target_read_memory as bfd_size_type.
971 * bfd-in2.h: Regenerate.
972 * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
973 argument of target_read_memory as bfd_size_type.
974 (_bfd_elf32_bfd_from_remote_memory): Likewise.
975 (_bfd_elf64_bfd_from_remote_memory): Likewise.
976 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
977 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
979 2012-06-03 Alan Modra <amodra@gmail.com>
982 * elf.c (elf_find_function): Cache last function sym info.
983 (_bfd_elf_maybe_function_sym): Return function size, pass in
985 * elf-bfd.h (struct elf_backend_data <maybe_function_sym>): Likewise.
986 (_bfd_elf_maybe_function_sym): Likewise.
987 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
988 (opd_entry_value): Add in_code_sec param. Revert caching code.
989 Return -1 if in_code_sec and function found in wrong section.
992 2012-06-01 Siddhesh Poyarekar <siddhesh@redhat.com>
994 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
995 of target_read_memory as size_t.
996 * bfd-in2.h: Regenerate.
997 * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
998 argument of target_read_memory as size_t.
999 (_bfd_elf32_bfd_from_remote_memory): Likewise.
1000 (_bfd_elf64_bfd_from_remote_memory): Likewise.
1001 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
1002 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
1004 2012-06-01 Alan Modra <amodra@gmail.com>
1007 * elf64-ppc.c (opd_entry_value): Rewrite cache code.
1009 2012-05-29 Tom Tromey <tromey@redhat.com>
1011 * opncls.c (bfd_fopen): Always close fd on failure.
1012 (bfd_fdopenr): Likewise.
1014 2012-05-27 Alan Modra <amodra@gmail.com>
1017 * elflink.c (_bfd_elf_merge_symbol): When a symbol defined in
1018 a dynamic library finds a new instance with non-default
1019 visibility in a regular object, correctly handle symbols
1020 already on the undefs list and undo dynamic symbol state when
1021 the new symbol is hidden or internal.
1023 2012-05-25 H.J. Lu <hongjiu.lu@intel.com>
1025 * elf32-i386.c (elf_i386_create_dynamic_sections): Don't use
1026 dynamic_sec_flags to create PLT .eh_frame section.
1027 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1029 2012-05-25 Alan Modra <amodra@gmail.com>
1032 * elf-eh-frame.c (_bfd_elf_eh_frame_present): New function.
1033 (_bfd_elf_maybe_strip_eh_frame_hdr): Use it here.
1034 * elf-bfd.h (_bfd_elf_eh_frame_present): Declare.
1035 * elflink.c (bfd_elf_size_dynamic_sections): Let the backend
1036 size dynamic sections before stripping eh_frame_hdr.
1037 (bfd_elf_gc_sections): Handle multiple .eh_frame sections.
1038 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Drop glink_eh_frame
1039 if no other .eh_frame sections exist.
1040 * elf64-ppc.c (ppc64_elf_size_stubs): Likewise.
1041 * elf32-i386.c (elf_i386_create_dynamic_sections): Don't size
1042 or alloc plt_eh_frame here..
1043 (elf_i386_size_dynamic_sections): ..do it here instead. Don't
1044 specially keep sgotplt, iplt, tgotplt, sdynbss for symbols.
1045 (elf_i386_finish_dynamic_sections): Check plt_eh_frame->contents
1046 before writing plt offset.
1047 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Don't size
1048 or alloc plt_eh_frame here..
1049 (elf_x86_64_size_dynamic_sections): ..do it here instead.
1050 (elf_x86_64_finish_dynamic_sections): Check plt_eh_frame->contents
1051 before writing plt offset.
1053 2012-05-24 Alan Modra <amodra@gmail.com>
1056 * elf64-ppc.c (ppc64_elf_size_stubs): Round up glink_eh_frame
1057 size to output section alignment.
1058 (ppc64_elf_build_stubs): Likewise, and extend last FDE to cover.
1060 2012-05-23 Alan Modra <amodra@gmail.com>
1062 * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Handle
1063 BFDs with multiple .eh_frame sections.
1065 2012-05-23 Alan Modra <amodra@gmail.com>
1068 * elflink.c (bfd_elf_discard_info): Don't ignore dynamic BFDs.
1070 2012-05-22 H.J. Lu <hongjiu.lu@intel.com>
1073 * elf32-i386.c (elf_i386_create_dynamic_sections): Revert the
1075 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1077 2012-05-22 Alan Modra <amodra@gmail.com>
1079 * elflink.c (bfd_elf_discard_info): Look for next .eh_frame if
1080 first one is zero size or discarded.
1081 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set most of
1082 glink_eh_frame contents here..
1083 (ppc_elf_finish_dynamic_sections): ..rather than here. Just set
1086 2012-05-22 H.J. Lu <hongjiu.lu@intel.com>
1089 * elf32-i386.c (elf_i386_create_dynamic_sections): Create PLT
1090 eh_frame section if there is an input .eh_frame section.
1091 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1093 2012-05-22 H.J. Lu <hongjiu.lu@intel.com>
1096 * elf32-i386.c (elf_i386_create_dynamic_sections): Always
1097 create PLT eh_frame section with SEC_LINKER_CREATED.
1098 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1100 2012-05-22 Alan Modra <amodra@gmail.com>
1102 * elflink.c (bfd_elf_discard_info): Handle multiple .eh_frame
1103 sections attached to a BFD.
1104 * section.c (bfd_get_section_by_name): Rewrite description.
1105 (bfd_get_next_section_by_name): New function.
1106 * bfd-in2.h: Regenerate.
1108 2012-05-21 Andreas Schwab <schwab@linux-m68k.org>
1110 * elf32-m68k.c (elf_m68k_grok_prstatus): New function.
1111 (elf_m68k_grok_psinfo): New function.
1112 (elf_backend_grok_prstatus): Define.
1113 (elf_backend_grok_psinfo): Define.
1115 2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
1117 * elf64-mips.c (elf_backend_got_header_size): Correct definition.
1118 * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Use the ELF
1119 backend's GOT header size instead of hardcoding it.
1121 2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
1123 * elf32-vax.c (elf_vax_relocate_section)
1124 <R_VAX_8, R_VAX_16, R_VAX_32>: Don't check if info->shared again.
1126 2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
1128 * elf32-vax.c (elf_vax_relocate_section)
1129 <R_VAX_8, R_VAX_16, R_VAX_32>: Use section flags rather than
1130 its name as the check for text sections.
1132 2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
1134 * elf64-mips.c (mips_elf64_be_swap_reloc_out): Also make sure
1135 the third reloc offset is the same as the first.
1137 2012-05-19 Alan Modra <amodra@gmail.com>
1139 * elf32-ppc.h (has_vle_insns, is_ppc_vle): Delete.
1140 (has_tls_reloc, has_tls_get_addr_call): Move back to..
1141 * elf32-ppc.c: ..here.
1142 (ppc_elf_section_flags, elf_backend_section_flags): Delete.
1143 (ppc_elf_modify_segment_map): Use ELF sh_flags to detect VLE sections.
1145 2012-05-18 H.J. Lu <hongjiu.lu@intel.com>
1147 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Don't make
1148 _DYNAMIC nor _GLOBAL_OFFSET_TABLE_ absolute.
1149 * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
1151 2012-05-18 Roland McGrath <mcgrathr@google.com>
1153 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix last change so as
1154 not to clobber the ar_fmag field stored in ARED->arch_header.
1156 2012-05-18 Pedro Alves <palves@redhat.com>
1158 * mach-o.h: Don't include sysdep.h.
1160 2012-05-18 Nick Clifton <nickc@redhat.com>
1163 * bfd-in.h: Check for PACKAGE or PACKAGE_VERSION before
1164 complaining about config.h not having been included.
1165 * bfd-in2.h: Regenerate.
1167 2012-05-18 Andreas Schwab <schwab@linux-m68k.org>
1169 * aclocal.m4: Regenerate.
1170 * Makefile.in: Regenerate.
1172 2012-05-17 Daniel Richard G. <skunk@iskunk.org>
1173 Nick Clifton <nickc@redhat.com>
1176 * configure.in: Add check that sysdep.h has been included before
1177 any system header files.
1178 * configure: Regenerate.
1179 * config.in: Regenerate.
1180 * aclocal.m4: Regenerate.
1181 * bfd-in.h: Generate an error if included before config.h.
1182 * sysdep.h: Likewise.
1183 * bfd-in2.h: Regenerate.
1184 * compress.c: Remove #include "config.h".
1185 * plugin.c: Likewise.
1186 * elf32-m68hc1x.c: Include sysdep.h before alloca-conf.h.
1187 * elf64-hppa.c: Likewise.
1189 * xsymc.c: Likewise.
1191 2012-05-17 Maciej W. Rozycki <macro@linux-mips.org>
1192 Alan Modra <amodra@gmail.com>
1194 * elf.c (ignore_section_sym): Correct comment. Don't return
1195 true for absolute section.
1196 (elf_map_symbols): Move stray comment. Adjust for above change.
1197 Don't discard global section symbols.
1199 2012-05-17 Alan Modra <amodra@gmail.com>
1201 * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make _DYNAMIC,
1202 _GLOBAL_OFFSET_TABLE_ or _PROCEDURE_LINKAGE_TABLE_ absolute.
1203 * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Don't make _DYNAMIC
1206 2012-05-17 Alan Modra <amodra@gmail.com>
1208 * elf32-ppc.c (has_tls_reloc, has_tls_get_addr_call, has_vle_insns,
1209 is_ppc_vle): Move to..
1210 * elf32-ppc.h: ..here, making is_ppc_vle a macro.
1212 2012-05-16 Sergio Durigan Junior <sergiodj@redhat.com>
1214 * bfd-in.h (bfd_get_section_name, bfd_get_section_vma,
1215 bfd_get_section_lma, bfd_get_section_alignment,
1216 bfd_get_section_flags, bfd_get_section_userdata): Rewrite macros
1217 in order to use the `bfd' argument.
1218 * bfd-in2.h: Regenerate.
1219 * elf-vxworks.c (elf_vxworks_finish_dynamic_entry): Pass proper `bfd'
1220 as the first argument for `bfd_get_section_alignment'.
1221 * elf32-arm.c (create_ifunc_sections): Likewise, for
1222 `bfd_set_section_alignment'.
1223 * elf32-m32r.c (m32r_elf_relocate_section): Likewise, for
1224 `bfd_get_section_name'.
1225 * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
1226 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1227 (ppc_elf_relocate_section): Likewise.
1228 * elf64-mmix.c (mmix_final_link_relocate): Likewise, for
1229 `bfd_get_section_vma'.
1230 * elf64-ppc.c (create_linkage_sections): Likewise, for
1231 `bfd_set_section_alignment'.
1233 2012-05-16 Georg-Johann Lay <avr@gjlay.de>
1236 * reloc.c: Rename BFD_RELOC_AVR_8_HHI to BFD_RELOC_AVR_8_HLO.
1237 * bfd-in2.h: Regenerate.
1238 * libbfd.h: Regenrate.
1239 * elf32-avr.c (elf_avr_howto_table): Rename R_AVR_8_HHI8 to
1241 (avr_reloc_map): Likewise.
1243 2012-05-16 Daniel Richard G. <skunk@iskunk.org>
1246 * bfd/aout-cris.c: Include sysdep.h before bfd.h.
1247 * bfd/aout-ns32k.c: Likewise.
1248 * bfd/aout-sparcle.c: Likewise.
1249 * bfd/aout0.c: Likewise.
1250 * bfd/bfd-in2.h: Likewise.
1251 * bfd/coff-stgo32.c: Likewise.
1252 * bfd/cpu-lm32.c: Likewise.
1253 * bfd/cpu-microblaze.c: Likewise.
1254 * bfd/cpu-score.c: Likewise.
1255 * bfd/cpu-tilegx.c: Likewise.
1256 * bfd/cpu-tilepro.c: Likewise.
1257 * bfd/elf32-lm32.c: Likewise.
1258 * bfd/elf32-microblaze.c: Likewise.
1259 * bfd/elf32-score7.c: Likewise.
1260 * bfd/elf32-tilepro.c: Likewise.
1261 * bfd/elfxx-tilegx.c: Likewise.
1262 * bfd/mach-o.h: Likewise.
1263 * bfd/nlm32-ppc.c: Likewise.
1264 * bfd/ns32knetbsd.c: Likewise.
1265 * bfd/pef.h: Likewise.
1266 * bfd/plugin.c: Likewise.
1267 * bfd/stab-syms.c: Likewise.
1268 * bfd/sunos.c: Likewise.
1269 * bfd/syms.c: Likewise.
1270 * bfd/xsym.h: Likewise.
1272 2012-05-16 Alan Modra <amodra@gmail.com>
1274 * elflink.c: Rename flaginfo to flinfo throughout, except..
1275 (bfd_elf_lookup_section_flags): ..here, rename finfo to flaginfo.
1276 Formatting, style. Simplify flag match.
1278 2012-05-16 Alan Modra <amodra@gmail.com>
1280 * dwarf2.c: Formatting.
1281 (arange_add): Pass in unit rather than bfd. Update callers.
1282 Ignore empty ranges. Don't ask for cleared memory.
1283 (parse_comp_unit): Only set unit->base_address if processing
1284 DW_TAG_compile_unit.
1285 (find_debug_info): Optimise section lookup.
1286 (place_sections): Use bfd_alloc for stash->adjusted_sections.
1287 (find_line): Match previously parsed comp unit addresses as we
1288 do for newly parsed comp units.
1290 2012-05-16 Alan Modra <amodra@gmail.com>
1292 * archive.c (_bfd_generic_read_ar_hdr_mag): Ensure sscanf
1293 stops at end of ar_size field.
1295 2012-05-16 Alan Modra <amodra@gmail.com>
1299 * elf.c (bfd_section_from_shdr): Fail when .dynsym sh_info is
1300 out of range. As a special case, fix sh_info for zero sh_size.
1301 Do the same for .symtab.
1303 2012-05-15 James Murray <jsm@jsm-net.demon.co.uk>
1304 Stephane Carrez <stcarrez@nerim.fr>
1306 * archures.c: Add bfd_arch_m9s12x and bfd_arch_m9s12xg.
1307 * config.bfd: Likewise.
1308 * cpu-m9s12x.c: New.
1309 * cpu-m9s12xg.c: New.
1310 * elf32-m68hc12.c: Add S12X and XGATE co-processor support.
1311 Add option to offset S12 addresses into XGATE memory space.
1312 Fix carry bug in IMM16 (IMM8 low/high) relocate.
1313 * Makefile.am (ALL_MACHINES): Add cpu-m9s12x and cpu-m9s12xg.
1314 (ALL_MACHINES_CFILES): Likewise.
1315 * reloc.c: Add S12X relocs.
1316 * Makefile.in: Regenerate.
1317 * bfd-in2.h: Regenerate.
1318 * libbfd.h: Regenerate.
1320 2012-05-14 James Lemke <jwlemke@codesourcery.com>
1321 Catherine Moore <clm@codesourcery.com>
1323 * bfd.c (bfd_lookup_section_flags): Add section parm.
1324 * ecoff.c (bfd_debug_section): Remove flag_info initializer.
1325 * elf-bfd.h (bfd_elf_section_data): Move in section_flag_info.
1326 (bfd_elf_lookup_section_flags): Add section parm.
1327 * elf32-ppc.c (is_ppc_vle): New function.
1328 (ppc_elf_modify_segment_map): New function.
1329 (elf_backend_modify_segment_map): Define.
1330 (has_vle_insns): New define.
1331 * elf32-ppc.h (ppc_elf_modify_segment_map): Declare.
1332 * elflink.c (bfd_elf_lookup_section_flags): Add return value & parm.
1333 Move in logic to omit / include a section.
1334 * libbfd-in.h (bfd_link_info): Add section parm.
1335 (bfd_generic_lookup_section_flags): Likewise.
1336 * reloc.c (bfd_generic_lookup_section_flags): Likewise.
1337 * section.c (bfd_section): Move out section_flag_info.
1338 (BFD_FAKE_SECTION): Remove flag_info initializer.
1339 * targets.c (_bfd_lookup_section_flags): Add section parm.
1341 2012-05-14 Catherine Moore <clm@codesourcery.com>
1343 * archures.c (bfd_mach_ppc_vle): New.
1344 * bfd-in2.h: Regenerated.
1345 * cpu-powerpc.c (bfd_powerpc_archs): New entry for vle.
1346 * elf32-ppc.c (split16_format_type): New enumeration.
1347 (ppc_elf_vle_split16): New function.
1348 (HOWTO): Add entries for R_PPC_VLE relocations.
1349 (ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations.
1350 (ppc_elf_section_flags): New function.
1351 (ppc_elf_lookup_section_flags): New function.
1352 (ppc_elf_section_processing): New function.
1353 (ppc_elf_check_relocs): Handle PPC_VLE relocations.
1354 (ppc_elf_relocation_section): Likewise.
1355 (elf_backend_lookup_section_flags_hook): Define.
1356 (elf_backend_section_flags): Define.
1357 (elf_backend_section_processing): Define.
1358 * elf32-ppc.h (ppc_elf_section_processing): Declare.
1359 * libbfd.h: Regenerated.
1360 * reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15,
1361 BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A,
1362 BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A,
1363 BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A,
1364 BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21,
1365 BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A,
1366 BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A,
1367 BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A,
1368 BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations.
1370 2012-05-11 Georg-Johann Lay <avr@gjlay.de>
1373 * reloc.c: Add new ENUM for BFD_RELOC_AVR_8_LO,
1374 BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI.
1375 * bfd-in2.h: Regenerate.
1376 * libbfd.h: Regenrate.
1377 * elf32-avr.c (elf_avr_howto_table): Add entries for
1378 R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8.
1379 (avr_reloc_map): Add RELOC mappings for R_AVR_8_LO8, R_AVR_8_HI8,
1382 2012-05-10 H.J. Lu <hongjiu.lu@intel.com>
1384 * elf64-x86-64.c (elf_x86_64_relocate_section): Use int in x32
1385 addend overflow check.
1387 2012-05-10 DJ Delorie <dj@redhat.com>
1389 * elf32-rx.c (rx_elf_object_p): Ignore empty segments.
1391 2012-05-10 H.J. Lu <hongjiu.lu@intel.com>
1393 * elf64-x86-64.c (elf_x86_64_relocate_section): Display signed
1394 hex number in x32 addend overflow check.
1396 2012-05-10 H.J. Lu <hongjiu.lu@intel.com>
1398 * elf64-x86-64.c (elf_x86_64_reloc_type_class): Handle
1399 R_X86_64_RELATIVE64.
1401 2012-05-09 H.J. Lu <hongjiu.lu@intel.com>
1403 * elf64-x86-64.c (elf_x86_64_relocate_section): Check addend
1404 overflow for R_X86_64_RELATIVE64.
1406 2012-05-08 Ben Cheng <bccheng@google.com>
1408 * elf.c: Preserve the original p_align and p_flags if they are
1411 2012-05-07 Alan Modra <amodra@gmail.com>
1413 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Update
1414 RELOC_AGAINST_DISCARDED_SECTION invocation.
1416 2012-05-07 Hans-Peter Nilsson <hp@axis.com>
1418 * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Declare and use
1419 local variable i_ instead of assuming and using a variable i.
1421 2012-05-07 Maciej W. Rozycki <macro@linux-mips.org>
1423 * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Handle compound
1425 * elfxx-mips.c (mips_reloc_against_discarded_section): New
1427 (_bfd_mips_elf_relocate_section): Call it, in place of
1428 RELOC_AGAINST_DISCARDED_SECTION.
1429 * elf-m10200.c (mn10200_elf_relocate_section): Update arguments
1430 to RELOC_AGAINST_DISCARDED_SECTION.
1431 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1432 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
1433 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
1434 * elf32-bfin.c (bfin_relocate_section): Likewise.
1435 (bfinfdpic_relocate_section): Likewise.
1436 * elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
1437 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
1438 * elf32-cris.c (cris_elf_relocate_section): Likewise.
1439 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
1440 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1441 * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
1442 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1443 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1444 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1445 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1446 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1447 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1448 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
1449 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1450 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1451 * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
1452 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1453 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1454 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
1455 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1456 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1457 * elf32-mep.c (mep_elf_relocate_section): Likewise.
1458 * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
1459 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1460 * elf32-mt.c (mt_elf_relocate_section): Likewise.
1461 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
1462 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1463 * elf32-rl78.c (rl78_elf_relocate_section): Likewise.
1464 * elf32-rx.c (rx_elf_relocate_section): Likewise.
1465 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1466 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1467 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1468 * elf32-sh.c (sh_elf_relocate_section): Likewise.
1469 * elf32-spu.c (spu_elf_relocate_section): Likewise.
1470 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
1471 * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
1472 * elf32-v850.c (v850_elf_relocate_section): Likewise.
1473 * elf32-vax.c (elf_vax_relocate_section): Likewise.
1474 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1475 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1476 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1477 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1478 (elf64_alpha_relocate_section): Likewise.
1479 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
1480 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1481 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1482 * elf64-s390.c (elf_s390_relocate_section): Likewise.
1483 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
1484 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
1485 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
1486 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1487 * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
1489 2012-05-05 Alan Modra <amodra@gmail.com>
1493 * linker.c (_bfd_nearby_section): Revert 2012-02-13 change.
1495 2012-05-05 Alan Modra <amodra@gmail.com>
1497 * aout-arm.c: Replace all uses of bfd_abs_section, bfd_com_section,
1498 bfd_und_section and bfd_ind_section with their _ptr variants, or
1499 use corresponding bfd_is_* macros.
1500 * aout-ns32k.c: Likewise.
1501 * aout-tic30.c: Likewise.
1502 * coff-arm.c: Likewise.
1503 * coff-tic54x.c: Likewise.
1504 * cpu-ns32k.c: Likewise.
1505 * elf-attrs.c: Likewise.
1506 * elfcode.h: Likewise.
1507 * peicode.h: Likewise.
1508 * reloc.c: Likewise.
1509 * riscix.c: Likewise.
1510 * versados.c: Likewise.
1511 * section.c: Likewise.
1512 (bfd_abs_section, bfd_ind_section, bfd_com_section,
1513 bfd_ind_section): Delete.
1514 (std_section): New array replacing above.
1515 (bfd_abs_section_ptr, bfd_ind_section_ptr, bfd_com_section_ptr,
1516 bfd_ind_section_ptr, STD_SECTION): Update.
1517 (BFD_FAKE_SECTION, GLOBAL_SYM_INIT): Remove unnecessary casts.
1518 * bfd-in2.h: Regenerate.
1520 2012-05-03 Sean Keys <skeys@ipdatasys.com>
1522 * cpu-xgate.c: New file. Added XGATE support.
1523 * archures.c (bfd_architecture): Add XGATE architecture.
1524 (bfd_archures_list): Add reference to XGATE architecture info.
1525 * elf-bfd.h (prep_headers): Handle bfd_arch_xgate.
1526 * reloc.c: Add various XGATE relocation enums.
1527 * targets.c (bfd_elf32_xgate_vec): Declare and add to target vector
1529 * Makefile.am: Add support for XGATE elf.
1530 * configure.in: Ditto.
1531 * config.bfd: Ditto.
1532 * Makefile.in: Regenerate.
1536 Added files for XGATE relocations.
1537 * elf32-xgate.c: Created minimal relocation file.
1538 * elf32-xgate.h: Created minimal header file for elf32-xgate.
1540 2012-05-03 Tristan Gingold <gingold@adacore.com>
1542 * dwarf2.c (decode_line_info): Ignore
1543 DW_LNE_HP_source_file_correlation.
1545 2012-05-01 Nick Clifton <nickc@redhat.com>
1548 * aoutx.h: Rename 'finfo' to 'flaginfo' to avoid conflicts with
1550 * coff-ppc.c: Likewise.
1551 * cofflink.c: Likewise.
1552 * elf32-arm.c: Likewise.
1553 * elf64-sparc.c: Likewise.
1554 * elflink.c: Likewise.
1555 * pdp11.c: Likewise.
1556 * rescoff.c: Likewise.
1558 2012-04-26 Mark Wielaard <mjw@redhat.com>
1560 * dwarf2.c (scan_unit_for_symbols): Account for DW_AT_high_pc
1561 possibly being relative to DW_AT_low_pc.
1562 (parse_comp_unit): Likewise.
1564 2012-04-26 Andreas Schwab <schwab@linux-m68k.org>
1566 * elf32-m68k.c (elf_m68k_check_relocs): Mark non-GOT references
1567 also when generating PIE.
1568 (elf_m68k_discard_copies): Mark undefined weak symbols referenced
1569 by relocations as dynamic.
1571 2012-04-26 Hans-Peter Nilsson <hp@axis.com>
1573 Provide a way for programs to recognize BFD_ASSERT calls.
1574 * bfd.c (bfd_assert_handler_type): New API type.
1575 (bfd_set_assert_handler, bfd_get_assert_handler): New API functions.
1576 (_bfd_assert_handler): New variable.
1577 (_bfd_default_assert_handler): New function.
1578 (bfd_assert): Call _bfd_assert_handler, not _bfd_error_handler.
1579 * libbfd-in.h (_bfd_assert_handler): Declare.
1580 * libbfd.h, bfd-in2.h: Regenerate.
1582 2012-04-24 Hans-Peter Nilsson <hp@axis.com>
1585 * elf32-arm.c (elf32_arm_gc_sweep_hook): Handle a forced-local
1586 symbol, where PLT refcount is set to -1.
1588 2012-04-24 Alan Modra <amodra@gmail.com>
1591 * elf-bfd.h (_bfd_elf_link_just_syms): Define as
1592 _bfd_generic_link_just_syms.
1593 * elflink.c (_bfd_elf_link_just_syms): Delete.
1594 * linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
1596 * bfd-in.h (discarded_section): Renamed from elf_discarded_section.
1597 * section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
1598 SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
1599 SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
1600 * elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c,
1601 * elf.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c,
1602 * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c,
1603 * elf32-crx.c, * elf32-d10v.c, * elf32-epiphany.c,
1604 * elf32-fr30.c, * elf32-frv.c, * elf32-h8300.c,
1605 * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c,
1606 * elf32-i860.c, * elf32-ip2k.c, * elf32-iq2000.c,
1607 * elf32-lm32.c, * elf32-m32c.c, * elf32-m32r.c,
1608 * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c,
1609 * elf32-mep.c, * elf32-moxie.c, * elf32-msp430.c,
1610 * elf32-mt.c, * elf32-openrisc.c, * elf32-ppc.c,
1611 * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c,
1612 * elf32-score.c, * elf32-score7.c, * elf32-sh.c,
1613 * elf32-spu.c, * elf32-tic6x.c, * elf32-tilepro.c,
1614 * elf32-v850.c, * elf32-vax.c, * elf32-xc16x.c,
1615 * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c,
1616 * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c,
1617 * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c,
1618 * elf64-x86-64.c, * elflink.c, * elfnn-ia64.c,
1619 * elfxx-mips.c, * elfxx-sparc.c, * elfxx-tilegx.c,
1620 * reloc.c: Update all references.
1621 * bfd-in2.h: Regenerate.
1623 2012-04-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1625 * elf32-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
1626 * elf64-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
1628 2012-04-19 Thomas Schwinge <thomas@codesourcery.com>
1630 * elf32-sh.c (elf_sh_link_hash_entry): Specify an enum identifier for
1632 (allocate_dynrelocs, sh_elf_relocate_section, sh_elf_check_relocs): Use
1635 2012-04-17 Kaz Kojima <kkojima@rr.iij4u.or.jp>
1637 * elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic
1638 relocations when LE conversion happens on the IE tls symbol.
1640 2012-04-17 Roland McGrath <mcgrathr@google.com>
1642 * elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding
1643 so that 32-byte boundary is a proper instruction boundary.
1645 2012-04-17 Tristan Gingold <gingold@adacore.com>
1647 * vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to
1648 member of an object archive.<
1650 2012-04-17 Tristan Gingold <gingold@adacore.com>
1652 * vms-lib.c (MAX_EKEYLEN): Define.
1653 (MAX_KEYLEN): Fix value.
1654 (vms_write_index): Add comments and fix indentation.
1655 Adjust comparaison. Add assertions. Free kbn_blk.
1656 (_bfd_vms_lib_write_archive_contents): Use MAX_EKEYLEN.
1657 Compense MAX_KEYLEN adjustment.
1659 2012-04-16 Maciej W. Rozycki <macro@linux-mips.org>
1661 * elfxx-mips.c (mips16_stub_symndx): Handle n64 compound relocs.
1662 (_bfd_mips_elf_check_relocs): Update accordingly.
1664 2012-04-13 Alan Modra <amodra@gmail.com>
1667 * elflink.c (bfd_elf_final_link): Set reloc_count to 0 for
1670 2012-04-12 David S. Miller <davem@davemloft.net>
1672 * reloc.c (BFD_RELOC_SPARC_H34, BFD_RELOC_SPARC_SIZE32,
1673 BFD_RELOC_SPARC_SIZE64, BFD_RELOC_SPARC_WDISP10): New relocs.
1674 * libbfd.h: Regenerate.
1675 * bfd-in2.h: Likewise.
1676 * elfxx-sparc.c (sparc_elf_wdisp10_reloc): New function.
1677 (_bfd_sparc_elf_howto_table): Add entries for R_SPARC_H34,
1678 R_SPARC_SIZE32, R_SPARC_64, and R_SPARC_WDISP10.
1679 (_bfd_sparc_elf_reloc_type_lookup): Handle new relocs.
1680 (_bfd_sparc_elf_check_relocs): Likewise.
1681 (_bfd_sparc_elf_gc_sweep_hook): Likewise.
1682 (_bfd_sparc_elf_relocate_section): Likewise.
1684 2012-04-12 Roland McGrath <mcgrathr@google.com>
1686 * elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry):
1688 (struct elf32_arm_link_hash_table): New member `nacl_p'.
1689 (elf32_arm_link_hash_table_create): Initialize it.
1690 (elf32_arm_nacl_link_hash_table_create): New function.
1691 (arm_movw_immediate, arm_movt_immediate): New functions.
1692 (elf32_arm_populate_plt_entry): Test HTAB->nacl_p.
1693 (elf32_arm_finish_dynamic_sections): Likewise.
1694 (elf32_arm_output_plt_map_1): Likewise.
1695 (bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec):
1696 New backend vector stanza.
1697 (elf32_arm_nacl_modify_segment_map): New function.
1698 * config.bfd: Handle arm-*-nacl*, armeb-*-nacl*.
1699 * targets.c: Support bfd_elf32_{big,little}_nacl_vec.
1700 * configure.in: Likewise.
1701 (bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here.
1702 (bfd_elf32_littlearm_nacl_vec): Likewise.
1703 (bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise.
1704 (bfd_elf32_bigarm_symbian_vec): Likewise.
1705 (bfd_elf32_littlearm_symbian_vec): Likewise.
1706 (bfd_elf32_bigarm_vxworks_vec): Likewise.
1707 (bfd_elf32_littlearm_vxworks_vec): Likewise.
1708 * configure: Regenerated.
1710 2012-04-12 Tristan Gingold <gingold@adacore.com>
1712 * elflink.c (elf_link_output_extsym): Add a guard.
1713 (bfd_elf_final_link): Remove assertion.
1714 (bfd_elf_final_link): Add a guard.
1715 * elfnn-ia64.c (INCLUDE_IA64_VMS): Removed.
1716 (elfNN_vms_section_from_shdr, elfNN_vms_object_p)
1717 (elfNN_vms_post_process_headers, elfNN_vms_section_processing)
1718 (elfNN_vms_final_write_processing, elfNN_vms_close_and_cleanup):
1720 (elfNN-ia64-vms target): Move to ...
1721 * elf64-ia64-vms.c: New file.
1722 * configure.in (bfd_elf64_ia64_vms_vec): Add elf64-ia64-vms.lo
1723 * Makefile.am (BFD64_BACKENDS): Add elf64-ia64-vms.lo.
1724 (BFD64_BACKENDS_CFILES): Ad elf64-ia64-vms.c.
1725 * configure: Regenerate.
1726 * Makefile.in: Regenerate.
1728 2012-04-11 Nick Clifton <nickc@redhat.com>
1731 * elf64-ppc.c (opd_entry_value): When dealing with sections
1732 without relocs, keep the last section loaded in order to avoid
1733 unnecessary reloads.
1735 2012-04-09 Roland McGrath <mcgrathr@google.com>
1737 * elf.c (_bfd_elf_map_sections_to_segments): Set INFO->user_phdrs.
1738 * elf-nacl.c (nacl_modify_segment_map): Do nothing if INFO->user_phdrs.
1739 (nacl_modify_program_headers): Likewise.
1741 2012-04-03 Roland McGrath <mcgrathr@google.com>
1743 * elf-nacl.c: New file.
1744 * elf-nacl.h: New file.
1745 * elf32-i386.c (elf_backend_modify_segment_map): Define for
1746 bfd_elf32_i386_nacl_vec.
1747 (elf_backend_modify_program_headers): Likewise.
1748 * elf64-x86-64.c (elf_backend_modify_segment_map): Define for
1749 bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec.
1750 (elf_backend_modify_program_headers): Likewise.
1751 * Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here.
1752 (BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here.
1753 * Makefile.in: Regenerated.
1754 * configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here.
1755 (bfd_elf32_x86_64_nacl_vec): Likewise.
1756 (bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise.
1757 (bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise.
1758 (bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise.
1759 (bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise.
1760 (bfd_elf32_i386_nacl_vec): Likewise.
1761 (bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise.
1762 (bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise.
1763 * configure: Regenerated.
1765 2012-03-31 Andreas Schwab <schwab@linux-m68k.org>
1767 * elf32-m68k.c (elf_m68k_relocate_section): Allow
1768 R_68K_TLS_LE{8,16,32} for PIE.
1770 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1772 * elf64-s390.c: Fix several comments regarding PLT entry
1774 * elf32-s390.c: Likewise.
1776 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1778 * elf64-s390.c: Use the section pointer shortcuts in
1779 elf_link_hash_table and remove them from the target specific
1781 * elf32-s390.c: Likewise.
1783 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1785 * elf64-s390.c (elf_s390x_plt_entry, elf_s390x_first_plt_entry):
1787 (PLT_PIC_ENTRY_WORD*, PLT_PIC12_ENTRY_WORD*): Remove.
1788 (elf_s390_finish_dynamic_symbol): Use memcpy instead of bfd_put_32.
1789 (elf_s390_finish_dynamic_sections): Likewise.
1790 * elf32-s390.c (elf_s390_plt_entry, elf_s390_plt_pic_entry)
1791 (elf_s390_plt_pic12_entry, elf_s390_plt_pic16_entry)
1792 (elf_s390_plt_first_entry, elf_s390_plt_pic_first_entry): New definitions.
1793 (PLT_PIC16_ENTRY_WORD*, PLT_ENTRY_WORD*)
1794 (PLT_PIC_FIRST_ENTRY_WORD*, PLT_FIRST_ENTRY_WORD*): Remove.
1796 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1798 * elf32-s390.c (struct elf_s390_dyn_relocs): Remove.
1799 Rename all occurrences in the file to elf_dyn_relocs.
1800 * elf64-s390.c: Likewise.
1802 2012-03-30 Alan Modra <amodra@gmail.com>
1804 * elflink.c (_bfd_elf_gc_mark_reloc): Don't delve into dynamic
1807 2012-03-29 Alan Modra <amodra@gmail.com>
1809 * bfd-in.h (bfd_get_arch_size, bfd_get_sign_extend_vma): Delete.
1810 * bfd-in2.h: Regenerate.
1812 2012-03-23 Alan Modra <amodra@gmail.com>
1814 * elf.c (assign_file_positions_for_non_load_sections): Don't warn
1815 on empty alloc sections.
1817 2012-03-23 Alan Modra <amodra@gmail.com>
1819 * linker.c (_bfd_nearby_section): New function, split out from..
1821 * bfd-in.h (_bfd_nearby_section): Declare.
1822 * bfd-in2.h: Regenerate.
1823 * elflink.c (elf_link_input_bfd): Don't use text_index_section or
1824 data_index_section with ld -q or ld -r output relocs against
1825 stripped output sections. Instead use _bfd_nearby_section.
1827 2012-03-23 Alan Modra <amodra@gmail.com>
1830 * elf64-ppc.c (opd_entry_value): Read full symbol table when
1831 sym hashes unavailable.
1833 2012-03-21 Eliot Dresselhaus <eliot@sonic.net>
1835 * elf32-tic6x.c (elf32_tic6x_merge_private_bfd_data): Return TRUE
1836 for non-C6X objects.
1838 2012-03-20 Kai Tietz <ktietz@redhat.com>
1841 * configure.in (AC_CHECK_HEADERS): Test for windows.h and dlfcn.h.
1842 * plugin.c: Guard include of dlfcn.h if HAVE_DLFCN_H is defined.
1843 Add windows.h header include if HAVE_WINDOWS_H is defined.
1844 (dlerror): New static function if windows variant is used instead
1846 (dlclose): Likewise.
1849 * configure: Regenerated.
1850 * config.in: Regenerated.
1852 2012-03-20 H.J. Lu <hongjiu.lu@intel.com>
1855 * elf32-i386.c (elf_i386_relocate_section): Don't issue an error
1856 for R_386_GOTOFF relocation against protected function if
1857 SYMBOLIC_BIND is true.
1859 * elf64-x86-64.c (elf_x86_64_relocate_section): Don't issue an
1860 error for R_X86_64_GOTOFF64 relocation against protected function
1861 when building executable or SYMBOLIC_BIND is true.
1863 2012-03-16 Roland McGrath <mcgrathr@google.com>
1865 * config.bfd: Handle x86_64-*-nacl*.
1866 * elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza.
1867 (bfd_elf32_x86_64_nacl_vec): Likewise.
1868 * targets.c: Support them.
1869 * configure.in: Likewise.
1870 * configure: Regenerated.
1872 2012-03-16 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
1874 * elf32-arm.c (elf32_arm_attributes_accept_div): New function.
1875 (elf32_arm_attributes_forbid_div): Likewise.
1876 (elf32_arm_merge_eabi_attributes): Correct handling of
1879 2012-03-15 Roland McGrath <mcgrathr@google.com>
1881 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Use
1882 elf_x86_64_backend_data parameters for plt_eh_frame.
1884 * elf64-x86-64.c (struct elf_x86_64_backend_data): New type.
1885 (get_elf_x86_64_backend_data, GET_PLT_ENTRY_SIZE): New macros.
1886 (elf_x86_64_arch_bed): New variable.
1887 (elf_backend_arch_data): New macro.
1888 (elf_x86_64_adjust_dynamic_symbol): Use GET_PLT_ENTRY_SIZE.
1889 (elf_x86_64_allocate_dynrelocs): Likewise.
1890 (elf_x86_64_relocate_section): Likewise.
1891 (elf_x86_64_plt_sym_val): Likewise.
1892 (elf_x86_64_finish_dynamic_symbol): Use elf_x86_64_backend_data
1893 parameters for PLT details.
1894 (elf_x86_64_finish_dynamic_sections): Likewise.
1896 2012-03-14 Roland McGrath <mcgrathr@google.com>
1898 * elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up
1899 to the full size, padding out with nop instructions.
1901 2012-03-12 Alan Modra <amodra@gmail.com>
1903 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn
1904 on zero size dynbss symbol.
1905 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
1906 * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise.
1907 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
1908 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
1909 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
1910 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
1911 * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise.
1912 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
1913 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
1914 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
1915 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1916 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
1917 * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise.
1918 * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise.
1919 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
1920 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
1921 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1922 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
1923 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
1924 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
1925 * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise.
1927 2012-03-10 Edmar Wienskoski <edmar@freescale.com>
1929 * archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
1930 * bfd-in2.h: Regenerate.
1931 * cpu-powerpc.c (bfd_powerpc_archs): Add entries for
1932 bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
1934 2012-03-09 H.J. Lu <hongjiu.lu@intel.com>
1937 * elf32-i386.c (elf_i386_relocate_section): Restore
1940 * elf64-x86-64.c (elf_x86_64_relocate_section): Restore
1943 2012-03-08 Tristan Gingold <gingold@adacore.com>
1945 * vms-lib.c (_bfd_vms_lib_write_archive_contents): Set maximum
1946 keylen according to archive kind. Set nextvbn and nextrfa lhd
1947 fields. Add comments.
1949 2012-03-07 Nick Clifton <nickc@redhat.com>
1951 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type
1953 (elf32_mn10300_link_hash_table): Add tls_ldm_got entry;
1954 (elf_mn10300_tdata): Define.
1955 (elf_mn10300_local_got_tls_type): Define.
1956 (elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD,
1957 R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE,
1958 R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD,
1959 R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs.
1960 (mn10300_reloc_map): Likewise.
1961 (elf_mn10300_tls_transition): New function.
1962 (dtpoff, tpoff, mn10300_do_tls_transition): New functions.
1963 (mn10300_elf_check_relocs): Add TLS support.
1964 (mn10300_elf_final_link_relocate): Likewise.
1965 (mn10300_elf_relocate_section): Likewise.
1966 (mn10300_elf_relax_section): Likewise.
1967 (elf32_mn10300_link_hash_newfunc): Initialise new field.
1968 (_bfd_mn10300_copy_indirect_symbol): New function.
1969 (elf32_mn10300_link_hash_table_create): Initialise new fields.
1970 (_bfd_mn10300_elf_size_dynamic_sections): Add TLS support.
1971 (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
1972 (_bfd_mn10300_elf_reloc_type_class): Allocate an
1973 elf_mn10300_obj_tdata structure.
1974 (elf_backend_copy_indirect_symbol): Define.
1975 * reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD,
1976 BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE,
1977 BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD,
1978 BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations.
1979 (BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to
1980 alongside other MN10300 relocations.
1981 * bfd-in2.h: Regenerate.
1982 * libbfd.h: Regenerate.
1984 2012-03-06 Jakub Jelinek <jakub@redhat.com>
1986 * elf64-x86-64.c (elf_x86_64_relocate_section): For R_X86_64_RELATIVE
1987 set relocate to TRUE.
1989 2012-03-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1992 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore
1993 overflows for R_SPARC_UA32 in .stab sections.
1995 2012-03-01 Alan Modra <amodra@gmail.com>
1997 * elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning.
1999 2012-02-27 Alan Modra <amodra@gmail.com>
2001 * elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd
2002 before calling elf specific function.
2003 (sh_elf_osec_readonly_p): Test for error return from above.
2005 2012-02-27 Alan Modra <amodra@gmail.com>
2007 * elf32-spu.c (build_stub): Fix malloc under-allocation.
2009 2012-02-25 Walter Lee <walt@tilera.com>
2010 * reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL,
2011 BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD,
2012 BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD,
2013 BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD,
2014 BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD,
2015 BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE,
2016 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE,
2017 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO,
2018 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO,
2019 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI,
2020 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI,
2021 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA,
2022 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA,
2023 BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE,
2024 BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE,
2025 BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE,
2026 BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE,
2027 BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE,
2028 BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE,
2029 BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD,
2030 BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD,
2031 BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD,
2032 BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD,
2033 BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD,
2034 BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD,
2035 BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD.
2036 Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT,
2037 BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT,
2038 BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT,
2039 BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT,
2040 BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT,
2041 BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT,
2042 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT,
2043 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT,
2044 BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD,
2045 BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD,
2046 BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD,
2047 BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD,
2048 BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD,
2049 BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD,
2050 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD,
2051 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD,
2052 BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE,
2053 BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE,
2054 BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE,
2055 BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE,
2056 BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE,
2057 BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE,
2058 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE,
2059 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE.
2060 * elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro
2062 (tilepro_reloc_map): Ditto.
2063 (tilepro_info_to_howto_rela): Ditto.
2064 (reloc_to_create_func): Ditto.
2065 (tilepro_tls_translate_to_le): New.
2066 (tilepro_tls_translate_to_ie): New.
2067 (tilepro_elf_tls_transition): New.
2068 (tilepro_elf_check_relocs): Handle new tls relocations.
2069 (tilepro_elf_gc_sweep_hook): Ditto.
2070 (allocate_dynrelocs): Ditto.
2071 (tilepro_elf_relocate_section): Ditto.
2072 (tilepro_replace_insn): New.
2073 (insn_mask_X1): New.
2074 (insn_mask_X0_no_dest_no_srca): New
2075 (insn_mask_X1_no_dest_no_srca): New
2076 (insn_mask_Y0_no_dest_no_srca): New
2077 (insn_mask_Y1_no_dest_no_srca): New
2080 (insn_tls_le_move_X1): New
2081 (insn_tls_le_move_zero_X0X1): New
2082 (insn_tls_ie_lw_X1): New
2083 (insn_tls_ie_add_X0X1): New
2084 (insn_tls_ie_add_Y0Y1): New
2085 (insn_tls_gd_add_X0X1): New
2086 (insn_tls_gd_add_Y0Y1): New
2087 * elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx
2089 (tilegx_reloc_map): Ditto.
2090 (tilegx_info_to_howto_rela): Ditto.
2091 (reloc_to_create_func): Ditto.
2092 (tilegx_elf_link_hash_table): New field disable_le_transition.
2093 (tilegx_tls_translate_to_le): New.
2094 (tilegx_tls_translate_to_ie): New.
2095 (tilegx_elf_tls_transition): New.
2096 (tilegx_elf_check_relocs): Handle new tls relocations.
2097 (tilegx_elf_gc_sweep_hook): Ditto.
2098 (allocate_dynrelocs): Ditto.
2099 (tilegx_elf_relocate_section): Ditto.
2100 (tilegx_copy_bits): New.
2101 (tilegx_replace_insn): New.
2102 (insn_mask_X1): New.
2103 (insn_mask_X0_no_dest_no_srca): New.
2104 (insn_mask_X1_no_dest_no_srca): New.
2105 (insn_mask_Y0_no_dest_no_srca): New.
2106 (insn_mask_Y1_no_dest_no_srca): New.
2107 (insn_mask_X0_no_operand): New.
2108 (insn_mask_X1_no_operand): New.
2109 (insn_mask_Y0_no_operand): New.
2110 (insn_mask_Y1_no_operand): New.
2111 (insn_tls_ie_ld_X1): New.
2112 (insn_tls_ie_ld4s_X1): New.
2113 (insn_tls_ie_add_X0X1): New.
2114 (insn_tls_ie_add_Y0Y1): New.
2115 (insn_tls_ie_addx_X0X1): New.
2116 (insn_tls_ie_addx_Y0Y1): New.
2117 (insn_tls_gd_add_X0X1): New.
2118 (insn_tls_gd_add_Y0Y1): New.
2119 (insn_move_X0X1): New.
2120 (insn_move_Y0Y1): New.
2121 (insn_add_X0X1): New.
2122 (insn_add_Y0Y1): New.
2123 (insn_addx_X0X1): New.
2124 (insn_addx_Y0Y1): New.
2125 * libbfd.h: Regenerate.
2126 * bfd-in2.h: Regenerate.
2128 2012-02-25 Walter Lee <walt@tilera.com>
2130 * config.bfd (tilegx-*-*): rename little endian vector; add big
2132 (tilegxbe-*-*): New case.
2133 * configure.in (bfd_elf32_tilegx_vec): Rename...
2134 (bfd_elf32_tilegx_le_vec): ... to this.
2135 (bfd_elf32_tilegx_be_vec): New vector.
2136 (bfd_elf64_tilegx_vec): Rename...
2137 (bfd_elf64_tilegx_le_vec): ... to this.
2138 (bfd_elf64_tilegx_be_vec): New vector.
2139 * configure: Regenerate.
2140 * elf32-tilegx.c (TARGET_LITTLE_SYM): Rename.
2141 (TARGET_LITTLE_NAME): Ditto.
2142 (TARGET_BIG_SYM): Define.
2143 (TARGET_BIG_NAME): Define.
2144 * elf64-tilegx.c (TARGET_LITTLE_SYM): Rename.
2145 (TARGET_LITTLE_NAME): Ditto.
2146 (TARGET_BIG_SYM): Define.
2147 (TARGET_BIG_NAME): Define.
2148 * targets.c (bfd_elf32_tilegx_vec): Rename...
2149 (bfd_elf32_tilegx_le_vec): ... to this.
2150 (bfd_elf32_tilegx_be_vec): Declare.
2151 (bfd_elf64_tilegx_vec): Rename...
2152 (bfd_elf64_tilegx_le_vec): ... to this.
2153 (bfd_elf64_tilegx_be_vec): Declare.
2154 (_bfd_target_vector): Add / rename above vectors.
2155 * arctures.c (bfd_architecture): Define bfd_mach_tilegx32.
2156 * bfd-in2.h: Regenerate.
2157 * cpu-tilegx.c (bfd_tilegx32_arch): define.
2158 (bfd_tilegx_arch): link to bfd_tilegx32_arch.
2160 2012-02-24 Nick Clifton <nickc@redhat.com>
2163 * reloc.c (bfd_generic_get_relocated_section_contents): Issue an
2164 error message instead of aborting, when an outofrange reloc is
2167 2012-02-23 Iain Sandoe <idsandoe@googlemail.com>
2169 * mach-o.c (bfd_mach_o_swap_in_non_scattered_reloc): New.
2170 (bfd_mach_o_canonicalize_one_reloc): Swap non-scattered reloc
2171 bit-fields when target and host differ in endian-ness. When
2172 PAIRs are non-scattered find the 'symbol' from the preceding
2173 reloc. Add FIXME re. reloc symbols on section boundaries.
2174 (bfd_mach_o_swap_out_non_scattered_reloc): New.
2175 (bfd_mach_o_write_relocs): Use bfd_mach_o_encode_non_scattered_reloc.
2177 2012-02-17 Iain Sandoe <idsandoe@googlemail.com>
2179 * mach-o-i386.c (i386_howto_table): Add support for 16 bit
2181 (bfd_mach_o_i386_swap_reloc_in): Handle 16bit sect-diffs.
2182 (bfd_mach_o_i386_swap_reloc_out): Likewise.
2184 2012-02-17 Tristan Gingold <gingold@adacore.com>
2186 * reloc.c (BFD_RELOC_MACH_O_LOCAL_SECTDIFF):
2187 * libbfd.h: Regenerated.
2188 * bfd-in2.h: Likewise.
2189 * mach-o-i386.c (i386_howto_table): Include local sectdiff.
2190 (bfd_mach_o_i386_swap_reloc_in): Update for local sectdiff.
2191 (bfd_mach_o_i386_swap_reloc_out): Likewise.
2193 2012-02-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2195 * elf32-s390.c (elf_s390_relocate_section): Support basr in the
2196 GD->LE and LD->LE optimizations.
2198 2012-02-16 Alan Modra <amodra@gmail.com>
2201 * elf32-rx.c (elf32_rx_relax_section): Correct width check.
2203 2012-02-13 Richard Henderson <rth@redhat.com>
2206 * linker.c (fix_syms): Force symbols outside any section into
2207 bfd_abs_section_ptr.
2209 2012-02-13 Alan Modra <amodra@gmail.com>
2211 * elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function.
2212 * elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Declare.
2213 * elf32-m68hc11.c (elf_backend_merge_symbol_attribute): Define.
2214 * elf32-m68hc12.c (elf_backend_merge_symbol_attribute): Define.
2216 2012-02-11 Jan Kratochvil <jan.kratochvil@redhat.com>
2217 Nick Clifton <nickc@redhat.com>
2219 * oasys.c (oasys_write_header): Fix compilation warning on zero-sized
2222 2012-02-10 Iain Sandoe <idsandoe@googlemail.com>
2224 * mach-o.c (bfd_mach_o_build_seg_command): Count zerofill section
2225 vma additions in their logical, rather than physical order.
2227 2012-02-10 Iain Sandoe <idsandoe@googlemail.com>
2229 * mach-o.c (mach_o_section_name_xlat): Correct eh-frame section
2231 * mach-o-x86-64.c (text_section_names_xlat): New.
2232 (mach_o_x86_64_segsec_names_xlat): New.
2233 (bfd_mach_o_tgt_seg_table): Define to mach_o_x86_64_segsec_names_xlat.
2234 * mach-o-i386.c (text_section_names_xlat): Correct section parameters.
2236 2012-02-10 Tristan Gingold <gingold@adacore.com>
2238 * elfnn-ia64.c (elfNN_vms_object_p): Change comparison operator
2239 to avoid infinite loop. Add comments.
2241 2012-02-09 H.J. Lu <hongjiu.lu@intel.com>
2244 * cpu-i386.c (bfd_arch_i386_fill): Updated to support multi byte
2246 (bfd_arch_i386_short_nop_fill): New.
2247 (bfd_arch_i386_long_nop_fill): Likewise.
2248 Use bfd_arch_i386_short_nop_fill in 32bit bfd_arch_info
2249 initializers. Use bfd_arch_i386_long_nop_fill on 64bit
2250 bfd_arch_info initializers.
2252 * cpu-k1om.c (bfd_arch_i386_fill): Renamed to ...
2253 (bfd_arch_i386_short_nop_fill): This.
2254 Update bfd_arch_info initializers.
2255 * cpu-l1om.c: Likewise.
2257 2012-02-08 Alan Modra <amodra@gmail.com>
2259 * elflink.c (_bfd_elf_gc_mark_rsec): Mark weakdef syms too.
2260 (_bfd_elf_fix_symbol_flags): When a weakdef is def_regular, clear
2261 the correct h->u.weakdef.
2263 2012-02-07 Alan Modra <amodra@gmail.com>
2265 * elf.c (elf_find_function): Don't use internal_elf_sym.
2266 (_bfd_elf_maybe_function_sym): Likewise. Replace elf_symbol_type
2267 parameter with asymbol.
2268 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
2269 * elf-bfd.h (_bfd_elf_maybe_function_sym): Update prototype.
2270 (struct elf_backend_data <maybe_function_sym>): Likewise.
2272 2012-02-02 Vidya Praveen (vidya.praveen@atmel.com)
2275 * elf32-avr.c (elf32_avr_relax_section): Correct the
2276 condition that qualifies the candidates for relaxation.
2278 2012-02-02 Tristan Gingold <gingold@adacore.com>
2280 * bfdio.c (real_fopen): Remove unused vms_modes variable.
2282 2012-02-02 Tristan Gingold <gingold@adacore.com>
2284 * mach-o.c (bfd_mach_o_read_header): Silent uninitialized
2287 2012-02-02 Tristan Gingold <gingold@adacore.com>
2289 * archive.c (bfd_slurp_armap): Fix thinko in cast.
2291 2012-01-31 H.J. Lu <hongjiu.lu@intel.com>
2294 * archures.c (bfd_arch_info): Add fill.
2295 (bfd_default_arch_struct): Add bfd_arch_default_fill.
2296 (bfd_arch_default_fill): New.
2298 * configure.in: Set bfd version to 2.22.52.
2299 * configure: Regenerated.
2301 * cpu-alpha.c: Add bfd_arch_default_fill to bfd_arch_info
2303 * cpu-arc.c: Likewise.
2304 * cpu-arm.c: Likewise.
2305 * cpu-avr.c: Likewise.
2306 * cpu-bfin.c: Likewise.
2307 * cpu-cr16.c: Likewise.
2308 * cpu-cr16c.c: Likewise.
2309 * cpu-cris.c: Likewise.
2310 * cpu-crx.c: Likewise.
2311 * cpu-d10v.c: Likewise.
2312 * cpu-d30v.c: Likewise.
2313 * cpu-dlx.c: Likewise.
2314 * cpu-epiphany.c: Likewise.
2315 * cpu-fr30.c: Likewise.
2316 * cpu-frv.c: Likewise.
2317 * cpu-h8300.c: Likewise.
2318 * cpu-h8500.c: Likewise.
2319 * cpu-hppa.c: Likewise.
2320 * cpu-i370.c: Likewise.
2321 * cpu-i860.c: Likewise.
2322 * cpu-i960.c: Likewise.
2323 * cpu-ia64.c: Likewise.
2324 * cpu-ip2k.c: Likewise.
2325 * cpu-iq2000.c: Likewise.
2326 * cpu-lm32.c: Likewise.
2327 * cpu-m10200.c: Likewise.
2328 * cpu-m10300.c: Likewise.
2329 * cpu-m32c.c: Likewise.
2330 * cpu-m32r.c: Likewise.
2331 * cpu-m68hc11.c: Likewise.
2332 * cpu-m68hc12.c: Likewise.
2333 * cpu-m68k.c: Likewise.
2334 * cpu-m88k.c: Likewise.
2335 * cpu-mcore.c: Likewise.
2336 * cpu-mep.c: Likewise.
2337 * cpu-microblaze.c: Likewise.
2338 * cpu-mips.c: Likewise.
2339 * cpu-mmix.c: Likewise.
2340 * cpu-moxie.c: Likewise.
2341 * cpu-msp430.c: Likewise.
2342 * cpu-mt.c: Likewise.
2343 * cpu-ns32k.c: Likewise.
2344 * cpu-openrisc.c: Likewise.
2345 * cpu-or32.c: Likewise.
2346 * cpu-pdp11.c: Likewise.
2347 * cpu-pj.c: Likewise.
2348 * cpu-plugin.c: Likewise.
2349 * cpu-powerpc.c: Likewise.
2350 * cpu-rl78.c: Likewise.
2351 * cpu-rs6000.c: Likewise.
2352 * cpu-rx.c: Likewise.
2353 * cpu-s390.c: Likewise.
2354 * cpu-score.c: Likewise.
2355 * cpu-sh.c: Likewise.
2356 * cpu-sparc.c: Likewise.
2357 * cpu-spu.c: Likewise.
2358 * cpu-tic30.c: Likewise.
2359 * cpu-tic4x.c: Likewise.
2360 * cpu-tic54x.c: Likewise.
2361 * cpu-tic6x.c: Likewise.
2362 * cpu-tic80.c: Likewise.
2363 * cpu-tilegx.c: Likewise.
2364 * cpu-tilepro.c: Likewise.
2365 * cpu-v850.c: Likewise.
2366 * cpu-vax.c: Likewise.
2367 * cpu-w65.c: Likewise.
2368 * cpu-we32k.c: Likewise.
2369 * cpu-xc16x.c: Likewise.
2370 * cpu-xstormy16.c: Likewise.
2371 * cpu-xtensa.c: Likewise.
2372 * cpu-z80.c: Likewise.
2373 * cpu-z8k.c: Likewise.
2375 * cpu-i386.c: Include "libiberty.h".
2376 (bfd_arch_i386_fill): New.
2377 Add bfd_arch_i386_fill to bfd_arch_info initializer.
2379 * cpu-k1om.c: Add bfd_arch_i386_fill to bfd_arch_info initializer.
2380 * cpu-l1om.c: Likewise.
2382 * linker.c (default_data_link_order): Call abfd->arch_info->fill
2385 * bfd-in2.h: Regenerated.
2387 2012-01-27 Michael Eager <eager@eagercon.com>
2389 * elf32-microblaze.c (create_got_section):
2390 Reuse existing .rela.got section.
2392 2012-01-23 Alan Modra <amodra@gmail.com>
2394 * elf-bfd.h: Formatting.
2395 (struct elf_backend_data): Add "maybe_function_sym".
2396 (_bfd_elf_maybe_function_sym): Declare.
2397 * elfxx-target.h (elf_backend_maybe_function_sym): Define.
2398 (elfNN_bed): Init new field.
2399 * elf.c (elf_find_function): Use maybe_function_sym.
2400 (_bfd_elf_maybe_function_sym): New function.
2401 * elf64-ppc.c (elf_backend_maybe_function_sym): Define.
2402 (ppc64_elf_maybe_function_sym): New function.
2404 2012-01-20 Francois Gouget <fgouget@codeweavers.com>
2407 * archive.c (_bfd_ar_sizepad): New function. Correctly install and
2408 pad the size field in an archive header.
2409 (_bfd_generic_read_ar_hdr_mag): Use the correct type and scan
2410 function for the archive size field.
2411 (bfd_generic_openr_next_archived_file): Likewise.
2412 (do_slurp_coff_armap): Likewise.
2413 (_bfd_write_archive_contents): Likewise.
2414 (_bfd_bsd44_write_ar_hdr): Use the new function.
2415 (bfd_ar_hdr_from_filesystem): Likewise.
2416 (_bfd_write_archive_contents): Likewise.
2417 (bsd_write_armap): Likewise.
2418 (coff_write_armap): Likewise.
2419 * archive64.c (bfd_elf64_archive_write_armap): Likewise.
2420 * bfdio.c (bfd_bread): Use correct type for archive element
2422 * ar.c (open_inarch): Likewise.
2423 (extract_file): Likewise.
2424 * libbfd-in.h (struct areltdata): Use correct types for
2425 parsed_size and extra_size fields.
2426 Prototype _bfd_ar_sizepad function.
2427 * libbfd.h: Regenerate.
2429 2012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org>
2431 * elf.c (elfcore_write_prpsinfo): Provide unconditionally.
2432 Return NULL if core file generation is unsupported.
2433 (elfcore_write_prstatus): Likewise.
2434 * elf32-arm.c (elf32_arm_nabi_write_core_note): New function.
2435 (elf_backend_write_core_note): Define.
2437 2012-01-19 Tristan Gingold <gingold@adacore.com>
2439 * pef.c: Add a comment.
2442 2012-01-17 Alan Modra <amodra@gmail.com>
2444 * elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave
2445 trailing garbage in the note.
2446 * elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise.
2448 2012-01-16 Daniel Green <venix1@gmail.com>
2451 * coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test
2452 h->root.type not h->type.
2453 * coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise.
2455 2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
2457 * mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute
2460 2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
2462 * mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file
2463 position from here... to (bfd_mach_o_build_seg_command): Here.
2465 2012-01-12 Iain Sandoe <idsandoe@googlemail.com>
2467 * mach-o.c (bfd_mach_o_count_indirect_symbols): New.
2468 (bfd_mach_o_build_dysymtab_command): Populate indirect symbol table.
2469 * mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the
2470 file. (bfd_mach_o_section): Add indirect_syms field.
2472 2012-01-11 Iain Sandoe <idsandoe@googlemail.com>
2474 * mach-o.c (bfd_mach_o_build_seg_command): Separate computation of
2475 vmsize from filesize. Don't compute offsets or file sizes for
2478 2012-01-11 Iain Sandoe <idsandoe@googlemail.com>
2480 * mach-o.c (bfd_mach_o_build_commands): Make the building of each
2481 command type independent.
2483 2012-01-11 Alan Modra <amodra@gmail.com>
2485 * elf64-ppc.c: Define more insns used in plt call stubs.
2486 (ppc64_elf_brtaken_reloc): Assume isa version 2 or above.
2487 (ppc64_elf_relocate_section): Likewise.
2488 (enum ppc_stub_type): Add ppc_stub_plt_call_r2save.
2489 (struct ppc_link_hash_table): Increase size of stub_count array.
2490 Add plt_stub_align and plt_thread_safe.
2491 (ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define.
2492 (plt_stub_size, plt_stub_pad): New functions.
2493 (build_plt_stub): Emit barriers for power7 thread safety. Don't
2494 emit needless save of r2.
2495 (build_tls_get_addr_stub): Adjust params.
2496 (ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning
2497 plt stubs. Adjust build_*plt_stub calls.
2498 (ppc_size_one_stub): Similarly.
2499 (ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align
2500 params. Choose default for plt_thread_safe based on existence of
2501 calls to thread creation functions. Modify plt_call to
2502 plt_call_r2save when no tocsave reloc found. Align tail of stub
2504 (ppc64_elf_build_stubs): Align tail of stub sections. Adjust
2505 output of stub statistics.
2506 (ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save.
2507 * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
2509 2012-01-10 H.J. Lu <hongjiu.lu@intel.com>
2512 * elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P
2513 check on R_X86_64_PCXX.
2515 2012-01-10 Tristan Gingold <gingold@adacore.com>
2517 * mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false
2520 2012-01-10 Tristan Gingold <gingold@adacore.com>
2522 * bfdio.c (bfd_tell): Handle nested archives.
2524 * cache.c (bfd_cache_lookup_worker): Ditto.
2525 * archive.c (_bfd_get_elt_at_filepos): Remove code dealing with
2527 (bfd_generic_openr_next_archived_file): Likewise.
2529 2012-01-09 Iain Sandoe <idsandoe@googlemail.com>
2531 * mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement.
2532 (bfd_mach_o_write_symtab): Remove handling for indirect syms.
2533 (bfd_mach_o_primary_symbol_sort_key): Likewise.
2534 (bfd_mach_o_cf_symbols): Likewise.
2535 (bfd_mach_o_sort_symbol_table): Remove.
2536 (bfd_mach_o_mangle_symbols): Adjust arguments, remove handling
2537 for indirect and dysymtab counts. Do the symbol sorting here.
2538 (bfd_mach_o_build_dysymtab_command): Count the symbol types here.
2539 Make the indirect symbols a TODO.
2540 (bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols.
2541 (bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with
2543 (bfd_mach_o_read_symtab_symbol): Record the symbol index.
2544 (bfd_mach_o_read_symtab_symbol): Adjust recording of global status.
2545 * mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries.
2546 (IS_MACHO_INDIRECT): Remove.
2547 (SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New.
2549 2012-01-06 Nick Clifton <nickc@redhat.com>
2552 * reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to
2553 'flaginfo' to avoid conflicts with AIX system headers.
2555 2012-01-06 Tristan Gingold <gingold@adacore.com>
2557 * bfdio.c (bfd_bread): Use arelt_size macro.
2559 2012-01-06 Tristan Gingold <gingold@adacore.com>
2561 * config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs.
2563 2012-01-05 Nick Clifton <nickc@redhat.com>
2566 * elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if
2569 2012-01-05 Jan Kratochvil <jan.kratochvil@redhat.com>
2571 Fix zero registers core files when built by gcc-4.7.
2572 * elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and
2573 size. Call elfcore_write_note for the local variables. Remove the
2574 final elfcore_write_note call. Add NOTREACHED comments.
2576 2012-01-04 Tristan Gingold <gingold@adacore.com>
2578 * mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function.
2579 (bfd_mach_o_generic_stat_arch_elt): Adjust.
2581 2012-01-04 Tristan Gingold <gingold@adacore.com>
2583 * mach-o.c (bfd_mach_o_fat_member_init): New function.
2584 (bfd_mach_o_openr_next_archived_file): Reindent.
2585 Adjust to call bfd_mach_o_fat_member_init.
2586 (bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init.
2588 2012-01-04 Tristan Gingold <gingold@adacore.com>
2590 * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle
2591 BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1,
2592 BFD_RELOC_MACH_O_X86_64_PCREL32_2,
2593 BFD_RELOC_MACH_O_X86_64_PCREL32_4,
2594 BFD_RELOC_MACH_O_X86_64_BRANCH32,
2595 BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32,
2596 BFD_RELOC_MACH_O_X86_64_GOT.
2598 2012-01-04 Tristan Gingold <gingold@adacore.com>
2600 * mach-o.h (bfd_mach_o_fvmlib_command): New structure.
2601 (bfd_mach_o_load_command): Add fvmlib field.
2603 * mach-o.c (bfd_mach_o_read_fvmlib): New function.
2604 (bfd_mach_o_read_command): Handle fvmlib.
2606 2012-01-04 Tristan Gingold <gingold@adacore.com>
2608 * mach-o.c (bfd_mach_o_convert_architecture): Reindent.
2609 Decode msubtype for ARM.
2611 2012-01-04 Tristan Gingold <gingold@adacore.com>
2613 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments.
2615 2012-01-04 Tristan Gingold <gingold@adacore.com>
2617 * mach-o.h: Reindent header.
2618 (bfd_mach_o_encryption_info_command): New structure.
2619 (bfd_mach_o_load_command): Add encryption_info field.
2621 * mach-o.c (bfd_mach_o_read_encryption_info): New function.
2622 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO.
2623 (bfd_mach_o_read_command): Adjust error message.
2625 2012-01-04 Shinichiro Hamaji <shinichiro.hamaji@gmail.com>
2627 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part
2628 which reads DWARF2 and stores in stash from find_line.
2629 (find_line) Call _bfd_dwarf2_slurp_debug_info.
2630 * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration.
2631 * libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate.
2632 * mach-o.c (dsym_subdir): The name of subdir where debug
2633 information may be stored.
2634 (bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose
2636 (bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is
2637 corresponding to the executable.
2638 (bfd_mach_o_find_dsym): New. Find a debug information BFD in the
2639 specified binary file.
2640 (bfd_mach_o_follow_dsym): New. Find a debug information BFD for
2642 (bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O
2643 executables, dylibs, and bundles.
2644 (bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file.
2645 * mach-o.h (dsym_bfd): The BFD of the dSYM file.
2647 2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
2649 * mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index
2651 (bfd_mach_o_primary_symbol_sort_key): Adjust for stabs.
2652 (bfd_mach_o_cf_symbols): Likewise.
2654 2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
2656 * mach-o.c (bfd_mach_o_mangle_symbols): Correct typo.
2658 2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
2660 * mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index
2661 as the value of an indirect symbol. Keep the string table index in
2662 non-indirect syms for reference.
2663 (bfd_mach_o_write_dysymtab): New.
2664 (bfd_mach_o_primary_symbol_sort_key): New.
2665 (bfd_mach_o_cf_symbols): New.
2666 (bfd_mach_o_sort_symbol_table): New.
2667 (bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols.
2668 If we are emitting a dysymtab, process indirect symbols and count the
2669 number of each other kind.
2670 (bfd_mach_o_mangle_sections): New.
2671 (bfd_mach_o_write_contents): Split out some pre-requisite code into
2672 the command builder. Write dysymtab if the command is present.
2673 (bfd_mach_o_count_sections_for_seg): New.
2674 (bfd_mach_o_build_seg_command): New.
2675 (bfd_mach_o_build_dysymtab_command): New.
2676 (bfd_mach_o_build_commands): Reorganize to support the fact that some
2677 commands are optional and should not be emitted if there are no
2678 sections or symbols.
2679 (bfd_mach_o_set_section_contents): Amend comment.
2680 * mach-o.h: Amend and add to comments.
2681 (mach_o_data_struct): Add fields for dysymtab symbols counts and a
2682 pointer to the indirects, when present.
2683 (bfd_mach_o_should_emit_dysymtab): New macro.
2684 (IS_MACHO_INDIRECT): Likewise.
2686 For older changes see ChangeLog-2011
2692 version-control: never