+2001-09-18 Alan Modra <amodra@bigpond.net.au>
+
+ * libbfd.c (bfd_bread): New function replacing bfd_read without
+ redundant params. Allow reads up to (size_t) -2 in length.
+ (bfd_bwrite): Similarly for bfd_write.
+ (real_read): Return a size_t.
+ (bfd_read): Call bfd_bread.
+ (bfd_write): Call bfd_bwrite.
+ (warn_deprecated): New function to annoy everybody.
+ (bfd_get_file_window): Don't call bfd_set_error unnecessarily.
+ * bfd-in.h (bfd_bread, bfd_bwrite, warn_deprecated): Declare.
+ (bfd_read, bfd_write): Define as macro.
+ * aix386-core.c: Replace calls to bfd_read with bfd_bread, and
+ likewise for bfd_write. Ensure function args are correct size by
+ using casts or local vars. In some cases, remove unnecessary
+ casts. Formatting fixes, in some cases removing a large expression
+ from function args by using a local var. Replace CONST with const.
+ Modify variable types to avoid warings. Use casts to avoid
+ warnings when using negative numbers in unsigned expressions.
+ * aout-adobe.c: Likewise.
+ * aout-arm.c: Likewise.
+ * aout-cris.c: Likewise.
+ * aout-encap.c: Likewise.
+ * aout-ns32k.c: Likewise.
+ * aout-target.h: Likewise.
+ * aout-tic30.c: Likewise.
+ * aoutf1.h: Likewise.
+ * aoutx.h: Likewise.
+ * archive.c: Likewise.
+ * archures.c: Likewise.
+ * bfd-in.h: Likewise.
+ * bfd.c: Likewise.
+ * binary.c: Likewise.
+ * bout.c: Likewise.
+ * cache.c: Likewise.
+ * cisco-core.c: Likewise.
+ * coff-a29k.c: Likewise.
+ * coff-alpha.c: Likewise.
+ * coff-arm.c: Likewise.
+ * coff-h8300.c: Likewise.
+ * coff-h8500.c: Likewise.
+ * coff-i386.c: Likewise.
+ * coff-i860.c: Likewise.
+ * coff-i960.c: Likewise.
+ * coff-ia64.c: Likewise.
+ * coff-m68k.c: Likewise.
+ * coff-m88k.c: Likewise.
+ * coff-mcore.c: Likewise.
+ * coff-mips.c: Likewise.
+ * coff-ppc.c: Likewise.
+ * coff-rs6000.c: Likewise.
+ * coff-sh.c: Likewise.
+ * coff-sparc.c: Likewise.
+ * coff-stgo32.c: Likewise.
+ * coff-tic30.c: Likewise.
+ * coff-tic54x.c: Likewise.
+ * coff-tic80.c: Likewise.
+ * coff-w65.c: Likewise.
+ * coff-z8k.c: Likewise.
+ * coff64-rs6000.c: Likewise.
+ * coffcode.h: Likewise.
+ * coffgen.c: Likewise.
+ * cofflink.c: Likewise.
+ * coffswap.h: Likewise.
+ * corefile.c: Likewise.
+ * cpu-arc.c: Likewise.
+ * cpu-h8300.c: Likewise.
+ * cpu-h8500.c: Likewise.
+ * cpu-i960.c: Likewise.
+ * cpu-ia64-opc.c: Likewise.
+ * cpu-ns32k.c: Likewise.
+ * cpu-pdp11.c: Likewise.
+ * cpu-pj.c: Likewise.
+ * cpu-sh.c: Likewise.
+ * cpu-w65.c: Likewise.
+ * cpu-z8k.c: Likewise.
+ * dwarf1.c: Likewise.
+ * dwarf2.c: Likewise.
+ * ecoff.c: Likewise.
+ * ecofflink.c: Likewise.
+ * ecoffswap.h: Likewise.
+ * elf-bfd.h: Likewise.
+ * elf-hppa.h: Likewise.
+ * elf-m10200.c: Likewise.
+ * elf-m10300.c: Likewise.
+ * elf.c: Likewise.
+ * elf32-arc.c: Likewise.
+ * elf32-arm.h: Likewise.
+ * elf32-avr.c: Likewise.
+ * elf32-cris.c: Likewise.
+ * elf32-fr30.c: Likewise.
+ * elf32-gen.c: Likewise.
+ * elf32-h8300.c: Likewise.
+ * elf32-hppa.c: Likewise.
+ * elf32-i370.c: Likewise.
+ * elf32-i386.c: Likewise.
+ * elf32-i860.c: Likewise.
+ * elf32-m32r.c: Likewise.
+ * elf32-m68k.c: Likewise.
+ * elf32-mcore.c: Likewise.
+ * elf32-mips.c: Likewise.
+ * elf32-openrisc.c: Likewise.
+ * elf32-pj.c: Likewise.
+ * elf32-ppc.c: Likewise.
+ * elf32-s390.c: Likewise.
+ * elf32-sh-lin.c: Likewise.
+ * elf32-sh.c: Likewise.
+ * elf32-sparc.c: Likewise.
+ * elf32-v850.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elf64-mips.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elf64-s390.c: Likewise.
+ * elf64-sparc.c: Likewise.
+ * elf64-x86-64.c: Likewise.
+ * elfarm-nabi.c: Likewise.
+ * elfcode.h: Likewise.
+ * elfcore.h: Likewise.
+ * elflink.c: Likewise.
+ * elflink.h: Likewise.
+ * elfxx-ia64.c: Likewise.
+ * elfxx-target.h: Likewise.
+ * format.c: Likewise.
+ * hash.c: Likewise.
+ * hp300hpux.c: Likewise.
+ * hppabsd-core.c: Likewise.
+ * hpux-core.c: Likewise.
+ * i386aout.c: Likewise.
+ * i386dynix.c: Likewise.
+ * i386linux.c: Likewise.
+ * i386lynx.c: Likewise.
+ * i386mach3.c: Likewise.
+ * i386msdos.c: Likewise.
+ * i386os9k.c: Likewise.
+ * ieee.c: Likewise.
+ * ihex.c: Likewise.
+ * irix-core.c: Likewise.
+ * libaout.h: Likewise.
+ * libbfd-in.h: Likewise.
+ * libbfd.c: Likewise.
+ * libcoff-in.h: Likewise.
+ * libecoff.h: Likewise.
+ * libieee.h: Likewise.
+ * libnlm.h: Likewise.
+ * libpei.h: Likewise.
+ * libxcoff.h: Likewise.
+ * linker.c: Likewise.
+ * lynx-core.c: Likewise.
+ * m68klinux.c: Likewise.
+ * merge.c: Likewise.
+ * mipsbsd.c: Likewise.
+ * netbsd-core.c: Likewise.
+ * nlm.c: Likewise.
+ * nlm32-alpha.c: Likewise.
+ * nlm32-i386.c: Likewise.
+ * nlm32-ppc.c: Likewise.
+ * nlm32-sparc.c: Likewise.
+ * nlmcode.h: Likewise.
+ * nlmswap.h: Likewise.
+ * ns32k.h: Likewise.
+ * oasys.c: Likewise.
+ * opncls.c: Likewise.
+ * osf-core.c: Likewise.
+ * pc532-mach.c: Likewise.
+ * pdp11.c: Likewise.
+ * pe-mips.c: Likewise.
+ * peXXigen.c: Likewise.
+ * peicode.h: Likewise.
+ * ppcboot.c: Likewise.
+ * ptrace-core.c: Likewise.
+ * reloc.c: Likewise.
+ * reloc16.c: Likewise.
+ * riscix.c: Likewise.
+ * rs6000-core.c: Likewise.
+ * sco5-core.c: Likewise.
+ * section.c: Likewise.
+ * som.c: Likewise.
+ * sparclinux.c: Likewise.
+ * sparclynx.c: Likewise.
+ * srec.c: Likewise.
+ * stabs.c: Likewise.
+ * sunos.c: Likewise.
+ * syms.c: Likewise.
+ * targets.c: Likewise.
+ * tekhex.c: Likewise.
+ * trad-core.c: Likewise.
+ * versados.c: Likewise.
+ * vms-gsd.c: Likewise.
+ * vms-hdr.c: Likewise.
+ * vms-misc.c: Likewise.
+ * vms-tir.c: Likewise.
+ * vms.c: Likewise.
+ * vms.h: Likewise.
+ * xcofflink.c: Likewise.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+ * libcoff.h: Regenerate.
+
+ * bfd.c (struct _bfd): Make "where" and "origin" unsigned.
+ * bfd-in.h (file_ptr): Change from a long int to a bfd_signed_vma.
+ (ufile_ptr): Define.
+ (bfd_tell): Return a ufile_ptr.
+ * libbfd.c (bfd_tell): Likewise.
+ (bfd_seek): Use bfd_size_type locals. Don't call bfd_set_error
+ unnecessarily.
+ * aix386-core.c: Test != 0 for bfd_seek errors rather than < 0.
+ * aoutf1.h: Likewise.
+ * som.c: Likewise.
+ * cache.c (bfd_cache_lookup_worker): Guard against abfd->where
+ larger than unsigned long can represent.
+
+ * libbfd.c (bfd_malloc): Take a bfd_size_type arg. Error if
+ size overflows size_t.
+ (bfd_realloc): Likewise.
+ (bfd_zmalloc): Likewise.
+ * opncls.c (bfd_alloc): Likewise.
+ (bfd_zalloc): Likewise.
+ * libbfd-in.h (bfd_malloc, bfd_realloc, bfd_zmalloc): Update.
+ (bfd_alloc, bfd_zalloc): Update.
+
+ * libbfd.c (bfd_get_8): Mask with 0xff in case char is more than
+ 8 bits.
+ (bfd_get_signed_8): Likewise.
+ (H_PUT_64, H_PUT_32, H_PUT_16, H_PUT_8,
+ H_PUT_S64, H_PUT_S32, H_PUT_S16, H_PUT_S8,
+ H_GET_64, H_GET_32, H_GET_16, H_GET_8,
+ H_GET_S64, H_GET_S32, H_GET_S16, H_GET_S8): Define and use.
+ * libaout.h: Likewise define and use here.
+ * aout-adobe.c: Use H_GET_* and H_PUT_* macros.
+ * aout-arm.c: Likewise.
+ * aout-encap.c: Likewise.
+ * aout-ns32k.c: Likewise.
+ * aout-tic30.c: Likewise.
+ * aoutf1.h: Likewise.
+ * aoutx.h: Likewise.
+ * bout.c: Likewise.
+ * coff-alpha.c: Likewise.
+ * coff-h8300.c: Likewise.
+ * coff-h8500.c: Likewise.
+ * coff-i960.c: Likewise.
+ * coff-ia64.c: Likewise.
+ * coff-m88k.c: Likewise.
+ * coff-mips.c: Likewise.
+ * coff-ppc.c: Likewise.
+ * coff-rs6000.c: Likewise.
+ * coff-sh.c: Likewise.
+ * coff-sparc.c: Likewise.
+ * coff-stgo32.c: Likewise.
+ * coff-tic30.c: Likewise.
+ * coff-tic80.c: Likewise.
+ * coff-w65.c: Likewise.
+ * coff-z8k.c: Likewise.
+ * coff64-rs6000.c: Likewise.
+ * coffgen.c: Likewise.
+ * cofflink.c: Likewise.
+ * coffswap.h: Likewise.
+ * ecoff.c: Likewise.
+ * ecoffswap.h: Likewise.
+ * elf.c: Likewise.
+ * elf32-mips.c: Likewise.
+ * elf64-mips.c: Likewise.
+ * hp300hpux.c: Likewise.
+ * i386dynix.c: Likewise.
+ * i386lynx.c: Likewise.
+ * i386msdos.c: Likewise.
+ * i386os9k.c: Likewise.
+ * libpei.h: Likewise.
+ * nlm32-alpha.c: Likewise.
+ * nlm32-i386.c: Likewise.
+ * nlm32-ppc.c: Likewise.
+ * nlmcode.h: Likewise.
+ * nlmswap.h: Likewise.
+ * oasys.c: Likewise.
+ * pdp11.c: Likewise.
+ * pe-mips.c: Likewise.
+ * peXXigen.c: Likewise.
+ * peicode.h: Likewise.
+ * riscix.c: Likewise.
+ * sunos.c: Likewise.
+ * xcofflink.c: Likewise.
+ * elfcode.h: (put_word, get_word, put_signed_word, get_signed_word):
+ Rename to H_PUT_WORD, H_GET_WORD, H_PUT_SIGNED_WORD, H_GET_SIGNED_WORD.
+ * coff-rs6000.c (PUTWORD, PUTHALF, PUTBYTE): Don't define. Use
+ equivalent H_PUT_* macro instead.
+ (GETWORD, GETHALF, GETBYTE): Similarly.
+ * coff64-rs6000.c (PUTWORD, PUTHALF, PUTBYTE): Likewise.
+ (GETWORD, GETHALF, GETBYTE): Likewise.
+ * coffswap.h (PUTWORD, PUTHALF, PUTBYTE): Likewise.
+
+ * bfd-in.h (struct orl): Change "pos" to a union.
+ * archive.c (_bfd_compute_and_write_armap): Use it instead of casts.
+ (bsd_write_armap): Here too.
+ (coff_write_armap): And here.
+ * coff-rs6000.c (xcoff_write_armap_old): And here.
+ (xcoff_write_one_armap_big): And here.
+ (xcoff_write_armap_big): And here.
+ * ecoff.c (_bfd_ecoff_write_armap): And here.
+ * elf64-mips.c (mips_elf64_write_armap): And here.
+
+ * aoutf1.h (sunos_set_arch_mach): Make "mach" param an enum.
+ * elf-m10300.c (elf_mn10300_mach): Return an unsigned long.
+ * elf32-h8300.c (elf32_h8_mach): Likewise.
+ * elf32-mips.c (elf_mips_mach): Likewise.
+ * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise.
+
+ * aix386-core.c (aix386_core_file_p): Remove redundant bfd_release
+ calls.
+ (aix386_core_vec): Typo fix.
+
+ * aout-arm.c: Include libaout.h and aout/aout64.h after N_TXTADDR
+ etc. to avoid redefined macro warning.
+ (MY(put_reloc)): Use bfd_vma for "value" rather than long.
+ (MY(fix_pcrel_26)): Likewise.
+ * aout-ns32k.c (MY(put_reloc)): Likewise.
+ * aout-cris.c (MY(swap_ext_reloc_out)): Likewise for r_addend.
+ * aoutx.h (NAME(aout,swap_ext_reloc_out)): Likewise.
+ * coff-arm.c (coff_arm_relocate_section): Likewise for my_offset.
+
+ * aout-encap.c: Include "file", not <file> for binutils headers.
+ (encap_object_p): Half baked attempt to fix compile errors in
+ code dealing with "magic".
+
+ * aout-ns32k.c: Include "file", not <file> for binutils headers.
+ (_bfd_ns32k_relocate_contents): get_data and put_data manipulate
+ bfd_vma's rather than longs.
+ * cpu-ns32k.c (ns32k_sign_extend): Delete.
+ (_bfd_ns32k_get_displacement): Return a bfd_vma, don't pass in offset.
+ (_bfd_ns32k_get_immediate): Likewise. Add code for 8 byte values,
+ remove case 3.
+ (_bfd_ns32k_put_displacement): Accept a bfd_vma, don't pass in offset.
+ Use unsigned comparisons.
+ (bfd_ns32k_put_immediate): Likewise, and add code for 8 byte values.
+ (do_ns32k_reloc): get_data and put_data operate on bfd_vma's.
+ (_bfd_do_ns32k_reloc_contents): Likewise.
+ * ns32k.h (_bfd_ns32k_get_displacement): Update prototype.
+ (_bfd_ns32k_get_immediate): Likewise.
+ (_bfd_ns32k_put_displacement): Likewise.
+ (_bfd_ns32k_put_immediate): Likewise.
+ (bfd_reloc_status_type): Likewise.
+
+ * aoutx.h (NAME(aout,find_nearest_line)): Rename 'p' to 'colon'
+ to avoid shadowing.
+ * pdp11.c (NAME(aout,find_nearest_line)): Likewise.
+ * coff-h8300.c (h8300_reloc16_extra_cases): Remove shadowing "value".
+ * coff-ppc.c (enum ref_category): Rename "data" to "tocdata" to
+ avoid shadowing.
+ (record_toc): Use a bfd_signed_vma for our_toc_offset.
+ * coffcode.h (coff_write_relocs): Rename "i" to avoid shadowing.
+ * elf.c (bfd_elf_get_bfd_needed_list): Rename "link" var to avoid
+ shadow warning.
+ (_bfd_elfcore_strndup): Likewise for "dup".
+ * elf32-cris.c (cris_elf_relocate_section): "symname" instead of
+ "name" to avoid shadowing.
+ * elf32-hppa.c (elf32_hppa_relocate_section): Remove duplicate
+ definition of "off".
+ * elf32-i386.c (elf_i386_relocate_section): Likewise.
+ * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Remove duplicate
+ definition of "s".
+ (_bfd_mips_elf_final_link): Rename "i" to "j". Remove duplicate
+ "secpp".
+ * elf64-x86-64.c (elf64_x86_64_relocate_section): Rename inner "indx"
+ to avoid shadowing.
+ * elflink.h (elf_link_add_object_symbols): Rename "link" to "shlink"
+ to avoid shadowing.
+ (elf_link_input_bfd): Likewise.
+ (elf_bfd_final_link): Remove duplicate innermost "off" var.
+ * oasys.c (oasys_write_data): Rename innermost "p" to "sym".
+ * reloc16.c (bfd_coff_reloc16_relax_section): Rename "i" param to
+ "input_section".
+ * som.c (som_prep_for_fixups): Rename inner "i" to "j".
+ * sunos.c (sunos_add_dynamic_symbols): Localise "s" var.
+ (sunos_write_dynamic_symbol): Remove unused vars.
+ * syms.c (_bfd_stab_section_find_nearest_line): Remove duplicate
+ innermost "directory_name" and "file_name" vars.
+ * tekhex.c (first_phase): Rename local var "type" to "stype".
+ (tekhex_write_object_contents): Rename innermost "s" to "sym".
+ * vms-gsd.c (vms_secflag_by_name): Change "size" param to "hassize",
+ doing comparison at caller.
+ (vms_esecflag_by_name): Likewise.
+ * vms-tir.c (etir_sto): Rename innermost "psect" to "psect1".
+ * xcofflink.c (xcoff_link_input_bfd): Delete duplicate innermost "o".
+ (xcoff_write_global_symbol): Rename "p" param to "inf".
+
+ * cisco-core.c: Add missing prototypes.
+ (cisco_core_file_failing_command): Add ATTRIBUTE_UNUSED.
+ (cisco_core_file_failing_signal): Likewise.
+ (cisco_core_file_matches_executable_p): Likewise.
+ * hpux-core.c (hpux_core_core_file_failing_signal): Likewise.
+ * netbsd-core.c (netbsd_core_file_matches_executable_p): Likewise.
+ * osf-core.c (osf_core_core_file_matches_executable_p): Likewise.
+ * sco5-core.c (sco5_core_file_matches_executable_p): Likewise.
+
+ * coff-arm.c (coff_arm_link_hash_table): Use bfd_size_type for
+ thumb_glue_size and arm_glue_size.
+ * elf32-arm.h (elf32_arm_link_hash_table): Likewise here.
+
+ * coff64-rs6000.c: Group prototypes together.
+
+ * coffcode.h (coff_set_arch_mach): Add ATTRIBUTE_UNUSED.
+ (buy_and_read): Remove "seek" param. Change "size" to bfd_size_type.
+
+ * cpu-arc.c: Add missing prototypes.
+ * cpu-h8500.c: Likewise.
+ * cpu-i960.c: Likewise.
+ * cpu-pj.c: Likewise.
+ * cpu-sh.c: Likewise.
+ * cpu-w65.c: Likewise.
+ * cpu-z8k.c: Likewise.
+ * elf32-fr30.c: Likewise.
+ * elf32-h8300.c: Likewise.
+ * elf32-i370.c: Likewise.
+ * hpux-core.c: Likewise.
+ * versados.c: Likewise.
+
+ * cpu-h8300.c (bfd_default_scan_num_mach): Don't declare.
+ * cpu-h8500.c: Likewise.
+ * cpu-i960.c: Likewise.
+ * cpu-z8k.c: Likewise.
+
+ * cpu-ia64-opc.c: Correct comment.
+
+ * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove unused var.
+
+ * elf-bfd.h (elf_size_info): Change count param of write_out_phdrs
+ to unsigned.
+ (bfd_elf32_write_out_phdrs): Likewise.
+ (bfd_elf64_write_out_phdrs): Likewise.
+ (elf_linker_section_pointers): Change addend to bfd_vma.
+ (_bfd_elf_find_pointer_linker_section): Likewise.
+ (_bfd_elfcore_make_pseudosection): Change size param to size_t and
+ filepos to unsigned file_ptr.
+ (_bfd_elfcore_strndup): Change max param to size_t.
+ * elf.c (_bfd_elfcore_make_pseudosection): As above.
+ (_bfd_elfcore_strndup): Likewise.
+ (_bfd_elf_find_pointer_linker_section): Likewise.
+
+ * elf-hppa.h (elf_hppa_relocate_insn): Return an int, and change
+ insn and sym_value to ints.
+
+ * elf.c (elf_read): Make "offset" param a file_ptr, "size" a
+ bfd_size_type.
+ (elfcore_read_notes): Likewise.
+
+ * elf32-arm.h (elf32_arm_final_link_relocate): Change sym_flags
+ param from unsigned char to int.
+ (elf32_arm_relocate_section): If USE_REL, cast "rel" appropriately
+ for info_to_howto call.
+ (add_dynamic_entry): Define macro.
+ (elf32_arm_size_dynamic_sections): Use add_dynamic_entry.
+
+ * elf32-cris.c (add_dynamic_entry): Define macro.
+ (elf_cris_size_dynamic_sections): Use add_dynamic_entry.
+
+ * elf32-h8300.c (elf32_h8_final_write_processing): Make static.
+ (elf32_h8_object_p): Likewise.
+ (elf32_h8_merge_private_bfd_data): Likewise.
+ (elf32_h8_relax_section): Cast gap to int so signed comparisons work.
+
+ * elf32-hppa.c (add_dynamic_entry): Define macro.
+ (elf32_hppa_size_dynamic_sections): Use it.
+ * elf32-i370.c (add_dynamic_entry): Define macro.
+ (i370_elf_size_dynamic_sections): Use it.
+ (i370_noop): Make static.
+ * elf32-i386.c (add_dynamic_entry): Define macro.
+ (elf_i386_size_dynamic_sections): Use it.
+ * elf32-m68k.c (add_dynamic_entry): Define macro.
+ (elf_m68k_size_dynamic_sections): Use it.
+ * elf32-ppc.c (add_dynamic_entry): Define macro.
+ (ppc_elf_size_dynamic_sections): Use it.
+ * elf32-s390.c (add_dynamic_entry): Define macro.
+ (elf_s390_size_dynamic_sections): Use it.
+ * elf64-alpha.c (add_dynamic_entry): Define macro.
+ (elf64_alpha_size_dynamic_sections): Use it.
+ * elf64-hppa.c (add_dynamic_entry): Define macro.
+ (elf64_hppa_size_dynamic_sections): Use it.
+ * elf64-ppc.c (add_dynamic_entry): Define macro.
+ (ppc64_elf_size_dynamic_sections): Use it.
+ * elf64-s390.c (add_dynamic_entry): Define macro.
+ (elf_s390_size_dynamic_sections): Use it.
+ * elf64-sparc.c (add_dynamic_entry): Define macro.
+ (sparc64_elf_size_dynamic_sections): Use it.
+ * elf64-x86-64.c (add_dynamic_entry): Define macro.
+ (elf64_x86_64_size_dynamic_sections): Use it.
+ * elfxx-ia64.c (add_dynamic_entry): Define macro.
+ (elfNN_ia64_size_dynamic_sections): Use it.
+
+ * elf32-v850.c (SEXT24): Modify to avoid signed/unsigned warning.
+ (v850_elf_perform_relocation): Make "r_type" param unsigned.
+
+ * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Just return
+ false if the first malloc fails rather than going via error_return.
+
+ * elf64-sparc.c (sparc64_elf_plt_entry_offset): Use a bfd_vma for
+ "index" param.
+ (sparc64_elf_plt_ptr_offset): Likewise, and for "max" param too.
+
+ * elflink.h (elf_link_input_bfd): s/ingored/ignored/ in error message.
+
+ * elfxx-ia64.c (global_sym_index): Return a long.
+
+ * ieee.c (get_symbol): Use int rather than char param.
+ (ieee_slurp_sections): Move "section" var to inner blocks.
+ (copy_expression): Don't init "value" to zero or worry about
+ clearing to zero after using.
+ (ieee_write_debug_part): Rename "output_buffer" to "obuff" to avoid
+ shadowing.
+
+ * ihex.c (ihex_write_record): Make "count" var a size_t, "addr" an
+ unsigned int.
+
+ * libbfd-in.h (BFD_ALIGN): Add cast to avoid signed/unsigned warning.
+ (bfd_write_bigendian_4byte_int): Pass an unsigned int value param.
+
+ * mipsbsd.c (mips_fix_jmp_addr): Add "error_message" param.
+
+ * pc532-mach.c (MYNSX): Delete.
+ (ns32kaout_bfd_reloc_type_lookup): Define prototype without MYNSX.
+ (write_object_contents): Correct prototype.
+
+ * peicode.h (pe_ILF_build_a_bfd): Use an unsigned int param rather
+ than unsigned short.
+
+ * section.c (bfd_set_section_contents): Remove redundant
+ "offset < 0" test. Check that "count" doesn't overflow size_t.
+ (bfd_get_section_contents): Likewise.
+
+ * som.c (som_fixup_formats): Add missing braces.
+ (som_reloc_addend): Pass a bfd_vma for "addend".
+
+ * srec.c (srec_write_record): Pass "type" as an unsigned int.
+ (srec_write_symbols): Remove an unnecessary var.
+
+ * targets.c (_bfd_target_vector): Sort entries. Sort externs
+ to match.
+ * configure.in: Sort to match. Bump version number.
+ * configure: Regenerate.
+
+ * tekhex.c (move_section_contents): Assert offset == 0.
+
+ * versados.c (new_symbol_string): Constify arg.
+ (process_esd): Use bfd_und_section_ptr rather than &bfd_und_section.
+ (versados_get_symbol_info): Make static.
+ (versados_print_symbol): Likewise.
+ (versados_get_reloc_upper_bound): Likewise.
+ (versados_canonicalize_reloc): Likewise.
+
+2001-09-18 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * elflink.h (elf_link_input_bfd): Fix typo in error message.
+
+2001-09-17 H.J. Lu <hjl@gnu.org>
+
+ * dwarf1.c (parse_die): Take a new arg for the end of the
+ section. Return false if die is beyond the section.
+ (parse_functions_in_unit): Pass the end of the section to
+ parse_die ().
+ (_bfd_dwarf1_find_nearest_line): Likewise.
+
+2001-09-14 Michael Rauch <mrauch@netbsd.org>
+
+ * elf32-sparc.c (elf32_sparc_relocate_section): Treat R_SPARC_UA32
+ just like R_SPARC_32.
+
+2001-09-14 Kevin Lo <kevlo@openbsd.org>
+
+ * configure.bfd: Add arm-openbsd target.
+
+2001-09-14 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * config.bfd: Change machine triplets from mips*el*-* to mips*el-*.
+ Add support for mips64.
+
+2001-09-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * elf32-openrisc.c (ELF_MACHINE_ALT1): Define as EM_OPENRISC_OLD.
+
+2001-09-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * elf.c (prep_headers): Get the machine code from the elf
+ backend data.
+ * elf-m10200.c (ELF_MACHINE_CODE): Redefine to EM_MN10200.
+ (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10200.
+ * elf-m10300.c (ELF_MACHINE_CODE): Redefine to EM_MN10300.
+ (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10300.
+ * elf-arc.c (arc_elf_final_write_processing): Don't override
+ e_machine, it's now properly set in prep_headers.
+ * elf32-avr.c (elf32_avr_object_p): Accept both EM_AVR and
+ EM_AVR_OLD.
+ (ELF_MACHINE_ALT1): Define to EM_AVR_OLD.
+ * elf-d10v.c (ELF_MACHINE_CODE): Redefine to EM_D10V.
+ (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D10V.
+ * elf-d30v.c (ELF_MACHINE_CODE): Redefine to EM_D30V.
+ (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D30V.
+ * elf-fr30.c (ELF_MACHINE_CODE): Redefine to EM_FR30.
+ (ELF_MACHINE_ALT1): Define to EM_CYGNUS_FR30.
+ * elf-m32r.c (ELF_MACHINE_CODE): Redefine to EM_M32R.
+ (ELF_MACHINE_ALT1): Define to EM_CYGNUS_M32R.
+ * elf32-pj.c (ELF_MACHINE_ALT1): DEfine to EM_PJ_OLD.
+ * elf-v850.c (ELF_MACHINE_CODE): Redefine to EM_V850.
+ (ELF_MACHINE_ALT1): Define to EM_CYGNUS_V850.
+
+2001-09-11 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (elf64_alpha_section_flags): New.
+ (elf64_alpha_fake_sections): Map SEC_SMALL_DATA to SHF_ALPHA_GPREL.
+
+2001-09-11 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (elf64_alpha_relocate_section): Do not
+ apply HINT relocations against dynamic symbols.
+
+2001-09-11 H.J. Lu <hjl@gnu.org>
+
+ * linker.c (link_action): Change COMMON_ROW\defw from CREF to COM.
+
+2001-09-09 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c: Delete all unused ERIC_neverdef and rth_notdef code.
+
+ * elf64-alpha.c (elf64_alpha_relax_with_lituse): Nop out gpdisp
+ following a call to a near function.
+
+2001-09-08 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (elf64_alpha_relocate_section): Soft fail
+ relocation errors. Fail gp-relative relocations against
+ dynamic symbols.
+
+2001-09-08 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-i386.c (elf_i386_relocate_section): Check !DEF_REGULAR
+ as well as DEF_DYNAMIC in test for avoided copy relocs.
+ (allocate_plt_and_got_and_discard_relocs): Likewise.
+ * elf32-hppa.c (elf_i386_relocate_section): Likewise.
+ (allocate_plt_and_got_and_discard_relocs): Likewise.
+
+2001-09-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * elf32-mips.c (mips_elf_calculate_relocation): Fix overflow handling
+ of R_MIPS_PC16.
+
+2001-09-06 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * elf64-mips.c (mips_elf64_howto_table_rel): Fix relocation HOWTO
+ definitions.
+ (mips_elf64_howto_table_rel): Likewise.
+
+2001-09-05 Tom Rix <trix@redhat.com>
+
+ * xcofflink.c (bfd_xcoff_import_symbol): Handle import file XMC_XO
+ and syscall symbols.
+ (write_global_symbol) : Same.
+ (bfd_xcoff_export_symbol): Remove unused syscall param.
+ * libxcoff.h: Change prototype of bfd_xcoff_export symbol and
+ bfd_xcoff_import_symbol.
+ * bfd-in.h: Same.
+ * bfd-in2.h : Regenerate.
+
+2001-09-04 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (SKIP_HOWTO): New.
+ (elf64_alpha_howto_table): Use it to remove dead ECOFF relocs.
+ Fix sizes of 16-bit mem format relocs.
+ (elf64_alpha_reloc_map): Update to match.
+ (elf64_alpha_relax_with_lituse): Use GPREL16 as appropriate.
+ (elf64_alpha_relax_without_lituse): Likewise.
+ (elf64_alpha_check_relocs): Handle GPREL16.
+ (elf64_alpha_relocate_section): Likewise.
+ * reloc.c (BFD_RELOC_ALPHA_USER_*): Remove.
+ (BFD_RELOC_ALPHA_GPREL_HI16, BFD_RELOC_ALPHA_GPREL_LO16): New.
+ * bfd-in2.h, libbfd.h: Rebuild.
+
+2001-09-04 Jeff Law <law@redhat.com>
+
+ * elf32-h8300.c (elf32_h8_relax_section): New function.
+ (elf32_h8_relax_delete_bytes): Likewise.
+ (elf32_h8_symbol_address_p): Likewise.
+ (elf32_h8_get_relocated_section_contents): Likewise.
+ (bfd_elf32_bfd_relax_section): Define.
+ (bfd_elf32_bfd_get_relocated_section_contents): Likewise.
+
+ * elf32-h8300.c (special): New function.
+ (h8_elf_howto_table): Use it for SPECIAL_FUNCTION field in
+ all relocations.
+ (elf32_h8_final_link_relocate): Treat R_H8_DIR24A8 like 32bit
+ relocations. Fix problems with the true 24bit reloc R_H8_DIR24R8.
+ Fix minor problems with 8bit and 16bit PC relative relocations.
+
+2001-09-01 Andreas Jaeger <aj@suse.de>
+
+ * vms-tir.c: Add missing prototypes.
+ * vms-hdr.c: Likewise.
+ * vms-gsd.c: Likewise.
+ * vms-misc.c: Likewise.
+
+2001-08-31 H.J. Lu <hjl@gnu.org>
+
+ * elf32-mips.c (_bfd_mips_elf_check_relocs): Report filename
+ with bad relocation.
+
+2001-08-31 Eric Christopher <echristo@redhat.com>
+ Jason Eckhardt <jle@redhat.com>
+
+ * bfd/archures.c: Add mipsisa32 and mipsisa64. Remove mips32,
+ mips32_4k and mips64.
+ * bfd/aoutx.h: Remove bfd_mach_mips32, bfd_mach_mips32_4k,
+ bfd_mach_mips64. Add bfd_mach_mipsisa32, bfd_mach_mipsisa64.
+ * bfd/cpu-mips.c: Ditto.
+ * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing): Ditto.
+ * bfd/bfd-in2.h: Regenerate.
+
+2001-08-31 Jakub Jelinek <jakub@redhat.com>
+
+ * elf64-alpha.c (elf64_alpha_relocate_section): Duplicate memory
+ value into R_ALPHA_RELATIVE's addend.
+ (elf64_alpha_finish_dynamic_symbol): Likewise.
+
+2001-08-31 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * elf32-arm.h (elf32_arm_relocate_section): Do not rightshift
+ recomputed addend during relocatable link if not USE_REL.
+
+ * elflink.h (elf_gc_propagate_vtable_entries_used): Fix off-by-one
+ error.
+
+2001-08-30 H.J. Lu <hjl@gnu.org>
+
+ * elf32-mips.c (mips_elf_calculate_relocation): Revert the last
+ 2 changes.
+ (_bfd_mips_elf_adjust_dynamic_symbol): Allocate dynamic
+ relocations for weak definitions.
+
+2001-08-30 H.J. Lu <hjl@gnu.org>
+
+ * Makefile.am (BFD32_BACKENDS): Add elf32-h8300.lo.
+ (BFD32_BACKENDS_CFILES): Add elf32-h8300.c.
+ * Makefile.in: Rebuild.
+
+2001-08-30 H.J. Lu <hjl@gnu.org>
+
+ * elf32-mips.c (mips_elf_calculate_relocation): Don't create
+ dynamic relocation for undefined weak symbols when creating
+ executables. Check h->root.root.type, instead of h->root.type.
+
+2001-08-29 Joel Sherrill <joel@OARcorp.com>
+
+ * config.bfd (i[3456]86-*-rtems*, m68*-*-rtems*): Change
+ default from coff to elf.
+
+2001-08-29 Jeff Law <law@redhat.com>
+
+ * elf32-h8300.c (h8_elf_howto_table): Add new PC relative
+ relocations.
+ (h8_reloc_map): Similarly.
+ (elf32_h8_final_link_relocate): Remove incorrect overflow tests.
+ Add support for PC relative relocations.
+
+ * elf32-h8300.c: Put all prototypes together.
+ (elf32_h8_info_to_howto): Parameter elf_reloc is used.
+ (elf32_h8_final_link_relocate): New function for linker.
+ (elf32_h8_relocate_section): Similarly.
+ (elf_backend_relocate_section): Define.
+
+ * cpu-h8300.c (h8300_scan, compatible): Prototype.
+ (h8300_scan): Handle architecture:machine encodings typically
+ found in linker scripts.
+ * elf.c (prep_headers): Do not try to do H8 machine recognition
+ here.
+ * elf32-h8300.c: Add some missing prototypes.
+ (elf32_h8_mach, elf32_h8_final_write_processing): New functions.
+ (elf32_h8_object_p): Similarly.
+
+2001-08-29 Tom Rix <trix@redhat.com>
+
+ * xcofflink.c (xcoff_link_add_symbols): Fix XTY_LD symbol that
+ does not follow a XTY_SD.
+
+2001-08-29 Alan Modra <amodra@bigpond.net.au>
+
+ * targmatch.sed: Delete case statements.
+ * config.bfd <powerpc-*-aix* entry>: Select 64 bit xcoff for
+ aix4.3 and above.
+
+Wed Aug 29 02:27:36 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * Makefile.am (elf32-h8300.lo): New target.
+ * config.bfd (h8300*-*-elf): New case.
+ * configure.in (bfd_elf32_h8300_vec): New case.
+ * elf.c (prep_headers): Add case for bfd_arch_h8300.
+ * reloc.c (BFD_RELOC_H8_DIR16A8): New relocation.
+ (BFD_RELOC_H8_DIR16R8, BFD_RELOC_H8_DIR24A8): Likewise.
+ (BFD_RELOC_H8_DIR24R8, BFD_RELOC_H8_DIR32A16): Likewise.
+ * targets.c (bfd_target bfd_elf32_h8300_vec): New extern declaration.
+ * elf32-h8300.c: New file.
+ * Makefile.in, bfd-in2.h, libbfd.h, configure: Regenerated.
+
+2001-08-28 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * sparclynx.c: Add missing prototypes.
+ * coff-mcore.c: Add missing prototypes.
+ * elf32-pj.c: Add missing prototypes.
+ * nlm32-sparc.c: Add missing prototypes.
+ * oasys.c: Add missing prototypes.
+ * pdp11.c: Add missing prototypes.
+ * pe-mips.c: Add missing prototypes.
+ * riscix.c: Add missing prototypes.
+
+2001-08-27 Daniel Jacobowitz <drow@mvista.com>
+
+ * elf32-i386.c: Add missing prototypes.
+ * elf32-ppc.c: Likewise.
+ * elf32-sh-lin.c: Likewise.
+ * elfarm-nabi.c: Likewise.
+
+2001-08-27 Daniel Jacobowitz <drow@mvista.com>
+
+ * elf32-i386.c (elf_i386_grok_prstatus): New function.
+ (elf_i386_grok_psinfo): New function.
+ (elf_backend_grok_prstatus): Define.
+ (elf_backend_grok_psinfo): Likewise.
+ * elf32-ppc.c (ppc_elf_grok_prstatus): New function.
+ (ppc_elf_grok_psinfo): New function.
+ (elf_backend_grok_prstatus): Define.
+ (elf_backend_grok_psinfo): Likewise.
+ * elf32-sh-lin.c (elf32_shlin_grok_prstatus): New function.
+ (elf32_shlin_grok_psinfo): New function.
+ (elf_backend_grok_prstatus): Define.
+ (elf_backend_grok_psinfo): Likewise.
+ * elfarm-nabi.c (elf32_arm_nabi_grok_prstatus): New function.
+ (elf32_arm_nabi_grok_psinfo): New function.
+ (elf_backend_grok_prstatus): Define.
+ (elf_backend_grok_psinfo): Likewise.
+
+2001-08-27 H.J. Lu <hjl@gnu.org>
+
+ * elf32-mips.c (mips_elf_create_dynamic_relocation): Add more
+ sanity check.
+ (mips_elf_calculate_relocation): Create dynamic relocation for
+ symbols with weak definition or the ELF_LINK_HASH_DEF_REGULAR
+ bit is not set.
+
+2001-08-27 H.J. Lu <hjl@gnu.org>
+
+ * elf32-mips.c (_bfd_mips_elf_hide_symbol): Add prototype.
+ (_bfd_mips_elf_copy_indirect_symbol): Likewise.
+ (_bfd_elf32_mips_grok_prstatus): Likewise.
+ (_bfd_elf32_mips_grok_psinfo): Likewise.
+ (_bfd_mips_elf_hide_symbol): Make it static and cast to
+ `struct mips_elf_link_hash_entry *'.
+ (_bfd_mips_elf_copy_indirect_symbol): Make it static.
+
+2001-08-27 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * mipsbsd.c: Add missing prototypes.
+ * hp300hpux.c: Add missing prototypes.
+ * i386aout.c: Add missing prototypes.
+ * i386lynx.c: Add missing prototypes.
+ * i386mach3.c: Add missing prototypes.
+ * i386msdos.c: Add missing prototypes.
+ * i386os9k.c: Add missing prototypes.
+
+2001-08-27 Linus Nordberg <linus@swox.se>
+ Torbjorn Granlund <tege@swox.com>
+ Staffan Ulfberg <staffanu@swox.se>
+ Alan Modra <amodra@bigpond.net.au>
+
+ * config.bfd: Add powerpc64 target. Add powerpc64 vectors to
+ targ64_selvecs for 32 bit powerpc targets.
+ * Makefile.am (BFD64_BACKENDS): Add elf64-ppc.lo.
+ (BFD64_BACKENDS_CFILES): Add elf64-ppc.c.
+ Run "make dep-am".
+ * Makefile.in: Regenerate.
+ * configure.in: Add elf64_powerpc vecs.
+ * configure: Regenerate.
+ * cpu-powerpc.c: Default to bfd_mach_ppc_620 entry for 64 bit.
+ * elf.c (prep_headers): EM_PPC64 for 64 bit ppc elf target.
+ * targets.c: Add bfd_elf64_powerpc_vec and bfd_elf64_powerpcle_vec.
+ * elf64-ppc.c: New file.
+ * reloc.c: Add powerpc64 relocs.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2001-08-27 Andreas Schwab <schwab@suse.de>
+
+ * elf32-m68k.c (elf32_m68k_check_relocs): Set DF_TEXTREL if the
+ reloc is against read-only section.
+ (elf32_m68k_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+ (elf32_m68k_reloc_type_class): New function.
+ (elf_backend_reloc_type_class): Define.
+
+2001-08-27 Andreas Jaeger <aj@suse.de>
+
+ * elf64-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the
+ reloc is against read-only section.
+ (elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+ (elf_s390_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+
+ * elf32-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the
+ reloc is against read-only section.
+ (elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+ (elf_s390_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+
+ * elf32-ppc.c (ppc_elf_check_relocs): Set DF_TEXTREL if the reloc
+ is against read-only section.
+ (ppc_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+ (ppc_elf_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+
+2001-08-26 Andreas Jaeger <aj@suse.de>
+
+ * elf32-cris.c (cris_elf_check_relocs): Set DF_TEXTREL if the
+ reloc is against read-only section.
+ (elf_cris_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+ (elf_cris_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+
+ * elf32-sh.c (sh_elf_check_relocs): Set DF_TEXTREL if the reloc is
+ against read-only section.
+ (elf_backend_reloc_type_class): Define.
+ (sh_elf_reloc_type_class): New.
+ (sh_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+
+ * elf32-arm.h (elf32_arm_check_relocs): Set DF_TEXTREL if the
+ reloc is against read-only section.
+ (elf32_arm_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+ (elf32_arm_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+
+2001-08-25 Andreas Jaeger <aj@suse.de>
+
+ * oasys.c: Add missing prototypes.
+
+ * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Add unused
+ attribute for parameter.
+ * elf.c (_bfd_elf_reloc_type_class): Likewise.
+
+ * versados.c (get_4): Make static.
+ (get_10): Make static.
+ Add missing prototypes.
+ (process_esd): Fix call to versados_new_symbol.
+
+2001-08-25 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * coff-a29k.c: Add missing prototypes.
+ * coff-apollo.c: Add missing prototypes.
+ * coff-arm.c: Add missing prototypes.
+ * coff-i860.c: Add missing prototypes.
+ * coff-rs6000.c: Add missing prototypes.
+ * coff-tic80.c: Add missing prototypes.
+ * elf-m10200.c: Add missing prototypes.
+ * elf-m10300.c: Add missing prototypes.
+ * elf32-arm.h: Add missing prototypes.
+ * elf32-d10v.c: Add missing prototypes.
+ * elf32-m32r.c: Add missing prototypes.
+ * elf32-mcore.c: Add missing prototypes.
+ * elf32-openrisc.c: Add missing prototypes.
+ * elf32-sh.c: Add missing prototypes.
+ * elf32-sparc.c: Add missing prototypes.
+ * elf32-v850.c: Add missing prototypes.
+ * elfarm-nabi.c: Add missing prototypes.
+ * elfarm-oabi.c: Add missing prototypes.
+
+2001-08-25 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * elf32-mips.c (elf_mips_abi_name): Return the right ABI string for
+ E_MIPS_ABI_O64 and E_MIPS_ABI_EABI64
+
+2001-08-24 H.J. Lu <hjl@gnu.org>
+
+ * elf.c (_bfd_elf_merge_sections): Fail if not using an ELF
+ hash structure.
+
+2001-08-24 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * elf-bfd.h (elf_hash_table): Revert definition.
+ (is_elf_hash_table): New macro.
+ * elflink.h (elf_link_add_object_symbols): Test
+ is_elf_hash_table before accessing ELF only fields in hash
+ structure.
+ (elf_link_create_dynamic_sections): Fail if not using an ELF
+ hash structure.
+ (elf_add_dynamic_entry): Fail if not using an ELF hash
+ structure.
+ (elf_link_record_local_dynamic_symbol): Fail if not using an
+ ELF hash structure.
+ (size_dynamic_sections): Fail if not using an ELF hash
+ structure.
+ (elf_adjust_dynamic_symbol): Fail if not using an ELF
+ hash structure.
+ (elf_bfd_final_link): Fail if not using an ELF hash
+ structure.
+
+2001-08-24 H.J. Lu <hjl@gnu.org>
+
+ * elf-bfd.h (elf_hash_table): Return NULL if the linker hash
+ table is not an ELF linker hash table.
+
+ * elf.c (_bfd_elf_link_hash_table_init): Set the linker hash
+ table type to bfd_link_elf_hash_table.
+
+ * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_create): Revert
+ the last change.
+
+ * linker.c (_bfd_link_hash_table_init): Set the linker hash
+ table type to bfd_link_generic_hash_table.
+
+2001-08-24 Alexandre Oliva <aoliva@redhat.com>
+
+ * bfd.c (bfd_alt_mach_code): New function.
+ * bfd-in2.h: Rebuilt.
+
+2001-08-24 Alexandre Oliva <aoliva@redhat.com>
+
+ * elf-m10300.c (mn10300_elf_relocate_section): Test the right
+ `type' field in the hash entry when deciding whether to follow a
+ link.
+
+2001-08-24 Jakub Jelinek <jakub@redhat.com>
+
+ * elflink.h (elf_link_sort_cmp1): Sort RELATIVE relocs first, not
+ last.
+ (elf_link_sort_relocs): Adjust accordingly.
+
+ * elf64-alpha.c (struct alpha_elf_link_hash_entry): Add reltext flag.
+ (elf64_alpha_check_relocs): Set it if section this reloc is against
+ is read-only. Set DF_TEXTREL if a RELATIVE reloc is needed against
+ read-only section.
+ (elf64_alpha_calc_dynrel_sizes): Set DF_TEXTREL flag if relocation
+ is is against read-only section.
+ (elf64_alpha_size_dynamic_sections): Use DF_TEXTREL flag, don't
+ check section names.
+ (elf64_alpha_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+
+2001-08-24 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * linker.c (_bfd_generic_link_add_archive_symbols): Replace alloca()
+ by bfd_malloc().
+
+2001-08-23 Andreas Jaeger <aj@suse.de>
+
+ * elf64-x86-64.c (elf64_x86_64_check_relocs): Set DF_TEXTREL if
+ the reloc is against read-only section.
+ (elf64_x86_64_size_dynamic_sections): Use DF_TEXTREL flag instead
+ of looking up section names for DT_TEXTREL.
+ (elf64_x86_64_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+
+2001-08-23 H.J. Lu <hjl@gnu.org>
+
+ * syms.c (bfd_print_symbol_vandf): Add abfd to arg.
+ * bfd-in2.h (bfd_print_symbol_vandf): Regenerated.
+
+ * aoutx.h (NAME(aout,print_symbol)): Pass abfd to
+ bfd_print_symbol_vandf.
+ * coffgen.c (coff_print_symbol): Likewise.
+ * elf.c (bfd_elf_print_symbol): Likewise.
+ * ieee.c (ieee_print_symbol): Likewise.
+ * nlmcode.h (nlm_print_symbol): Likewise.
+ * oasys.c (oasys_print_symbol): Likewise.
+ * pdp11.c (NAME(aout,print_symbol)): Likewise.
+ * som.c (som_print_symbol): Likewise.
+ * srec.c (srec_print_symbol): Likewise.
+ * tekhex.c (tekhex_print_symbol): Likewise.
+ * versados.c (versados_print_symbol): Likewise.
+ * vms.c (vms_print_symbol): Likewise.
+
+ * elf.c (_bfd_elf_print_private_bfd_data): Replace fprintf_vma
+ with bfd_fprintf_vma.
+ (bfd_elf_print_symbol): Likewise.
+ * syms.c (bfd_print_symbol_vandf): Likewise.
+
+2001-08-23 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * aoutf1.h (sunos_write_object_contents): Silence compile time
+ warning.
+ * libaout.h (N_SET_DYNAMIC): Silence compile time warning.
+
+ * bout.c: Add missing function prototypes. Fix formatting.
+ * coff-z8k.c: Add missing function prototypes. Fix formatting.
+ * coff-w65.c: Add missing function prototypes. Fix formatting.
+ * coff-h8500.c: Add missing function prototypes. Fix formatting.
+ * coff-h8300.c: Add missing function prototypes. Fix formatting.
+ * coff-tic54x.c: Add missing function prototypes. Fix formatting.
+ * coff-tic30.c: Add missing function prototypes. Fix formatting.
+ * coff-m68k.c: Add missing function prototypes. Fix formatting.
+ * coff-rs6000.c: Add missing function prototypes. Fix formatting.
+ * coff-sh.c: Add missing function prototypes. Fix formatting.
+
+2001-08-23 Jakub Jelinek <jakub@redhat.com>
+
+ * elf-bfd.h (enum elf_reloc_type_class): New.
+ (struct elf_backend_data): Add elf_backend_reloc_type_class.
+ (_bfd_elf_reloc_type_class): New.
+ * elfxx-target.h (elf_backend_reloc_type_class): Define.
+ (elfNN_bed): Add elf_backend_reloc_type_class.
+ * elf.c (_bfd_elf_reloc_type_class): New.
+ * elf32-i386.c (elf_i386_check_relocs): Set DF_TEXTREL if the reloc
+ is against read-only section.
+ (elf_i386_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+ (elf_i386_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+ * elf32-sparc.c (elf32_sparc_check_relocs): Set DF_TEXTREL if the
+ reloc is against read-only section.
+ (elf32_sparc_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+ (elf32_sparc_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+ * elf64-sparc.c (sparc64_elf_check_relocs): Set DF_TEXTREL if the
+ reloc is against read-only section.
+ (sparc64_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
+ looking up section names for DT_TEXTREL.
+ (sparc64_elf_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+ * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add reltext field.
+ (elfNN_ia64_hash_table_create): Clear ia64_info.
+ (get_reloc_section): Set DF_TEXTREL if the reloc is against read-only
+ section.
+ (elfNN_ia64_size_dynamic_sections): Use ia64_info->reltext flag
+ instead of looking up section names for DT_TEXTREL.
+ (elfNN_ia64_reloc_type_class): New.
+ (elf_backend_reloc_type_class): Define.
+ * elflink.h (size_dynamic_sections): Add spare DT_NULL tags.
+ (struct elf_link_sort_rela): New.
+ (elf_link_sort_cmp1, elf_link_sort_cmp2, elf_link_sort_relocs): New.
+ (elf_bfd_final_link): Call elf_link_sort_relocs.
+ Convert one spare DT_NULL into DT_RELCOUNT resp. DT_RELACOUNT if
+ necessary.
+
+2001-08-23 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * configure.in (x86-bsdi): No corefile support.
+ * configure: Regenerate.
+
+2001-08-22 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add missing
+ comma.
+
+2001-08-21 Mark Elbrecht <snowball3@bigfoot.com>
+
+ * coff-go32.c: Make DWARF2 sections use an alignment of 0. Set
+ the alignment of dwarf2 linkonce sections to 0.
+ * coff-sto32.c: Likewise.
+
+2001-08-20 Andreas Jaeger <aj@suse.de>
+
+ * coff-sparc.c: Add missing prototypes.
+ * elf32-s390.c: Likewise.
+ * elf32-i960.c: Likewise.
+ * aout-target.h: Likewise.
+
+2001-08-20 H.J. Lu <hjl@gnu.org>
+
+ * elf-bfd.h (elf_obj_tdata): Add num_section_syms.
+ (elf_num_section_syms): New for num_section_syms.
+
+ * elf.c (elf_map_symbols): Set num_section_syms.
+ (_bfd_elf_symbol_from_bfd_symbol): Check num_section_syms for
+ the section symbol index.
+
+2001-08-20 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_create): Never
+ select the generic has table creator. All elf backends need elf
+ specific fields in the hash table.
+
+2001-08-20 Alan Modra <amodra@bigpond.net.au>
+
+ * archive.c (offsetof): Remove define.
+ * elf.c: Likewise.
+ * oasys.c: Likewise
+ * sysdep.h (offsetof): Define.
+
+2001-08-17 Alan Modra <amodra@bigpond.net.au>
+
+ * bfd.c (bfd_get_gp_size): Return an unsigned int.
+ (bfd_set_gp_size): Make param unsigned.
+ * bfd-in2.h: Regenerate.
+ * elf32-ppc.c (ppc_elf_add_symbol_hook): Use elf_gp_size rather
+ than calling bfd_get_gp_size.
+ * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Likewise.
+
+2001-08-17 Alan Modra <amodra@bigpond.net.au>
+
+ * linker.c (default_fill_link_order): Handle four byte fill value.
+
+2001-08-17 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-sparc.c (sparc64_elf_output_arch_syms): Add missing
+ prototype.
+ * nlm32-alpha.c (nlm_alpha_write_external): Fix warning.
+
+ * elf64-mips.c (UNUSED_RELOC): Define.
+ (mips_elf64_howto_table_rel): Use it.
+ (mips_elf64_howto_table_rela): Here too.
+ (mips_elf64_write_relocs): Fix signed/unsigned warning.
+
+ * coffcode.h (coff_write_object_contents): Add ATTRIBUTE_UNUSED to
+ silence warning.
+ * coffgen.c (coff_print_symbol): Fix warnings.
+ (coff_find_nearest_line): Likewise.
+ * cofflink.c (_bfd_coff_link_input_bfd): Likewise.
+ * coff-alpha.c (alpha_convert_external_reloc): Likewise.
+ * format.c (bfd_check_format_matches): Likewise.
+ (bfd_set_format): Likewise.
+ * coff-ia64.c: Add missing prototypes.
+ * elf64-alpha.c (struct alpha_elf_link_hash_entry): Make addend
+ signed to silence warnings.
+ (elf64_alpha_relocate_section): Likewise.
+ (elf64_alpha_find_reloc_at_ofs): Fix warnings.
+ (elf64_alpha_add_symbol_hook): Likewise.
+ (elf64_alpha_final_link): Likewise.
+ (elf64_alpha_relax_section): Remove redundant assign to info.gotent.
+ (elf64_alpha_merge_gots): Add ATTRIBUTE_UNUSED to unused args.
+ (elf64_alpha_size_got_sections): Likewise.
+ * elfxx-ia64.c: Add missing prototypes.
+ (elfNN_ia64_relocate_section): Fix warning.
+ (elfNN_ia64_unwind_entry_compare): Make params const.
+
+2001-08-17 Alan Modra <amodra@bigpond.net.au>
+
+ * config.bfd (targ64_selvecs): New.
+ <powerpc-*-aix* entry>: Use it here instead of ineffectual #ifdef.
+
+ * bfd-in.h (BFD_VERSION): Remove wrong comment.
+ (BFD_DEFAULT_TARGET_SIZE): New.
+ (BFD_ARCH_SIZE): Comment.
+ * configure.in (target_size): New. Set instead of target64 in
+ selvecs case statement. Set target64 from it.
+ (bfd_default_target_size): New. Set from taget_size. AC_SUBST.
+ * bfd-in2.h: Regenerate.
+ * configure: Regenerate.
+
+2001-08-17 Alan Modra <amodra@bigpond.net.au>
+
+ * bfd.c (enum bfd_error): Add bfd_error_wrong_object_format.
+ (bfd_errmsgs): Add corresponding message.
+ * archive.c (bfd_generic_archive_p): Don't release bfd_ardata when
+ finding an archive that contains different format object files.
+ Return bfd_error_wrong_object_format for this case.
+ * format.c: Formatting fixes. s/CONST/const/.
+ (bfd_check_format_matches): Accept archives that give
+ bfd_error_wrong_object_format if no full match is found. Tidy
+ code handling matching_vector. Don't return a pointer to freed
+ memory in `matching'. Handle ambiguous matches as for partial
+ archive matches.
+ * bfd-in2.h: Regenerate.
+
+2001-08-15 Alan Modra <amodra@bigpond.net.au>
+
+ * libieee.h (common_header_type): Add last_byte field.
+
+ * ieee.c: Add missing prototypes. Some format fixes.
+ (struct output_buffer_struct): Move for availability to prototypes.
+ (ieee_part_after): New function.
+ (ieee_slurp_debug): Use it here.
+ (ieee_seek): Pass in ieee_data_struct rather than bfd. Use
+ ieee_part_after to set last_byte to one past end of current part.
+ Update callers.
+ (ieee_pos): Pass in ieee_data_struct rather than bfd.
+ Update callers.
+ (parse_expression): Don't go beyond the end of the current part.
+ (ieee_slurp_external_symbols): Correct type passed to read_2bytes.
+ (ieee_get_symtab_upper_bound, ieee_get_symtab,
+ ieee_get_symbol_info, ieee_print_symbol, ieee_new_section_hook,
+ ieee_get_reloc_upper_bound, ieee_canonicalize_reloc, block,
+ ieee_set_section_contents, ieee_write_object_contents,
+ ieee_make_empty_symbol): Make static.
+ (ieee_archive_p): Correct comments regarding bfd_read.
+ (ieee_object_p): Similarly.
+ (ieee_mkobject): Move it. Clear output_ptr_start, output_ptr,
+ output_ptr_end, input_ptr_start, input_ptr, input_ptr_end,
+ input_bfd, output_bfd, output_buffer.
+ (do_as_repeat): Write out ieee_set_current_pc_enum value as for
+ do_with_relocs, ie. as a symbol for relocatable files.
+ (ieee_vec): Add comments showing functions referenced by macros.
+
+2001-08-14 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * aout-tic30.c: Add missing prototypes. Fix formatting.
+ * aout-ns32k.c: Add missing prototypes. Fix formatting.
+ * peXXigen.c: Add missining prototypes. Fix formatting.
+ * aout-adobe.c: Add missining prototypes. Fix formatting.
+
+2001-08-13 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * elf32-v850.c: Add missing function prototypes.
+ Fix some formatting.
+
+ * cpu-v850.c: Add missing function prototype.
+ Fix some formatting.
+