+
+ * elf32-i386.c (elf_i386_relocate_section): Allow R_386_GOTOFF
+ against protected function when building executable.
+
+
+ * elf32-ppc.c (LWZU_0_X_11): Delete.
+ (B, LWZ_11_X_11, LWZ_11_X_30, MTCTR_11): Define.
+ (ppc_elf_select_plt_layout): Set .got flags too. Formatting.
+ (ppc_elf_size_dynamic_sections): Allocate space for .glink branch
+ table.
+ (ppc_elf_finish_dynamic_symbol): Point .plt entries into the branch
+ table.
+ (ppc_elf_finish_dynamic_sections): Adjust DT_PPC_GLINK value.
+ Generate .glink branch table and updated stubs.
+
+
+ * reloc.c (BFD_RELOC_HI16_PCREL): Define.
+ (BFD_RELOC_HI16_S_PCREL, BFD_RELOC_LO16_PCREL): Define.
+ * elf32-ppc.c (GLINK_PLTRESOLVE, GLINK_ENTRY_SIZE): Define.
+ (CROR_151515, CROR_313131): Delete.
+ (ADDIS_11_11, ADDI_11_11, SUB_11_11_30, ADD_0_11_11, ADD_11_0_11,
+ LWZ_0_4_30, MTCTR_0, LWZ_12_8_30, BCTR, ADDIS_11_30,
+ LWZU_0_X_11): Define.
+ (ppc_elf_howto_raw): Add R_PPC_REL16, R_PPC_REL16_LO, R_PPC_REL16_HI
+ and R_PPC_REL16_HA entries.
+ (ppc_elf_reloc_type_lookup): Convert new bfd reloc types.
+ (ppc_elf_addr16_ha_reloc): Also handle R_PPC_REL16_HA.
+ (struct ppc_elf_link_hash_table): Add glink, glink_pltresolve,
+ new_plt, and old_plt.
+ (ppc_elf_create_dynamic_sections): Create .glink section.
+ (ppc_elf_check_relocs): Set new_plt and old_plt.
+ (ppc_elf_select_plt_layout): New function.
+ (ppc_elf_tls_setup): Set plt output section elf type and flags.
+ (allocate_got): Handle differences between old and new got layout.
+ (allocate_dynrelocs): Likewise for plt.
+ (ppc_elf_size_dynamic_sections): Likewise. Allocate memory for
+ .glink. Don't allocate memory for old bss .plt. Emit DT_PPC_GLINK.
+ (ppc_elf_relax_section): Rename ppc_info to htab. Handle .glink
+ destination of R_PPC_PLTREL24 relocs.
+ (ppc_elf_relocate_section): Handle new relocs and changed destination
+ of R_PPC_PLTREL24.
+ (ppc_elf_finish_dynamic_symbol): Init new style plt and handle
+ differences in layout.
+ (ppc_elf_finish_dynamic_sections): Set DT_PPC_GLINK value. Don't
+ put a blrl in new got. Write glink contents.
+ * elf32-ppc.h (ppc_elf_select_plt_layout): Declare.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+
+ * elf32-i386.c (elf_i386_finish_dynamic_sections): Fix signedness
+ warning.
+
+
+ * elf.c (_bfd_elf_make_section_from_shdr): Only check debug
+ section if SEC_ALLOC isn't set.
+
+
+ * configure.in: Replace AC_COMPILE_CHECK_SIZEOF with AC_CHECK_SIZEOF.
+ * acinclude.m4: Don't sinclude accross.m4.
+ * config.in, configure, Makefile.in, doc/Makefile.in: Regenerate.
+
+
+ * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_dotsym.
+ (ppc64_elf_add_symbol_hook): Set has_dotsym.
+ (ppc64_elf_check_directives): Only process syms when has_dotsym.
+ (func_desc_adjust): Hide fake function descriptors when function
+ code entry is defined.
+ (adjust_opd_syms): Adjust for deleted_section becoming union field.
+
+
+ * elfcode.h (elf_object_p): Add more sanity checks on elf header.
+
+
+ * coff-tic80.c: Undefine _CONST after system headers to prevent
+ clash with tic80-specific definition in include/coff/tic80.h
+
+
+ PR 939
+ * elflink.c (elf_link_output_extsym): Use output_bfd if
+ h->root.u.def.section is bfd_abs_section_ptr when reporting
+ error.
+
+
+ * elf-bfd.h (elf_backend_data): Update special_sections to
+ array of pointer to bfd_elf_special_section.
+ * elf.c (special_sections): Likewise.
+ * elf32-arm.c (elf32_arm_symbian_special_sections): Likewise.
+ * elf32-m32r.c (m32r_elf_special_sections): Likewise.
+ * elf32-m68hc11.c (elf32_m68hc11_special_sections): Likewise.
+ * elf32-m68hc12.c (elf32_m68hc12_special_sections): Likewise.
+ * elf32-mcore.c (mcore_elf_special_sections): Likewise.
+ * elf32-ppc.c (ppc_elf_special_sections): Likewise.
+ * elf32-sh64.c (sh64_elf_special_sections): Likewise.
+ * elf32-v850.c (v850_elf_special_sections): Likewise.
+ * elf32-xtensa.c (elf_xtensa_special_sections): Likewise.
+ * elf64-alpha.c (elf64_alpha_special_sections): Likewise.
+ * elf64-hppa.c (elf64_hppa_special_sections): Likewise.
+ * elf64-ppc.c (ppc64_elf_special_sections): Likewise.
+ * elf64-sh64.c (sh64_elf64_special_sections): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_special_sections): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_special_sections): Likewise.
+ * elfxx-mips.h (_bfd_mips_elf_special_sections): Likewise.
+
+ * elf.c (get_special_section): Updated.
+
+
+ * elf-bfd.h (struct elf_backend_data): Remove got_symbol_offset.
+ * elfxx-target.h (elf_backend_got_symbol_offset): Delete.
+ * elflink.c (_bfd_elf_create_got_section): Use zero in place of
+ got_symbol_offset.
+ * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Likewise.
+ * elf32-frv.c (_frv_create_got_section): Likewise.
+ * elf32-i370.c (i370_elf_finish_dynamic_sections): Delete ppc code.
+ (elf_backend_got_symbol_offset): Don't define.
+ * elf64-ppc.c (elf_backend_got_symbol_offset): Don't define.
+ * elf32-ppc.c (struct ppc_elf_link_hash_table): Add got_header_size
+ and got_gap.
+ (ppc_elf_create_got): Tidy.
+ (ppc_elf_create_dynamic_sections): Don't set SEC_IN_MEMORY for .plt.
+ (ppc_elf_check_relocs): Reduce string comparisons by using elf.hgot.
+ (ppc_elf_gc_sweep_hook): Likewise.
+ (ppc_elf_relocate_section): Likewise.
+ (ppc_elf_finish_dynamic_symbol): Likewise.
+ (allocate_got): New function.
+ (allocate_dynrelocs): Use allocate_got.
+ (ppc_elf_size_dynamic_sections): Likewise. Delay tlsld_got allocation
+ so that local got can refcount it. Set got_header_size.
+ (ppc_elf_relocate_section): Use value of elf.hgot rather than hard-
+ coded 4.
+ (ppc_elf_finish_dynamic_sections): Likewise.
+ (elf_backend_got_symbol_offset): Don't define.
+ (elf_backend_got_header_size): Ditto.
+
+
+ * configure.in (ACX_HEADER_STRING): New.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * sysdep.h (STRING_WITH_STRINGS): Use.
+
+
+ * elf.c (_bfd_elf_close_and_cleanup): Only call
+ _bfd_dwarf2_cleanup_debug_info on bfd_object.
+
+
+ * elflink.c (_bfd_elf_provide_section_bound_symbols): Use
+ "__bss_start" instead of "_edata" as fallback.
+
+
+ * bfd-in2.h: Regenerated.
+
+
+ * config.bfd: Use bfd_elf32_i386_vxworks_vec for i?86-*-vxworks.
+ * configure.in: Add bfd_elf32_i386_vxworks_vec. i386 targets need
+ elf-vxworks.lo.
+ * configure: Regenerate.
+ * Makefile.am (BFD32_BACKENDS): Add elf-vxworks.lo.
+ (BFD32_BACKENDS_CFILES): Add elf-vxworks.c.
+ (elf32-i386.lo): Depend on elf-vxworks.h.
+ (elf-vxworks.lo): New rule.
+ * Makefile.in: Regenerate.
+ * elf-bfd.h (elf_backend_data): Update type of
+ elf_backend_emit_relocs.
+ (_bfd_elf_link_output_relocs): Update prototype.
+ * elflink.c (_bfd_elf_link_output_relocs): Always use
+ bed->elf_backend_emit_relocs when outputting relocations.
+ * elfxx-target.h (elf_backend_emit_relocs): Default to
+ _bfd_elf_link_output_relocs.
+ * targets.c (bfd_elf32_i386_vxworks_vec): Declare.
+ (_bfd_target_vector): Add bfd_elf32_i386_vxworks_vec.
+ * elf32-i386.c: Add elf32-i386-vxworks target BFD.
+ (elf_i386_plt0_entry): Remove padding.
+ (elf_i386_pic_plt0_entry): Ditto.
+ (PLTRESOLVE_RELOCS_SHLIB, PLTRESOLVE_RELOCS): Define.
+ (PLT_NON_JUMP_SLOT_RELOCS): Define.
+ (elf_i386_link_hash_table): Add srelplt2, hgot, hplt, is_vxworks and
+ plt0_pad_byte fields.
+ (elf_i386_link_hash_table_create): Zero them.
+ (elf_i386_create_dynamic_sections): Create static relocation section.
+ (allocate_dynrelocs): Allocate space for static PLT relocations.
+ (elf_i386_size_dynamic_sections): Save shortcuts to PLT and GOT
+ symbols. Give PLT symbols function type. Don't strip PLT sections
+ if we have exported symbols from them.
+ (elf_i386_finish_dynamic_symbol): Fill in VxWorks PLT static
+ relocation section. Don't mark _GLOBAL_OFFSET_TABLE_ as absolute on
+ VxWorks.
+ (elf_i386_finish_dynamic_sections): Allow different pad bytes.
+ Add relocation for GOT location. Fill in PLT static relocations.
+ (elf_i386_vxworks_link_hash_table_create): New function.
+ (elf_i386_vxworks_link_output_symbol_hook): New function.
+ * elf-vxworks.h: New file.
+
+
+ * section.c (bfd_make_section_anyway_with_flags): New.
+ (bfd_make_section_anyway): Call bfd_make_section_anyway_with_flags,
+ (bfd_make_section_with_flags): New.
+ (bfd_make_section): Call bfd_make_section_with_flags.
+
+ * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Call
+ bfd_make_section_with_flags/bfd_make_section_anyway_with_flags
+ instead of bfd_make_section/bfd_make_section and don't call
+ bfd_set_section_flags.
+ (mn10300_elf_check_relocs): Likewise.
+ (_bfd_mn10300_elf_create_dynamic_sections): Likewise.
+ * elf32-arm.c (create_got_section): Likewise.
+ (bfd_elf32_arm_add_glue_sections_to_bfd): Likewise.
+ (elf32_arm_check_relocs): Likewise.
+ * elf32-cris.c (cris_elf_check_relocs): Likewise.
+ * elf32-frv.c (elf32_frv_add_symbol_hook): Likewise.
+ (_frv_create_got_section): Likewise.
+ (elf32_frvfdpic_create_dynamic_sections): Likewise.
+ * elf32-hppa.c (elf32_hppa_create_dynamic_sections): Likewise.
+ (elf32_hppa_check_relocs): Likewise.
+ * elf32-i370.c (i370_elf_create_dynamic_sections): Likewise.
+ (i370_elf_check_relocs): Likewise.
+ * elf32-i386.c (create_got_section): Likewise.
+ (elf_i386_check_relocs): Likewise.
+ * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise.
+ (create_got_section): Likewise.
+ (m32r_elf_create_dynamic_sections): Likewise.
+ (m32r_elf_check_relocs): Likewise.
+ * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
+ * elf32-ppc.c (ppc_elf_create_got): Likewise.
+ (ppc_elf_create_dynamic_sections): Likewise.
+ (ppc_elf_add_symbol_hook): Likewise.
+ (ppc_elf_check_relocs): Likewise.
+ * elf32-s390.c (create_got_section): Likewise.
+ (elf_s390_check_relocs): Likewise.
+ * elf32-sh.c (create_got_section): Likewise.
+ (sh_elf_create_dynamic_sections): Likewise.
+ (sh_elf_check_relocs): Likewise.
+ * elf32-vax.c (elf_vax_check_relocs): Likewise.
+ * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
+ * elf32-xtensa.c (elf_xtensa_create_dynamic_sections): Likewise.
+ (add_extra_plt_sections): Likewise.
+ * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise.
+ (elf64_alpha_create_got_section): Likewise.
+ (elf64_alpha_create_dynamic_sections): Likewise.
+ (elf64_alpha_check_relocs): Likewise.
+ * elf64-hppa.c (get_reloc_section): Likewise.
+ (get_opd): Likewise.
+ (get_plt): Likewise.
+ (get_dlt): Likewise.
+ (get_stub): Likewise.
+ (elf64_hppa_create_dynamic_sectionso): Likewise.
+ * elf64-mmix.c (mmix_elf_check_common_relocs): Likewise.
+ * elf64-ppc.c (create_linkage_sections): Likewise.
+ (ppc64_elf_check_relocs): Likewise.
+ * elf64-s390.c (create_got_section): Likewise.
+ (elf_s390_check_relocs): Likewise.
+ * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
+ (sh64_elf64_create_dynamic_sections): Likewise.
+ * elf64-x86-64.c (create_got_section): Likewise.
+ (elf64_x86_64_check_relocs): Likewise.
+ * elflink.c (_bfd_elf_create_got_section): Likewise.
+ (_bfd_elf_link_create_dynamic_sections): Likewise.
+ (elf_link_add_object_symbols): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Likewise.
+ (elfNN_ia64_create_dynamic_sections): Likewise.
+ (get_fptr): Likewise.
+ (get_pltoff): Likewise.
+ (get_reloc_section): Likewise.
+ (elfNN_ia64_object_p): Likewise.
+ * elfxx-mips.c (mips_elf_rel_dyn_section): Likewise.
+ (mips_elf_create_compact_rel_section): Likewise.
+ (mips_elf_create_got_section): Likewise.
+ (_bfd_mips_elf_create_dynamic_sections): Likewise.
+ * elfxx-sparc.c (create_got_section): Likewise.
+ (_bfd_sparc_elf_check_relocs): Likewise.
+
+ * elf.c (_bfd_elf_new_section_hook): Call _bfd_elf_get_sec_type_attr
+ on linker created sections.
+
+
+ PR 882
+ * elflink.c (_bfd_elf_link_assign_sym_version): Allow version
+ script on executable.
+
+
+ * dwarf2.c (read_abbrevs): If bfd_realloc fails, free currently
+ allocated memory before returning.
+ (decode_line_info): Likewise.
+ (_bfd_dwarf2_cleanup_debug_info): New function: Frees memory
+ allocated by functions in this file.
+ * elf-bfd.h (_bfd_dwarf2_cleanup_debug_info): Prototype.
+ * elf.c (_bfd_elf_close_and_cleanup): Call
+ _bfd_dwarf2_cleanup_debug_info.
+
+
+ * Makefile.am (INCLUDES): Don't -D_GNU_SOURCE here.
+ * configure.in: Call AC_GNU_SOURCE here, after AC_PROG_CC.
+ * configure, config.in, Makefile.in: Regenerate.
+ * sysdep.h (stpcpy): Revert last change.
+
+
+ * sysdep.h (stpcpy): Wrap declaration in parentheses.
+
+
+ * elfxx-ia64.c (ARCH_SIZE): New.
+ (LOG_SECTION_ALIGN): Likewise.
+ (elfNN_ia64_create_dynamic_sections): Use LOG_SECTION_ALIGN to
+ align relocation sections.
+ (get_fptr): Likewise.
+ (get_reloc_section): Likewise.
+ (elfNN_ia64_tprel_base): Likewise.
+ (elfNN_ia64_check_relocs): Support 32bit relocations.
+ (allocate_global_fptr_got): Likewise.
+ (allocate_dynrel_entries): Likewise.
+ (set_got_entry): Likewise.
+ (set_pltoff_entry): Likewise.
+ (elfNN_ia64_relocate_section): Likewise.
+
+
+ * configure.in: Add AC_CHECK_DECLS(stpcpy).
+ * configure: Regenerate.
+ * config.in: Likewise.
+
+ * sysdep.h (stpcpy): New.
+
+
+ * Update the address and phone number of the FSF organization in
+ the GPL notices in the following files:
+ aix386-core.c, aix5ppc-core.c, aout-adobe.c, aout-arm.c,
+ aout-cris.c, aout-ns32k.c, aout-sparcle.c, aout-target.h,
+ aout-tic30.c, aout0.c, aout32.c, aout64.c, aoutf1.h, aoutx.h,
+ archive.c, archive64.c, archures.c, armnetbsd.c, bfd-in.h,
+ bfd-in2.h, bfd.c, bfdio.c, bfdwin.c, binary.c, bout.c, cache.c,
+ cf-i386lynx.c, cf-m68klynx.c, cf-sparclynx.c, cisco-core.c,
+ coff-a29k.c, coff-alpha.c, coff-apollo.c, coff-arm.c, coff-aux.c,
+ coff-go32.c, coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c,
+ coff-i960.c, coff-ia64.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
+ coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
+ coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
+ coff-svm68k.c, coff-tic30.c, coff-tic4x.c, coff-tic54x.c,
+ coff-tic80.c, coff-u68k.c, coff-w65.c, coff-we32k.c, coff-z8k.c,
+ coff64-rs6000.c, coffcode.h, coffgen.c, cofflink.c, coffswap.h,
+ corefile.c, cpu-a29k.c, cpu-alpha.c, cpu-arc.c, cpu-arm.c,
+ cpu-avr.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
+ cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
+ cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
+ cpu-i960.c, cpu-ia64-opc.c, cpu-ia64.c, cpu-ip2k.c, cpu-iq2000.c,
+ cpu-m10200.c, cpu-m10300.c, cpu-m32r.c, cpu-m68hc11.c,
+ cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
+ cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-ns32k.c, cpu-openrisc.c,
+ cpu-or32.c, cpu-pdp11.c, cpu-pj.c, cpu-powerpc.c, cpu-rs6000.c,
+ cpu-s390.c, cpu-sh.c, cpu-sparc.c, cpu-tic30.c, cpu-tic4x.c,
+ cpu-tic54x.c, cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c,
+ cpu-we32k.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z8k.c, demo64.c,
+ dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c, ecoffswap.h,
+ efi-app-ia32.c, efi-app-ia64.c, elf-bfd.h, elf-eh-frame.c,
+ elf-hppa.h, elf-m10200.c, elf-m10300.c, elf-strtab.c, elf.c,
+ elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
+ elf32-cr16c.c, elf32-cris.c, elf32-crx.c, elf32-d10v.c,
+ elf32-d30v.c, elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
+ elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
+ elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
+ elf32-iq2000.c, elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c,
+ elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c, elf32-m88k.c,
+ elf32-mcore.c, elf32-mips.c, elf32-msp430.c, elf32-openrisc.c,
+ elf32-or32.c, elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c,
+ elf32-sh-symbian.c, elf32-sh.c, elf32-sh64-com.c, elf32-sh64.c,
+ elf32-sh64.h, elf32-sparc.c, elf32-v850.c, elf32-vax.c,
+ elf32-xstormy16.c, elf32-xtensa.c, elf32.c, elf64-alpha.c,
+ elf64-gen.c, elf64-hppa.c, elf64-hppa.h, elf64-mips.c,
+ elf64-mmix.c, elf64-ppc.c, elf64-ppc.h, elf64-s390.c,
+ elf64-sh64.c, elf64-sparc.c, elf64-x86-64.c, elf64.c, elfcode.h,
+ elfcore.h, elflink.c, elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c,
+ elfxx-mips.h, elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h,
+ epoc-pe-arm.c, epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c,
+ genlink.h, hash.c, host-aout.c, hp300bsd.c, hp300hpux.c,
+ hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
+ i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
+ i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
+ libaout.h, libbfd-in.h, libbfd.c, libbfd.h, libcoff-in.h,
+ libcoff.h, libecoff.h, libhppa.h, libieee.h, libnlm.h, liboasys.h,
+ libpei.h, libxcoff.h, linker.c, lynx-core.c, m68k4knetbsd.c,
+ m68klinux.c, m68klynx.c, m68knetbsd.c, m88kmach3.c, m88kopenbsd.c,
+ mach-o-target.c, mach-o.c, mach-o.h, merge.c, mipsbsd.c, mmo.c,
+ netbsd-core.c, netbsd.h, newsos3.c, nlm-target.h, nlm.c,
+ nlm32-alpha.c, nlm32-i386.c, nlm32-ppc.c, nlm32-sparc.c, nlm32.c,
+ nlm64.c, nlmcode.h, nlmswap.h, ns32k.h, ns32knetbsd.c, oasys.c,
+ opncls.c, osf-core.c, pc532-mach.c, pdp11.c, pe-arm.c, pe-i386.c,
+ pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c, peXXigen.c,
+ pef-traceback.h, pef.c, pef.h, pei-arm.c, pei-i386.c, pei-mcore.c,
+ pei-mips.c, pei-ppc.c, pei-sh.c, peicode.h, ppcboot.c,
+ ptrace-core.c, reloc.c, reloc16.c, riscix.c, rs6000-core.c,
+ sco5-core.c, section.c, simple.c, som.c, som.h, sparclinux.c,
+ sparclynx.c, sparcnetbsd.c, srec.c, stab-syms.c, stabs.c, sunos.c,
+ syms.c, sysdep.h, targets.c, tekhex.c, ticoff.h, trad-core.c,
+ vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c, vms-gsd.c,
+ vms-hdr.c, vms-misc.c, vms-tir.c, vms.c, vms.h, xcoff-target.h,
+ xcofflink.c, xsym.c, xsym.h, xtensa-isa.c, xtensa-modules.c,
+ hosts/alphavms.h
+
+
+ * bfd-in.h (_bfd_elf_provide_section_bound_symbols): New.
+ * bfd-in2.h: Regenerated.
+
+ * elflink.c (bfd_elf_set_symbol): New.
+ (_bfd_elf_provide_symbol): Call it.
+ (_bfd_elf_provide_section_bound_symbols): New.
+
+
+ * elflink.c (_bfd_elf_merge_symbol): Only skip weak definitions
+ at the end, if a strong definition has already been seen.
+
+
+ * section.c (struct bfd_section): Replace link_order_head and
+ link_order_tail with map_head and map_tail union.
+ (STD_SECTION): Update.
+ (_bfd_strip_section_from_output): Delete.
+ * aoutx.h: Update throughout for above changes.
+ * coff-ppc.c: Likewise.
+ * cofflink.c: Likewise.
+ * ecoff.c: Likewise.
+ * elf-eh-frame.c: Likewise.
+ * elf-m10300.c: Likewise.
+ * elf.c: Likewise.
+ * elf32-arm.c: Likewise.
+ * elf32-cris.c: Likewise.
+ * elf32-hppa.c: Likewise.
+ * elf32-i386.c: Likewise.
+ * elf32-m32r.c: Likewise.
+ * elf32-m68hc1x.c: Likewise.
+ * elf32-m68k.c: Likewise.
+ * elf32-ppc.c: Likewise.
+ * elf32-s390.c: Likewise.
+ * elf32-sh.c: Likewise.
+ * elf32-vax.c: Likewise.
+ * elf32-xtensa.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elf64-s390.c: Likewise.
+ * elf64-sh64.c: Likewise.
+ * elf64-x86-64.c: Likewise.
+ * elflink.c: Likewise.
+ * elfxx-ia64.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * elfxx-sparc.c: Likewise.
+ * linker.c: Likewise.
+ * merge.c: Likewise.
+ * pdp11.c: Likewise.
+ * xcofflink.c: Likewise.
+ * elflink.c (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Split
+ out from bfd_elf_size_dynamic_sections.
+ * bfd-in.h (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Declare.
+ * bfd-in2.h: Regenerate.
+
+
+ * section.c (bfd_section_list_remove): Don't clear s->next.
+ (bfd_section_list_append): Always init s->prev.
+ (bfd_section_list_prepend): Define.
+ (bfd_section_list_insert_after): Minor optimization.
+ (bfd_section_removed_from_list): Rewrite.
+ * elf.c (assign_section_numbers): Simplify list traversal now that
+ bfd_section_list_remove doesn't destroy removed section next ptr.
+ * sunos.c (sunos_add_dynamic_symbols): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_object_p): Use bfd_section_list_prepend.
+ * xcofflink.c (_bfd_xcoff_bfd_final_link): Simplify list traversal.
+ * bfd-in2.h: Regenerate.
+
+
+ * bfd.c (bfd): Remove section_tail and add section_last.
+ (bfd_preserve): Likewise.
+ (bfd_preserve_save): Likewise.
+ (bfd_preserve_restore): Likewise.
+ * opncls.c (_bfd_new_bfd): Likewise.
+
+ * coffcode.h (coff_compute_section_file_positions): Updated.
+ (coff_compute_section_file_positions): Likewise.
+ * elf.c (assign_section_numbers): Likewise.
+ * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
+ * elf64-mmix.c (mmix_elf_final_link): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_object_p): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
+ * sunos.c (sunos_add_dynamic_symbols): Likewise.
+ * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
+
+ * ecoff.c (bfd_debug_section): Initialize prev.
+
+ * section.c (bfd_section): Add prev.
+ (bfd_section_list_remove): Updated.
+ (bfd_section_list_append): New.
+ (bfd_section_list_insert_after): New.
+ (bfd_section_list_insert_before): New.
+ (bfd_section_list_insert): Removed.
+ (bfd_section_removed_from_list): Updated.
+ (STD_SECTION): Initialize prev.
+ (bfd_section_init): Updated.
+ (bfd_section_list_clear): Updated.
+
+ * bfd-in2.h: Regenerated.
+
+
+ * elf.c (_bfd_elf_new_section_hook): Don't call
+ _bfd_elf_get_sec_type_attr on sections from input files.
+
+
+ * merge.c (sec_merge_init): Call bfd_hash_table_init_n with
+ hash table size 16699 instead of bfd_hash_table_init.
+
+
+ * elflink.c (_bfd_elf_merge_symbol): Skip weak definitions if a strong
+ definition has already been seen.
+
+
+ * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Treat
+ R_ARM_PLT32 the same as R_ARM_PC24.
+ (arm_add_to_rel): Ditto.
+
* config.bfd: Add h8300*-*-rtemscoff.
Switch h8300*-*-rtems* to elf.
+
+ * aclocal.m4, Makefile.in: Regnerated.
+
Merge changes only applied to Makefile.in.
* coffcode.h (STRING_SIZE_SIZE): Updated to match libcoff-in.h.
-
+
* aout-target.h: Convert to ISO C.
* aoutf1.h: Convert to ISO C.
* aoutx.h: Convert to ISO C.
* elf.c (bfd_elf_set_group_contents): Ignore linker created
- group section.
+ group section.
(assign_section_numbers): Accept link_info. Check SHT_GROUP
sections for relocatable files only. Remove the linker created
group sections.
* configure.in: Check for ffs decl and alphabetize.
* config.in: Regenerate.
* configure: Regenerate.
- * sysdep.h [NEED_DECLARATION_FFS] (ffs): Prototype and
- alphabetize.
+ * sysdep.h [NEED_DECLARATION_FFS] (ffs): Prototype and alphabetize.
i386aout.c, i386msdos.c, i386os9k.c, ieee.c, mach-o.c,
nlm32-sparc.c, oasys.c, opncls.c, pdp11.c, pe-mips.c, peXXigen.c,
pef.c, peicode.h, reloc.c, riscix.c, section.c, simple.c, som.c,
- sparclynx.c, targets.c, vms-misc.c, vms-tir.c, xsym.c, doc/chew.c,
+ sparclynx.c, targets.c, vms-misc.c, vms-tir.c, xsym.c,
hosts/delta68.h, hosts/vaxbsd.h: Remove #if 0'd code
throughout. Similarly, collapse #if 1'd code.