diff options
author | Alan Modra <amodra@gmail.com> | 2001-09-08 05:47:01 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2001-09-08 05:47:01 +0000 |
commit | 56882138c5b70c428c589a351d58b4e0852e4a1e (patch) | |
tree | f739ca7668fb8936335b461c6b4f52415f4de6c7 /bfd | |
parent | a529d7582c89e435c97eaafe826da5174022b723 (diff) | |
download | gdb-56882138c5b70c428c589a351d58b4e0852e4a1e.zip gdb-56882138c5b70c428c589a351d58b4e0852e4a1e.tar.gz gdb-56882138c5b70c428c589a351d58b4e0852e4a1e.tar.bz2 |
* 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-i386.c (elf_i386_relocate_section): Likewise.
(allocate_plt_and_got_and_discard_relocs): Likewise.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 13598 | ||||
-rw-r--r-- | bfd/elf32-hppa.c | 38 | ||||
-rw-r--r-- | bfd/elf32-i386.c | 10 |
3 files changed, 6833 insertions, 6813 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 5f9e0a0..fba495d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,6799 +1,6807 @@ +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.
-
-2001-08-11 Nick Clifton <nickc@cambridge.redhat.com>
-
- * elf-bfd.h (struct elf_backend_data): Add new fields
- 'elf_backend_sprintf_vma' and 'elf_backend_fprintf_vma'.
- (bfd_elf_sprintf_vma): Rename function prototype to
- '_bfd_elf_sprintf_vma'.
- (bfd_elf_fprintf_vma): Rename function prototype to
- '_bfd_elf_fprintf_vma'.
- * bfd.c (bfd_sprintf_vma): Do not invoke bfd_elf_sprintf_vma
- directly, instead indirect via the elf_backend_data structure.
- (bfd_fprintf_vma): Do not invoke bfd_elf_fprintf_vma directly,
- instead indirect via the elf_backend_data structure.
- * elf.c (bfd_elf_sprintf_vma): Rename to _bfd_elf_sprintf_vma.
- (bfd_elf_fprintf_vma): Rename to _bfd_elf_fprintf_vma.
- * elfxx-target.h (elf_backend_sprintf_vma): Initialise if not
- already defined.
- (elf_backend_fprintf_vma): Initialise if not already defined.
- (struct elf_backend_data): Initialise the
- elf_backend_sprintf_vma and elf_backend_fprintf_vma fields.
-
-2001-08-10 Andreas Jaeger <aj@suse.de>
-
- * elf64-sparc.c: Add missing prototypes.
- * elf32-cris.c: Likewise.
- * elf32-i370.c: Likewise.
- * elf64-hppa.c: Likewise.
- * elf64-s390.c: Likewise.
-
-2001-08-10 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_elf_object_p): Make static.
- Add prototypes where needed.
-
-2001-08-10 H.J. Lu <hjl@gnu.org>
-
- * bfd.c (bfd_sprintf_vma): Fix a typo in the last change.
- (bfd_fprintf_vma): Likewise.
-
-2001-08-10 H.J. Lu <hjl@gnu.org>
-
- * bfd.c (bfd_sprintf_vma): Don't return void.
- (bfd_fprintf_vma): Likewise.
-
-2001-08-10 Andreas Jaeger <aj@suse.de>
-
- * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
- to build warnings.
- * configure: Regenerate.
-
-2001-08-10 Alan Modra <amodra@bigpond.net.au>
-
- * elf.c (bfd_elf_sprintf_vma): Add ATTRIBUTE_UNUSED to quiet
- warning if not BFD64. Add braces so emacs auto format works.
- (bfd_elf_fprintf_vma): Likewise.
-
- * libxcoff.h (struct xcoff_backend_data_rec): Constify src param
- of _xcoff_swap_ld*.
- * coff-rs6000.c (xcoff_swap_ldhdr_in): Modify type of external
- param to agree with libxcoff.h.
- (xcoff_swap_ldhdr_out): Likewise.
- (xcoff_swap_ldsym_in): Likewise.
- (xcoff_swap_ldsym_out): Likewise.
- (xcoff_swap_ldrel_in): Likewise.
- (xcoff_swap_ldrel_out): Likewise.
- (xcoff_create_csect_from_smclas): Likewise.
- * coff64-rs6000.c: Add missing prototypes.
- (xcoff64_swap_ldhdr_in): Modify type of external param to agree
- with libxcoff.h.
- (xcoff64_swap_ldhdr_out): Likewise.
- (xcoff64_swap_ldsym_in): Likewise.
- (xcoff64_swap_ldsym_out): Likewise.
- (xcoff64_swap_ldrel_in): Likewise.
- (xcoff64_swap_ldrel_out): Likewise.
- (xcoff64_ppc_relocate_section): Make static.
- (xcoff64_slurp_armap): Likewise.
- (xcoff64_archive_p): Likewise.
- (xcoff64_openr_next_archived_file): Likewise.
- (xcoff64_sizeof_headers): Likewise.
- (xcoff64_is_lineno_count_overflow): Likewise.
- (xcoff64_is_reloc_count_overflow): Likewise.
- (xcoff64_loader_symbol_offset): Likewise.
- (xcoff64_loader_reloc_offset): Likewise.
- * elf64-gen.c: Add missing prototypes.
-
-2001-08-09 H.J. Lu <hjl@gnu.org>
-
- * elf.c (bfd_elf_sprintf_vma): Check ELFCLASS64 only in BFD64.
- (bfd_elf_fprintf_vma): Likewise.
-
-2001-08-09 H.J. Lu <hjl@gnu.org>
-
- * bfd-in.h (bfd_elf_sprintf_vma, bfd_elf_fprintf_vma): Moved
- to ...
- * elf-bfd.h: Here.
- * bfd-in2.h: Regenerated.
-
-2001-08-09 H.J. Lu <hjl@gnu.org>
-
- * bfd-in.h (bfd_sprintf_vma): New prototype.
- (bfd_fprintf_vma): Likewise.
- (bfd_elf_sprintf_vma): Likewise.
- (bfd_elf_fprintf_vma): Likewise.
- (bfd_printf_vma): New. Defined with bfd_fprintf_vma.
- * bfd-in2.h: Regenerated.
-
- * bfd.c (bfd_sprintf_vma): New. Defined.
- (bfd_fprintf_vma): Likewise.
-
- * elf.c (bfd_elf_sprintf_vma): New. Defined.
- (bfd_elf_fprintf_vma): Likewise.
-
-2001-08-09 Alan Modra <amodra@bigpond.net.au>
-
- * coff-rs6000.c: Add missing prototypes.
- (xcoff_ppc_relocate_section, xcoff_is_lineno_count_overflow,
- xcoff_is_reloc_count_overflow, xcoff_loader_symbol_offset,
- xcoff_loader_reloc_offset): Make static.
- * dwarf1.c: Add missing prototypes.
- * dwarf2.c: Add missing prototypes.
- (struct abbrev_info): Move definition.
- (struct attr_abbrev, ABBREV_HASH_SIZE, ATTR_ALLOC_CHUNK): Likewise.
- * elf.c: Add missing prototypes.
- * elf32-gen.c: Likewise.
- * elf32-i386.c: Likewise.
- * elf32-ppc.c: Likewise.
- (ppc_elf_sort_rela): Use PTR instead of "void *".
- * elflink.h: Add missing prototypes. Formatting fixes.
- * merge.c: Add missing prototypes.
- (last4_eq): Use PTR instead of "void *".
- (last_eq): Likewise.
- * syms.c: Add missing prototypes.
-
-2001-08-09 Nick Clifton <nickc@cambridge.redhat.com>
-
- * bfd.c: Fix formatting.
- * bfd-in2.h: Regenerate.
-
-2001-08-09 Nick Clifton <nickc@cambridge.redhat.com>
-
- * elf32-arc.c (R_ARC_B22_PCREL): Change 'partial_inplace' to
- true (this target uses REL relocations) and 'pcrel_offset' to
- false (the PC is implied, not stored in the offset).
-
-2001-08-08 Alan Modra <amodra@bigpond.net.au>
-
- 1999-10-19 Linus Nordberg <linus@swox.se>
- * elf-bfd.h (struct elf_backend_data): Add want_got_sym.
- * elfxx-target.h (elf_backend_want_got_sym): Define.
- (elfNN_bed): Add elf_backend_want_got_sym.
- * elflink.c (_bfd_elf_create_got_section): Define
- _GLOBAL_OFFSET_TABLE_ only if bed->want_got_sym.
-
-2001-08-08 Alexandre Oliva <aoliva@redhat.com>
-
- * dwarf2.c (struct dwarf2_debug): Add sec, sec_info_ptr and syms.
- (find_rela_addend): New function.
- (parse_comp_unit): Call it to find the abbrev offset addend.
- (_bfd_dwarf2_find_nearest_line): Initialize and maintain the new
- members of dwarf2_debug as debugging information is read.
-
-2001-08-07 Nick Clifton <nickc@cambridge.redhat.com>
-
- * coff-sh.c (sh_coff_reloc_type_lookup): Provide for sh-coff
- targets as well as sh-pe.
-
-2001-08-03 Ben Harris <bjh21@netbsd.org>
-
- * elf32-arm.h (elf32_arm_final_link_relocate): Include offset of
- reloc from start of section when computing value for R_ARM_REL32
- reloc.
-
-2001-08-03 Alan Modra <amodra@bigpond.net.au>
-
- From H.J. Lu <hjl@gnu.org>
- * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Don't
- keep relocs for undefined syms if there are no dynamic sections in
- executable.
- * elf32-hppa.c (allocate_plt_and_got_and_discard_relocs): Likewise.
-
-2001-08-02 Paul Sokolovsky <paul.sokolovsky@technologist.com>
-
- * cofflink.c (coff_link_check_ar_symbols): also search for
- __imp__symbol as well as _symbol.
- * linker.c (_bfd_generic_link_add_archive_symbols): also
- search for __imp__symbol as well as _symbol.
-
-2001-08-01 Adam Nemet <anemet@lnxw.com>
-
- * elf.c (elf_sort_sections): Return zero only as the last step.
-
-2001-08-01 Nick Clifton <nickc@cambridge.redhat.com>
-
- * config.bfd (arm-vxworks): Change name of define from VXWORKS to
- ARM_COFF_BUGFIX.
- (arm-epoc-pe): Define ARM_COFF_BUGFIX.
- coff-arm.c (coff_arm_relocate_section): Replace VXWORKS with
- ARM_COFF_BUGFIX.
-
-2001-07-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Changed return type
- to match corresponding bfd_coff_backend data member.
-
-2001-07-24 Alan Modra <amodra@bigpond.net.au>
-
- * Makefile.am: Update dependencies with "make dep-am".
- * Makefile.in: Regenerate
-
-2001-07-15 H.J. Lu <hjl@gnu.org>
-
- * Makefile.am (po/SRC-POTFILES.in): Use tmp.src instead of tmp.
- (po/BLD-POTFILES.in): Use tmp.bld instead of tmp.
- * Makefile.in: Regenerate.
-
-2001-07-11 H.J. Lu <hjl@gnu.org>
-
- * elf64-alpha.c (elf64_alpha_check_relocs): Set the ALLOC|LOAD
- flags when creating the reloc section if the ALLOC flag in the
- source section is set.
-
-2001-07-11 Steve Ellcey <sje@cup.hp.com>
-
- * reloc.c (bfd_reloc_code_type): Add IA64 relocs
- BFD_RELOC_IA64_LTOFF_FPTR32MSB and BFD_RELOC_IA64_LTOFF_FPTR32LSB
- * bfd-in2.h: Regenerate.
- * libbfd.h: Regenerate.
- * elfxx-ia64.c (ia64_howto_table): Define how to handle
- new relocations.
- (elfNN_ia64_reloc_type_lookup): Handle new relocations.
- (elfNN_ia64_check_relocs): Likewise.
- (elfNN_ia64_install_value): Likewise.
- (elfNN_ia64_relocate_section): Likewise.
-
-2001-07-11 Jakub Jelinek <jakub@redhat.com>
-
- * elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove support for
- R_SPARC_UA64.
- (elf32_sparc_check_relocs): Likewise.
- Only create .rela section for alloced sections in shared libraries.
- (elf32_sparc_relocate_section): Likewise.
- Remove redundant check.
- Optimize unaligned reloc usage.
- * elf64-sparc.c (sparc64_elf_relocate_section): Remove redundant
- check.
-
-2001-07-11 H.J. Lu <hjl@gnu.org>
-
- * elf64-alpha.c (elf64_alpha_check_relocs): Only use the same
- ALLOC|LOAD flags as the source section for debugging sections
- when creating the reloc section.
-
-2001-07-05 Jim Wilson <wilson@redhat.com>
-
- * linker.c (_bfd_generic_link_add_one_symbol, case BIG): Use
- the section of the bigger symbol.
-
- * syms.c (bfd_is_local_label): Return false if BSF_SECTION_SYM.
-
-2001-07-05 Nick Clifton <nickc@cambridge.redhat.com>
-
- * peicode.h (coff_swap_scnhdr_in): For sections containing
- uninitialised data, only set their size to s_paddr if this does
- not reset their size to zero. MS's latest compilers will set
- s_paddr to zero.
-
-2001-07-04 H.J. Lu <hjl@gnu.org>
-
- * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing):
- Handle bfd_mach_mips4400, bfd_mach_mips4600 and
- bfd_mach_mips5000.
-
-2001-07-03 Mark Elbrecht <snowball3@softhome.net>
-
- * bfd.c (bfd_get_sign_extend_vma): Support DJGPP COFF targets.
-
- * cofflink.c (_bfd_coff_link_input_bfd): Skip section symbols from
- sections being discarded.
-
-2001-06-30 Alan Modra <amodra@bigpond.net.au>
-
- * elfcore.h (elf_core_file_p): Call bfd_section_from_phdr directly
- instead of _bfd_elfcore_section_from_phdr.
- * elf-bfd.h (_bfd_elfcore_section_from_phdr): Remove.
- * elf.c (_bfd_elfcore_section_from_phdr): Remove.
- (_bfd_elfcore_make_pseudosection): Expedite tail-call.
- (elfcore_grok_prstatus): Likewise.
- (elfcore_grok_lwpstatus): Likewise.
- (bfd_get_elf_phdr_upper_bound): Likewise.
- (elfcore_make_note_pseudosection): Formatting.
- (_bfd_elfcore_strndup): Formatting.
- * elf32-mips.c (mips_elf_sym_is_global): Formatting.
- (_bfd_elf32_mips_grok_prstatus): Expedite tail-call.
-
-2001-06-29 Daniel Jacobowitz <drow@mvista.com>
-
- * elf-bfd.h: Add prototypes for _bfd_elfcore_make_pseudosection
- and _bfd_elfcore_strndup.
- (struct elf_backend_data): Add elf_backend_grok_prstatus
- and elf_backend_grok_psinfo.
- * elf.c (_bfd_elfcore_make_pseudosection): New function.
- (elfcore_grok_prstatus): Use it.
- (elfcore_make_note_pseudosection): Likewise.
- (elfcore_strndup): Rename to...
- (_bfd_elfcore_strndup): Here, and make global.
- (elfcore_grok_psinfo): Use _bfd_elfcore_strndup.
- (elfcore_grok_note): Call elf_backend_grok_prstatus
- and elf_backend_grok_psinfo if available.
- * elf32-mips.c (_bfd_elf32_mips_grok_prstatus): New function.
- (_bfd_elf32_mips_grok_psinfo): New function.
- (elf_backend_grok_prstatus): Define.
- (elf_backend_grok_psinfo): Define.
- * elfxx-target.h (elf_backend_grok_prstatus): Default to NULL.
- (elf_backend_grok_psinfo): Likewise.
- (elfNN_bed): Include elf_backend_grok_prstatus and
- elf_backend_grok_psinfo.
-
-2001-06-29 H.J. Lu <hjl@gnu.org>
-
- * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Check if
- hplink->sgot is NULL before filling GOT. Check if hplink->splt
- is NULL before filling PLT.
-
-2001-06-29 Alan Modra <amodra@bigpond.net.au>
-
- * elflink.h (elf_link_output_extsym): Revert 1999-04-10.
-
-2001-06-27 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-hppa.c (elf32_hppa_check_relocs): Don't make syms dynamic
- here..
- (elf32_hppa_adjust_dynamic_symbol): ..nor here..
- (allocate_plt_and_got_and_discard_relocs): .. instead do so here
- after gc has run.
-
- * elf32-hppa.c (RELATIVE_DYNAMIC_RELOCS): Delete.
- (IS_ABSOLUTE_RELOC): Define.
- (elf32_hppa_link_hash_entry): Always include reloc_entries field.
- (hppa_link_hash_newfunc): Always init it.
- (elf32_hppa_check_relocs): Mark symbols as ELF_LINK_NON_GOT_REF to
- create COPY relocs only when the reloc is in a read-only section.
- Instead, allocate space for a dynamic reloc to reference the
- library symbol directly. Keep track of space we allocate using
- relocs_entries.
- (hppa_discard_copies): Delete, and move code to..
- (allocate_plt_and_got): ..here. Rename to
- allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic
- relocs for non-shared link.
- (elf32_hppa_size_dynamic_sections): Update calls to above.
- (elf32_hppa_relocate_section): Write out the dynamic relocs used
- in lieu of COPY relocs.
-
- * elf32-i386.c (elf_i386_check_relocs): Don't make syms dynamic
- here..
- (elf_i386_adjust_dynamic_symbol): ..nor here..
- (allocate_plt_and_got_and_discard_relocs): .. instead do so here
- after gc has run.
- (elf_i386_size_dynamic_sections): Fix a comment.
- (elf_i386_relocate_section <R_386_32, R_386_PC32>): Rearrange code
- involved in writing reloc out.
-
-2001-06-25 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-i386.c (elf_i386_check_relocs <R_386_32, R_386_PC32>):
- Ensure syms are dynamic if we might be emitting a reloc.
- (allocate_plt_and_got_and_discard_relocs): Don't discard relocs
- for undefweak or undefined syms..
- (elf_i386_relocate_section <R_386_32, R_386_PC32>): .. and emit.
-
- * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Discard
- relocs without ELF_LINK_HASH_DEF_DYNAMIC set.
- (elf_i386_relocate_section <R_386_32, R_386_PC32>): Remove
- redundant bfd_link_hash_defined, bfd_link_hash_defweak test.
-
-2001-06-24 H.J. Lu <hjl@gnu.org>
-
- * cpu-i960.c (scan_960_mach): Don't modify const char *. Use
- strncasecmp/strcasecmp instead of strncmp/strcmp.
-
-2001-06-23 H.J. Lu <hjl@gnu.org>
-
- * elf32-i386.c (elf_i386_relocate_section <R_386_32, R_386_PC32>):
- Check ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined
- in the regular object file and treat the weak definition as
- the normal one.
-
-2001-06-23 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-i386.c (elf_i386_relocate_section <R_386_GOT32>): Tighten
- unresolved_reloc test to exclude cases where we use "relocation"
- before setting it to point into the .got. Reinstate fudge for
- unresolved relocs in debugging sections.
-
- * elf32-i386.c (elf_i386_relocate_section): Replace ugly
- complicated tests for unresolvable relocs with a simple direct
- scheme using "unresolved_reloc" var.
-
- * elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Rename to
- elf_i386_dyn_relocs. Update comment.
- (struct elf_i386_link_hash_entry): Rename pcrel_relocs_copied to
- dyn_relocs.
- (elf_i386_adjust_dynamic_symbol): Remove a BFD_ASSERT, change
- others to aborts.
- (allocate_plt_and_got_and_discard_relocs): Replace BFD_ASSERT with
- abort.
- (elf_i386_size_dynamic_sections): Likewise.
- (elf_i386_finish_dynamic_symbol): Likewise.
- (elf_i386_finish_dynamic_sections): Likewise.
- (elf_i386_relocate_section): Likewise. Tidy R_386_GOT32 and error
- handling code.
-
- Avoid creating COPY relocs if possible.
- * elf32-i386.c (elf_i386_check_relocs): Tweak condition under
- which .got created. Mark symbols used by R_386_32 and R_386_PC32
- relocs as ELF_LINK_NON_GOT_REF to create COPY relocs only when the
- reloc is in a read-only section. Instead, allocate space for a
- dynamic reloc to reference the library symbol directly. Keep
- track of space we allocate using pcrel_relocs_copied.
- (discard_copies): Delete, and move code to ..
- (allocate_plt_and_got): ..here. Rename to
- allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic
- relocs for non-shared link.
- (elf_i386_size_dynamic_sections): Update calls to above functions.
- (elf_i386_relocate_section): Write out the dynamic relocs. Add
- more ugly logic to avoid "unresolvable relocation" error. Use
- htab shortcut in place of elf_hash_table macro.
- (elf_i386_finish_dynamic_sections): Allow that dynamic .got may
- not always be created now.
-
-2001-06-20 Bo Thorsen <bo@suse.co.uk>
-
- * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix linking of
- shared libraries.
-
-2001-06-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
-
- * configure.host (mips64-*-linux): Reformat.
-
-2001-06-21 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Always
- allocate local .got space. Use shortcuts from hash table for .got
- and .plt rather than comparing section names.
- (elf32_hppa_check_relocs): Use local_plt_refcounts var rather than
- adjusting index into local_got_refcounts to document what we are
- really doing.
- (elf32_hppa_relocate_section): Similarly for local_plt_offsets.
- Tidy .got and .plt error checking.
-
-2001-06-20 Catherine Moore <clm@redhat.com>
-
- * elf-bfd.h (struct elf_backend_data):
- elf_backend_emit_relocs: New field: Function for emitting
- relocs.
- elf_backend_count_relocs: New field: Function for determining
- the number of relocs to be emitted.
- * elfxx-target.h: Provide default (NULL) values for
- elf_backend_emit_relocs and elf_backend_count_relocs.
- * elflink.h (elf_link_size_reloc_section): Make the hash table
- big enough to hold the relocs counted by either reloc_count or
- o->reloc_count.
- (elf_bfd_final_link) emit_relocs: New boolean, set if relocs
- should be emitted, either because of a command line option
- stored in the info structure or because the target provides a
- special reloc emitting function.
- If the target provides a reloc counting function use it,
- unless performing a relocatable link or emitting all relocs.
- Also set the SEC_RELOC flag on any output section which will
- contain relocs.
- (elf_link_input_bfd): emit_relocs: New boolean, set if relocs
- should be emitted, either because of a command line option
- stored in the info structure or because the target provides a
- special reloc emitting function.
- If the target provides a reloc emitting function, use it,
- unless performing a relocatable link or emitting all relocs.
-
-2001-06-20 H.J. Lu <hjl@gnu.org>
-
- * elf32-i386.c (elf_i386_size_dynamic_sections): Always
- allocate local .got space.
-
-2001-06-19 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix creation of
- dynamic symbols.
-
-2001-06-18 Hans-Peter Nilsson <hp@axis.com>
-
- * elflink.h (struct elf_assign_sym_version_info): Remove member
- export_dynamic. All users changed to use info member.
- NAME(bfd_elf,size_dynamic_sections)): Remove parameter
- export_dynamic, instead use member in parameter info.
- * bfd-in.h (bfd_elf32_size_dynamic_sections,
- bfd_elf64_size_dynamic_sections): Update prototype.
- * bfd-in2.h: Regenerate.
-
-2001-06-18 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_info_failed): Add a new field, verdefs.
- (NAME(bfd_elf,size_dynamic_sections): Pass verdefs to
- elf_export_symbol.
- (elf_export_symbol): Check eif->verdefs to decide if a symbol
- should be exported.
-
-2001-06-17 H.J. Lu <hjl@gnu.org>
-
- * elf32-mips.c (mips_elf_link_hash_entry): Add a new field,
- readonly_reloc, to record if a relocation in the .rel.dyn
- section is against a read-only section.
- (mips_elf_link_hash_newfunc): Initialize the readonly_reloc
- field to false.
- (_bfd_mips_elf_check_relocs): Record if there is a relocation
- in the .rel.dyn section against a read-only section by setting
- DF_TEXTREL or readonly_reloc.
- (_bfd_mips_elf_copy_indirect_symbol): Copy readonly_reloc if
- it is true.
- (_bfd_mips_elf_adjust_dynamic_symbol): Record DF_TEXTREL if
- there is a relocation in the .rel.dyn section against a
- read-only section.
- (_bfd_mips_elf_size_dynamic_sections): Set DT_TEXTREL if
- DF_TEXTREL is set.
-
-2001-06-12 Nick Clifton <nickc@cambridge.redhat.com>
-
- * coffcode.h (styp_flags_to_sec_flags): Change to a boolean
- function. Move flagword result into parameter list. Remove
- comment about setting bfd_error_handler to intercept failure
- results.
- * coffgen.c (make_a_section_from_file): Examine result of
- calling bfd_coff_styp_to_sec_flags and pass a failure back to
- caller.
- * ecoff.h (styp_flags_to_sec_flags): Change to a boolean
- function. Move flagword result into parameter list.
- * libcoff.h: Regenerate.
- * libecoff.h: Regenerate.
-
-2001-06-13 Nick Clifton <nickc@cambridge.redhat.com>
-
- * aoutx.h (adjust_z_magic): Only pad the tesxt section if the data
- section is going to follow it.
-
-2001-06-12 Catherine Moore <clm@redhat.com>
-
- * elflink.h (elf_gc_propagate_vtable_entries): Replace FILE_ALIGN
- with the file_align entry from elf_backend_data.
- (elf_gc_smash_unused_vtentry_relocs): Likewise.
- (elf_gc_record_vtentry): Likewise.
-
-2001-06-10 Alan Modra <amodra@bigpond.net.au>
-
- * elflink.h: Whitespace changes.
- (elf_link_read_relocs_from_section): Use "unsigned int" iterator
- rather than "unsigned char".
- (elf_link_output_relocs): Likewise.
- (elf_link_input_bfd): Likewise.
- (elf_reloc_link_order): LIkewise.
- * elf.c: s/CONST/const/. Whitespace changes.
- * elf32-mips.c: Formatting fix.
-
- * Makefile.am (SOURCE_HFILES): Include xcoff-target.h, remove xcoff.h.
- * Makefile.in: Regenerate.
- * po/Make-in: Remove trailing tab.
-
-2001-06-09 Philip Blundell <philb@gnu.org>
-
- * elf32-arm.h (elf32_arm_plt0_entry): Correct error in last
- change.
- (elf32_arm_plt_entry): Likewise.
-
-2001-06-08 H.J. Lu <hjl@gnu.org>
-
- * elf.c (swap_out_syms): Keep names for global section symbols.
-
-2001-06-07 H.J. Lu <hjl@gnu.org>
-
- * config.bfd: Put back ecoff for Linux/mips. Firmwares on some
- MIPS-based machines need it.
-
-2001-06-07 H.J. Lu <hjl@gnu.org>
-
- * elf32-mips.c (_bfd_mips_elf_object_p): Set the bad symtab
- for SGI only.
-
- * config.bfd: Remove ecoff from Linux/mips.
-
-2001-06-07 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Add an
- assertion.
- (elf64_x86_64_check_relocs): Fix VTENTRY relocation; set an
- alignment of 8 for .rela sections; handle further relocations.
-
-2001-06-06 Christian Groessler <cpg@aladdin.de>
-
- * coff-z8k.c: Fix formatting.
- Fix howtos: howto->size was always 1.
-
-2001-06-05 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
-
- * configure.host (mips64*-*-linux*): Define.
-
-2001-06-05 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-i386.c (elf_i386_discard_copies): Rename to
- discard_copies, and use elf_link_hash_entry arg rather than
- elf_i386_link_hash_entry.
- (elf_i386_link_hash_traverse): Delete.
- (elf_i386_size_dynamic_sections): Adjust call to discard_copies.
- Tidy sizing of dynamic sections.
- (elf_i386_check_relocs <R_386_32, R_386_PC32>): Reference count
- possible .plt entries.
- (elf_i386_gc_sweep_hook): Likewise.
- (elf_i386_adjust_dynamic_symbol): Discard .plt entries for
- everything with plt.refcount <= 0.
-
- * elf32-i386.c (elf_i386_check_relocs): Don't allocate .got and
- .relgot space here.
- (elf_i386_gc_sweep_hook): ..and no need to deallocate here..
- (elf_i386_adjust_dynamic_symbol): ..and don't allocate .plt and
- .rel.plt here..
- (allocate_plt_and_got): ..instead do it all here. New function.
- (elf_i386_size_dynamic_sections): Allocate local .got space and
- call allocate_plt_and_got. No need to zap .relgot if not dynamic.
- (bfd_elf32_bfd_final_link): Delete. (ie. use regular final link
- rather than gc variety).
- (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
- (elf_i386_relocate_section): Use it here and correct handling of
- R_386_GOT32. Provide section and offset for "unresolvable
- relocation" error message.
- (elf_i386_finish_dynamic_symbol): Correct handling of R_386_GOT32.
-
- * elf32-i386.c (struct elf_i386_link_hash_table): Add sgot,
- sgotplt, srelgot, splt, srelplt, sdynbss, srelbss fields.
- (elf_i386_link_hash_table_create): Init them.
- (create_got_section): New function.
- (elf_i386_create_dynamic_sections): New function.
- (elf_backend_create_dynamic_sections): Set to above.
- (elf_i386_check_relocs): Use shortcuts from hash table rather than
- calling bfd_get_section_by_name.
- (elf_i386_gc_sweep_hook): Likewise.
- (elf_i386_adjust_dynamic_symbol): Likewise.
- (elf_i386_size_dynamic_sections): Likewise.
- (elf_i386_relocate_section): Likewise.
- (elf_i386_finish_dynamic_sections): Likewise.
-
- * elf32-hppa.c (allocate_plt_and_got): Skip indirect and warning syms.
-
-2001-06-02 H.J. Lu <hjl@gnu.org>
-
- * elf32-hppa.c (elf32_hppa_object_p): Check ELFOSABI_LINUX
- and ELFOSABI_HPUX.
- * elf64-hppa.c (elf64_hppa_object_p): Likewise.
-
-2001-06-02 H.J. Lu <hjl@gnu.org>
-
- * aout-cris.c (MACHTYPE_OK): New. Defined.
-
-2001-06-02 Hans-Peter Nilsson <hp@axis.com>
-
- * section.c (_bfd_strip_section_from_output): Handle NULL
- output_section.
-
-2001-06-02 H.J. Lu <hjl@gnu.org>
-
- * config.bfd (powerpc-*-aix*, powerpc-*-beos*, rs6000-*-*): Add
- rs6000coff64_vec only if BFD64 is defined.
- (powerpc64-*-aix*): Enable only if BFD64 is defined.
-
-2001-06-02 H.J. Lu <hjl@gnu.org>
-
- * coff-ia64.c (ia64coff_object_p): Rewrite with
- external_PEI_DOS_hdr and external_PEI_IMAGE_hdr.
-
-2001-06-01 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_relocate_section): Add PC8
- relocation, small reformatting.
-
-2001-05-29 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_check_relocs): Handle R_X86_64_64.
- (elf64_x86_64_relocate_section): Likewise.
-
-2001-05-30 Alan Modra <amodra@one.net.au>
-
- * elf32-hppa.c (elf32_hppa_check_relocs): Don't NEED_PLT for
- millicode. Don't allocate .got and .rela.got space here..
- (elf32_hppa_gc_sweep_hook): ..and no need to deallocate here..
- (elf32_hppa_adjust_dynamic_symbol): ..and don't allocate .plt and
- .rela.plt here..
- (hppa_handle_PIC_calls): ..nor here..
- (allocate_plt_and_got): ..instead do it all here. New function.
- (elf32_hppa_size_dynamic_sections): Allocate local .got space and
- call allocate_plt_and_got. No need to zap .got if not dynamic.
- (elf32_hppa_final_link): Call regular bfd_final_link instead of
- gc_common_final_link.
- (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
- (elf32_hppa_relocate_section): Use it here.
- (elf32_hppa_finish_dynamic_symbol): Remove superfluous test of
- dynamic_sections_created.
- (hppa_type_of_stub): Don't LONG_BRANCH_VIA_PLT if millicode sym.
-
-2001-05-28 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_86_64_size_info): Remove, we can use the
- generic version since we want a hashsize of 4.
- (elf_backend_size_info): Likewise.
-
-2001-05-28 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
-
- * elflink.h (elf_link_size_reloc_section): Use bfd_zmalloc instead of
- a zeroing loop.
- (elf_link_output_relocs): Handle MIPS ELF64 relocations correctly.
- (elf_link_input_bfd): Likewise.
- (elf_reloc_link_order): Likewise.
- (elf_finish_pointer_linker_section): Typo. Handle MIPS ELF64
- relocations correctly.
-
-2001-05-28 Nicolas Pitre <nico@cam.org>
-
- * elf32-arm.h: fix PLT generation for big endian ARM
-
-2001-05-28 Alan Modra <amodra@one.net.au>
-
- * elf32-hppa.c (elf32_hppa_relocate_section): Set up .plt entries
- for symbols forced local that need plabels.
- (elf32_hppa_adjust_dynamic_symbol): Don't allocate space in
- .plt.rela for local syms if non-shared.
- (hppa_build_one_stub): Mask lsb of plt.offset.
- (elf32_hppa_finish_dynamic_symbol): Abort if lsb of plt.offset set.
- (clobber_millicode_symbols): Correct comment.
- (elf32_hppa_relocate_section): Likewise.
- (elf32_hppa_finish_dynamic_symbol): Likewise.
-
-2001-05-28 Jeff Sturm <jsturm@one-point.com>
-
- * reloc.c: Add BFD_RELOC_SPARC_UA16 and BFD_RELOC_SPARC_UA64.
- * bfd-in2.h: Regenerate.
- * libbfd.h: Regenerate.
- * elf32-sparc.c: Enable BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32
- and BFD_RELOC_SPARC_UA64 mapping
- * elf64-sparc.c: Likewise.
-
-2001-05-25 H.J. Lu <hjl@gnu.org>
-
- * Makefile.am (BFD32_BACKENDS): Remove coff-pmac.lo.
- (BFD32_BACKENDS_CFILES): Remove coff-pmac.c.
- (coff-rs6000.lo): Remove the old dependency.
- * Makefile.in: Rebuild.
-
- * configure.in (pmac_xcoff_vec): Replace coff-pmac.lo with
- coff-rs6000.lo.
-
-2001-05-25 H.J. Lu <hjl@gnu.org>
-
- * coff-rs6000.c (rs6000coff_vec): Use rs6000coff_core_p,
- rs6000coff_core_file_matches_executable_p,
- rs6000coff_core_file_failing_command and
- rs6000coff_core_file_failing_signal only if AIX_CORE is
- defined.
- (pmac_xcoff_vec): Likewise.
- * coff64-rs6000.c (rs6000coff64_vec): Likewise.
-
-2001-05-25 Timothy Wall <twall@redhat.com>
-
- * elfxx-ia64.c (allocate_dynrel_entries): Don't allocate an entry
- for __GLOB_DATA_PTR on AIX5. Clean up some relocation bugs.
-
-2001-05-25 H.J. Lu <hjl@gnu.org>
-
- * bfd-in2.h: Regenerated.
- * libcoff.h: Likewise.
-
-2001-05-25 Alan Modra <amodra@one.net.au>
-
- * elf32-hppa.c (elf32_hppa_relocate_section): Don't allow
- undefined millicode syms in shared libs.
- (hppa_build_one_stub): Turn BFD_ASSERTs into aborts.
- (elf32_hppa_check_relocs): Likewise.
- (elf32_hppa_adjust_dynamic_symbol): Likewise.
- (elf32_hppa_size_dynamic_sections): Likewise.
- (elf32_hppa_relocate_section): Likewise.
- (elf32_hppa_finish_dynamic_symbol): Likewise.
- (elf32_hppa_finish_dynamic_sections): Likewise.
-
-2001-05-24 Tom Rix <trix@redhat.com>
-
- * Makefile.am coff-pmac bfd now defined in coff-rs6000.c
- xcoff-target.h not used to define rs6000 or ppc bfd.
- * Makefile.in same
-
- * bfd-in.h : (struct lineno_cache_entry) promote element "offset"
- to 64 bit.
-
- * coff-rs6000.c : Many changes for 64 bit support. Move common
- 32/64 code to xcofflink.c. Explictly define the rs6000coff_vec
- and pmac_xcoff_vec
-
- * coff64-rs6000.c : Many changes for 64 bit support. 64 bit
- linker now supported. Explictly define the rs6000coff64_vec.
-
- * coffcode.h : (coff_set_arch_mach_hook) xcoff 64 bit support
- (coff_print_aux) same
- (coff_write_object_contents) same
- (coff_slurp_line_table) same
-
- * coffgen.c : (coff_fix_symbol_name) formatting
- (coff_mangle_symbols) xcoff 64 bit support
- (coff_write_symbol) same
- (coff_write_alien_symbol) same
- (coff_write_native_symbol) same
- (coff_write_symbols) same
- (coff_get_symbol_info) same
- (bfd_coff_get_syment) same
- (coff_print_symbol) same
-
- * config.bfd : add powerpc64-*-aix* target
-
- * libcoff-in.h : formatting
-
- * libcoff.h : move xcoff extern declarations to libxcoff.h
-
- * libxcoff.h : New file
-
- * xcofflink.c : Many changes for xcoff64 support. Move common
- structures to include/coff/xcoff.h. Move specific structure to
- backends coff-rs6000.c and coff64-rs6000.c. Use new backend
- functions, defined in libxcoff.h, to isolate 32/64 dependencies.
-
- (bfd_xcoff_size_dynamic_sections) : special __rtinit symbol for
- aix4.2+ -binitfini.
-
- (xcoff_build_ldsyms) : handle special __rtinit symbol.
-
-2001-05-23 Alexandre Oliva <aoliva@redhat.com>
-
- * elf64-sparc.c (sparc64_elf_slurp_reloc_table): Fix typo
- s/ENTIRES/ENTRIES/.
-
-2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
-
- * reloc.c (bfd_reloc_code_real): Add MIPS ELF64 relocations.
- * libbfd.h: Regenerate.
- * bfd-in2.h: Regenerate.
-
- * aoutx.h (aout_@var{size}_machine_type): Add MIPS r12k support.
- * archures.c (bfd_mach_mips12000): Define.
- * cpu-mips.c (arch_info_struct): Add MIPS r12k support.
- * elf32-mips.c (_bfd_mips_elf_final_write_processing): Add MIPS r12k
- support.
- (_bfd_mips_elf_size_dynamic_sections): Use official bfd typedef.
- * bfd-in2.h: Regenerate.
- * elfxx-target.h: Do not redefine bfd_elfNN_bfd_make_debug_symbol.
-
-2001-05-23 kaz Kojima <kkojima@rr.iij4u.or.jp>
-
- * elf32-sh.c (elf_sh_plt0_entry_be, elf_sh_plt0_entry,
- elf_sh_plt_entry_be, elf_sh_plt_entry, elf_sh_pic_plt_entry_be,
- elf_sh_pic_plt_entry): New PLT code, that does not use r2, since
- that is used by GCC.
-
-2001-05-23 Nick Clifton <nickc@cambridge.redhat.com>
-
- * elf-bfd.h (NUM_SHDR_ENTRIES): New macro: compute the number
- of entries in a structured section.
- * elf.c: Use new macro.
- * elf32-i386.c: Use new macro.
- * elf32-mips.c: Use new macro.
- * elf64-alpha.c: Use new macro.
- * elf64-sparc.c: Use new macro.
- * elfcode.h: Use new macro.
- * elflink.h: Use new macro.
-
-2001-05-23 Nick Clifton <nickc@cambridge.redhat.com>
-
- * bfdint.texi: Replace -oformat with --oformat.
-
-2001-05-21 Andreas Jaeger <aj@suse.de>
-
- * dwarf2.c (decode_line_info): Fix error message.
- (read_abbrevs): Fix test for offset as suggested by Alan Modra and
- adjust error message.
-
-2001-05-18 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_link_add_object_symbols): Revert the last
- change.
-
-2001-05-17 Alan Modra <amodra@one.net.au>
-
- * elf32-hppa.c (clobber_millicode_symbols): Temporarily set
- ELF_LINK_FORCED_LOCAL to suit 2001-04-30 change.
- (hppa_build_one_stub): Add an assert to check plt.offset.
-
-2001-05-17 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the
- version definition to basename of the output filename.
-
-2001-05-17 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_link_add_object_symbols): Set DT_NEEDED to
- basename of the bfd filename.
-
-2001-05-16 Alan Modra <amodra@one.net.au>
-
- * section.c (asection): Add linker_has_input field.
- (STD_SECTION): Adjust initialization to suit.
- * ecoff.c (bfd_debug_section): Likewise.
- * bfd-in2.h: Regenerate.
-
-2001-05-15 Alexandre Oliva <aoliva@redhat.com>
-
- * elf-m10300.c (mn10300_elf_relax_section): Don't relax
- negative 32-bit operands to 16 operands when the operand is
- going to be zero-extended by the modified opcode.
-
-2001-05-12 Peter Targett <peter.targett@arccores.com>
-
- * cpu-arc.c (arch_info_struct): Add entry 'base' representing old
- name for 'arc5' core versions.
- (bfd_arc_arch): Make bfd_mach_arc_6 default.
-
- * elf32-arc.c (arc_elf_object_p): Make E_ARC_MACH_ARC6 default
- architecture.
- (arc_elf_final_write_processing): Make bfd_mach_arc_6 default.
-
-2001-05-11 Jakub Jelinek <jakub@redhat.com>
-
- * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind
- sections as well.
- (elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO
- to .gnu.linkonce.t.FOO text section.
-
-2001-05-11 Jakub Jelinek <jakub@redhat.com>
-
- * merge.c (struct sec_merge_hash_entry): Add u.entsize and u.suffix
- fields, change sec into secinfo.
- (struct sec_merge_info): Add chain, remove last fields.
- (struct sec_merge_sec_info): Add next, sec, psecinfo fields.
- (sec_merge_hash_lookup): If lookup could not use a string only
- because it has bad alignment, mark the old string for deletion.
- (sec_merge_add): Add secinfo argument. Don't compute entry's
- position, instead record the section.
- (sec_merge_emit): Update for the sec into secinfo change in
- struct sec_merge_hash_entry.
- (_bfd_merge_section): Only record the section for merging, defer
- putting strings into the hash table.
- (cmplengthentry, last4_eq, last_eq, record_section, merge_strings,
- _bfd_merge_sections): New functions.
- (_bfd_merged_section_offset): Update for the sec_merge_hash_entry
- changes.
- * libbfd-in.h (_bfd_merge_sections): Add prototype.
- (_bfd_nolink_bfd_merge_sections): Define.
- * libbfd.h: Likewise.
- (bfd_generic_merge_sections): Add prototype.
- * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_merge_sections.
- (struct bfd_target): Likewise.
- * bfd.c (bfd_merge_sections): Define.
- * bfd-in2.h: Rebuilt.
- * elf.c (_bfd_elf_merge_sections): New function.
- * elf-bfd.h (_bfd_elf_merge_sections): Add prototype.
- * elfxx-target.h (bfd_elfNN_bfd_merge_sections): Define.
- * reloc.c (bfd_generic_merge_sections): New function.
- * vms.c (vms_bfd_merge_sections): New function.
- * aout-adobe.c (aout_32_bfd_merge_sections): Define.
- * aout-target.h (MY_bfd_merge_sections): Define.
- * aout-tic30.c (MY_bfd_merge_sections): Define.
- * binary.c (binary_bfd_merge_sections): Define.
- * bout.c (b_out_bfd_merge_sections): Define.
- * coff-alpha.c (_bfd_ecoff_bfd_merge_sections): Define.
- * coffcode.c (coff_bfd_merge_sections): Define.
- * coff-mips.c (_bfd_ecoff_bfd_merge_sections): Define.
- * i386msdos.c (msdos_bfd_merge_sections): Define.
- * i386os9k.c (os9k_bfd_merge_sections): Define.
- * ieee.c (ieee_bfd_merge_sections): Define.
- * ihex.c (ihex_bfd_merge_sections): Define.
- * nlm-target.h (nlm_bfd_merge_sections): Define.
- * oasys.c (oasys_bfd_merge_sections): Define.
- * ppcboot.c (ppcboot_bfd_merge_sections): Define.
- * som.c (som_bfd_merge_sections): Define.
- * srec.c (srec_bfd_merge_sections): Define.
- * tekhex.c (tekhex_bfd_merge_sections): Define.
- * versados.c (versados_bfd_merge_sections): Define.
- * xcoff-target.h (_bfd_xcoff_bfd_merge_sections): Define.
-
-2001-05-11 Nick Clifton <nickc@cambridge.redhat.com>
-
- * dwarf1.c (_bfd_dwarf1_find_nearest_line): Change type of 'addr'
- to be unsigned long, in order to match its use.
-
-2001-05-10 H.J. Lu <hjl@gnu.org>
-
- * linker.c (_bfd_generic_link_add_one_symbol): Check loop on
- indirect symbols.
-
-2001-05-09 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_link_add_object_symbols): Fix a typo. Allocate
- versymhdr->sh_size bytes for extversym instead of hdr->sh_size.
- Remove the unused veriable `dynver'.
-
-2001-05-08 Ian Lance Taylor <ian@zembu.com>
-
- * coff-i386.c (coff_i386_reloc): Don't dump core if output_bfd is
- NULL or is not COFF.
- (coff_i386_rtype_to_howto): Don't dump core if output section
- owner is not COFF.
-
-2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
-
- * ecoff.c (bfd_debug_section): Fix initialization.
- * elf.c (_bfd_elf_slurp_version_tables): Change maxidx to unsigned, it
- is always a positive integer. Cast away sign mismatch.
- * elf32-mips.c: Fix misleading comment and typo.
- (_bfd_mips_elf_section_from_bfd_section): Remove unused attribute, use
- correct data type.
- * elflink.c: Fix typo.
- (_bfd_elf_create_dynamic_sections): Remove superfluous initialization.
- * ecoffswap.h (ecoff_swap_fdr_in): Cast away sign mismatch.
-
-2001-05-04 Richard Henderson <rth@redhat.com>
-
- * elf64-alpha.c (SREL16, SREL32, SREL64): Set pcrel_offset true.
-
-2001-05-04 Nick Clifton <nickc@cambridge.redhat.com>
-
- * elf32-arm.h (elf32_arm_final_link_relocate): Set
- EF_ARM_HASENTRY if the start address is set.
-
-2001-05-03 Nick Clifton <nickc@cambridge.redhat.com>
-
- * targets.c (_bfd_target_vector_entries): Compute value based on
- the size of the _bfd_target_vector and not bfd_target_vector.
-
-2001-05-03 H.J. Lu <hjl@gnu.org>
-
- * elfcode.h: Include "libiberty.h".
-
- * elflink.h (elf_link_add_object_symbols): Set
- elf_dt_name (abfd) to basename of the bfd filename.
- (NAME(bfd_elf,size_dynamic_sections)): Set vn_file to basename
- of the bfd filename.
-
-2001-05-03 Andreas Jaeger <aj@suse.de>
-
- * elf64-gen.c (elf_generic_info_to_howto): Add unused attribute.
- (elf_generic_info_to_howto_rel): Likewise.
- * coff-alpha.c (reloc_nil): Likewise.
- (alpha_ecoff_bad_format_hook): Likewise.
- (alpha_adjust_reloc_out): Likewise.
- (alpha_bfd_reloc_type_lookup): Likewise.
- (alpha_convert_external_reloc): Likewise.
- * elf64-alpha.c (elf64_alpha_reloc_nil): Likewise.
- (elf64_alpha_reloc_bad): Likewise.
- (elf64_alpha_reloc_gpdisp): Likewise.
- (elf64_alpha_bfd_reloc_type_lookup): Likewise.
- (elf64_alpha_info_to_howto): Likewise.
- (elf64_alpha_add_symbol_hook): Likewise.
- (elf64_alpha_create_got_section): Likewise.
- (elf64_alpha_is_local_label_name): Likewise.
- (elf64_alpha_merge_ind_symbols): Likewise.
- * elf64-mips.c (mips_elf64_reloc_type_lookup): Likewise.
- (mips_elf64_get_reloc_upper_bound): Likewise.
- * nlm32-alpha.c (nlm_alpha_mangle_relocs): Likewise.
- (nlm_alpha_get_public_offset): Likewise.
-
-2001-05-02 Johan Rydberg <jrydberg@opencores.org>
-
- * elf32-openrisc.c (openrisc_elf_howto_table): Do not complain
- about overflow in R_OPENRISC_LO_16_IN_INSN and
- R_OPENRISC_HI_16_IN_INSN.Index: bfd/elf32-openrisc.c
-
-2001-04-30 H.J. Lu <hjl@gnu.org>
-
- * elf.c (_bfd_elf_link_hash_hide_symbol): Set dynindx to -1
- only for ELF_LINK_FORCED_LOCAL.
- * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
- * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise.
- * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
-
- * elflink.h (elf_fix_symbol_flags): Set ELF_LINK_FORCED_LOCAL
- if the symbol has hidden or internal visibility.
-
-2001-04-30 Alan Modra <amodra@one.net.au>
-
- * elf32-hppa.c (final_link_relocate): Branch to .+8 for
- calls to undefined weak symbols.
-
-2001-04-30 Andreas Jaeger <aj@suse.de>, Andreas Schwab <schwab@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_relocate_section): Correct test for
- R_X86_64_GOTPCREL, don't use assignments instead of comparisons.
-
-2001-04-27 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Only swap
- out handled entries.
- (elf64_x86_64_finish_dynamic_symbol): Set up GOT entries.
- (elf64_x86_64_relocate_section): Fix GOTPCREL calculation.
- (elf64_x86_64_relocate_section): Merge entries for GOTPCREL and
- GOT32.
-
-2001-04-27 Sean McNeil <sean@mcneil.com>
-
- * config.bfd: Add arm-vxworks target.
- * coff-arm (coff_arm_relocate_section): Add in symbol value to
- addend (fro VXworks targets).
-
-2001-04-26 H.J. Lu <hjl@gnu.org>
-
- * elf32-i386.c (elf_i386_check_relocs): Verify if r_symndx is
- valid.
-
-2001-04-25 Frank Ch. Eigler <fche@redhat.com>
-
- * bfd-in.h (bfd_cache_close): Declare newly exported function.
- * bfd-in2.h: Regenerated.
-
-2001-04-24 Jakub Jelinek <jakub@redhat.com>
-
- * merge.c (struct sec_merge_hash_entry): Add alignment field.
- (struct sec_merge_hash): Remove alignment_power.
- (sec_merge_hash_newfunc): Clear alignment.
- (sec_merge_hash_lookup): Pass alignment as argument.
- Use hashp->root.next, not hashp->next to walk the hash chain.
- If a string already in the hashtable does not have required
- alignment, create a new hashtable entry.
- (sec_merge_init): Remove alignment_power argument.
- (sec_merge_add): Add alignment argument.
- (sec_merge_emit): Alignment is now a per-entity thing, not per
- section.
- (_bfd_merge_section): Sanity check even non-SEC_STRINGS sections
- for proper alignment.
- Pass alignment information to sec_merge_add.
-
-2001-04-24 Christian Groessler <cpg@aladdin.de>
-
- * coff-z8k.c (extra_case): added handler for R_DISP7, R_CALLR
- and R_REL16 reloc types; accept odd values for R_REL16 type
-
-2001-04-24 Johan Rydberg <jrydberg@opencores.org>
-
- * cpu-openrisc.c: New file.
- * elf32-openrisc.c: Likewise.
-
- * Makefile.am (ALL_MACHINES): Add cpu-openrisc.lo.
- (ALL_MACHINES_CFILES): Add cpu-openrisc.c.
- (BFD32_BACKENDS): Add elf32-openrisc.lo.
- (BFD32_BACKENDS_CFILES): Add elf32-openrisc.c.
- (cpu-openrisc.lo, elf32-openrisc.lo): New rules.
- * Makefile.in: Regenerated.
- * config.bfd: (openrisc-*-elf): New target.
- * configure.in (bfd_elf32_openrisc_vec): New vector.
- * configure: Regenerated.
- * libbfd.h: Regenerated.
- * bfd-in2.h: Regenerated.
- * reloc.c: Add OpenRISC relocations.
- * targets.c (bfd_elf32_openrisc_vec): Declare.
- (bfd_target_vect): Add bfd_elf32_openrisc_vec.
- * archures.c (enum bfd_architecture): Add bfd_arch_openrisc.
- (bfd_openrisc_arch): Declare.
- (bfd_archures_list): Add bfd_openrisc_arch.
- * elf.c (prep_headers): Add bfd_arch_openrisc.
-
-2001-04-23 Bo Thorsen <bo@suse.de>
-
- * elf64-x86-64.c: Add c++ vtable hack.
- Small whitespace and comment changes.
-
-2001-04-19 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_plt0_entry): Fix instructions.
- (elf64_x86_64_plt_entry): Likewise.
- (elf64_x86_64_finish_dynamic_sections): Fix PLT0 generation.
- (elf64_x86_64_finish_dynamic_symbol): Fix PLT generation.
-
-2001-04-17 Hans-Peter Nilsson <hp@axis.com>
-
- * elf32-cris.c: Tweak comments related to dynamic linking.
- (cris_elf_relocate_section): When not creating shared object, fill
- in the .got table for any symbol not in the dynamic symbol table.
- (elf_cris_finish_dynamic_symbol): When not creating shared object,
- only emit a .got.rela reloc if the symbol is in the dynamic symbol
- table.
- (cris_elf_check_relocs): Use variable r_type in all places rather
- than the original expression. Add default case in switch for
- reloc types.
- (elf_cris_size_dynamic_sections): Iterate over
- elf_cris_discard_excess_program_dynamics when not creating shared
- library.
- (elf_cris_discard_excess_dso_dynamics): Renamed from
- elf_cris_discard_copies. Correct typo, s/Rel/Rela/.
- (elf_cris_discard_excess_program_dynamics): New.
-
-2001-04-14 Mark Elbrecht <snowball3@bigfoot.com>
-
- * coffcode.h (coff_write_object_contents): Use
- bfd_coff_swap_filehdr_out instead of coff_swap_filehdr_out.
-
-2001-04-14 H.J. Lu <hjl@gnu.org>
-
- * bfd-in2.h: Regenerate.
-
-2001-04-14 Jakub Jelinek <jakub@redhat.com>
-
- * section.c (STD_SECTION): Add entsize.
-
-2001-04-13 H.J. Lu <hjl@gnu.org>
-
- * section.c (SEC_MERGE): Define new flag for merging.
- (SEC_STRINGS): Likewise.
- (entsize): New field.
-
-2001-04-13 Roger Sayle <roger@metaphorics.com>
-
- * coff-i386.c (TARGET_SYM): SEC_READONLY is an applicable section
- flag on pe-i386 targets.
-
-2001-04-13 Jakub Jelinek <jakub@redhat.com>
-
- * libbfd-in.h (_bfd_merge_section): New.
- (_bfd_write_merged_section): New.
- (_bfd_merged_section_offset): New.
- * libbfd.h: Rebuilt.
- * linker.c (_bfd_generic_link_output_symbols): Handle
- discard_sec_merge.
- * aoutx.h (aout_link_write_symbols): Likewise.
- * pdp11.c (aout_link_write_symbols): Likewise.
- * elflink.h (elf_link_add_object_symbols): Call _bfd_merge_section.
- (elf_bfd_final_link): Adjust global symbols pointing into SEC_MERGE
- sections.
- (elf_link_sec_merge_syms): New.
- (elf_link_input_bfd): Call _bfd_merged_section_offset
- and _bfd_write_merged_section.
- Handle discard_sec_merge.
- * elf-bfd.h (struct elf_link_hash_table): Add merge_info
- field.
- (struct bfd_elf_section_data): Likewise.
- * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_MERGE and
- SEC_STRINGS section flags and entsize from their ELF counterparts.
- (_bfd_elf_link_hash_table_init): Initialize merge_info.
- (elf_fake_sections): Set SHF_MERGE, SHF_STRINGS and sh_entsize
- from their BFD counterparts.
- * merge.c: New file.
- * Makefile.am: Add strtab.lo.
- * Makefile.in: Rebuilt.
-
-2001-04-09 Hans-Peter Nilsson <hp@axis.com>
-
- * elflink.h (elf_fix_symbol_flags): For non-default visibilities,
- only hide symbols marked STV_INTERNAL or STV_HIDDEN.
-
-2001-04-05 Steven J. Hill <sjhill@cotw.com>
-
- * config.bfd (mips*el*-*-linux-gnu*): Use traditional little
- endian MIPS ELF target.
- * config.bfd (mips*-*-linux-gnu*): Use traditional big endian
- MIPS ELF target.
-
- * configure.in (bfd_elf64_tradbigmips_vec): New. Traditional
- 64bit big endian MIPS ELF target.
- (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little
- endian MIPS ELF target.
- * configure: Regenerated.
-
- * elf32-mips.c (IRIX_COMPAT): Handle traditional 64bit and
- little endian targets.
- (mips_elf_sym_is_global): Handle traditional targets.
-
- * elf64-mips.c (bfd_elf64_tradbigmips_vec): New. Traditional
- 64bit big endian MIPS ELF target.
- (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little
- endian MIPS ELF target.
-
- * targets.c: (_bfd_target_vector): Add bfd_elf64_tradbigmips_vec
- and bfd_elf64_tradlittlemips_vec.
-
-2001-04-05 David Mosberger <davidm@hpl.hp.com>
-
- * elf32-i386.c (elf_i386_fake_sections): Treat ".reloc" as an
- ordinary "progbits" section.
-
-2001-04-04 Alan Modra <alan@linuxcare.com.au>
-
- * elflink.h (elf_fix_symbol_flags): Call elf_backend_hide_symbol
- when -Bsymbolic causes a symbol to no longer need a .plt entry.
-
-2001-04-03 David Mosberger <davidm@hpl.hp.com>
-
- * efi-app-ia32.c (ALIGN_SECTIONS_IN_FILE): Deleted.
-
-2001-03-30 H.J. Lu <hjl@gnu.org>
-
- * efi-app-ia32.c (PEI_TARGET_SUBSYSTEM): Rename from ...
- (PEI_DEFAULT_TARGET_SUBSYSTEM): This.
-
-2001-03-26 H.J. Lu <hjl@gnu.org>
-
- * elf32-gen.c (elf32_generic_link_add_symbols): New. Check
- if there are any relocations for generic ELF.
- (bfd_elf32_bfd_link_add_symbols): Defined to
- elf32_generic_link_add_symbols.
- * elf64-gen.c (elf64_generic_link_add_symbols): New. Check
- if there are any relocations for generic ELF.
- (bfd_elf64_bfd_link_add_symbols): Defined to
- elf64_generic_link_add_symbols.
-
-2001-03-23 Nick Clifton <nickc@redhat.com>
-
- * Makefile.am (BUILD_CFILES): New variable: List of C source
- files created in build directory.
- (BUILD_HFILES): New variable: List of header files created in
- build directory.
- (POTFILES): Delete.
- (po/POTFILES.in): Replace rule with empty entry.
- (po/SRC-POTFILES.in): New rule: Create a list of source files
- in the source directory.
- (po/BLD-POTFILES.in): New rule: Create a list of source files
- in the build directory.
- (MOSTLYCLEAN): Do not delete source files created in build
- directory.
- * Makefile.in: Regenerate.
- * configure.in: Insert SRC-POTFILES.in and BLD-POTFILES.in
- into po/Makefile.
- * configure: Regenerate.
-
- * po/Make-in: Replace occurrences of POTFILES with SRC-POTFILES
- and BLD_POTFILES.
- Add .. to the search path when building bfd.pot.
- Delete POTFILES when performing distclean.
- Add comment describing why distclean is broken in maintainer mode.
- * po/POTFILES.in: Delete.
- * po/SRC-POTFILES.in: New file.
- * po/BLD-POTFILES.in: New file.
- * po/bfd.pot: Regenerate.
-
-2001-03-22 Hans-Peter Nilsson <hp@axis.com>
-
- * elf32-cris.c: Shlib and PIC support. PCREL tweaks.
- (elf_cris_discard_copies, elf_cris_adjust_gotplt_to_got,
- elf_cris_try_fold_plt_to_got, elf_cris_link_hash_newfunc,
- elf_cris_link_hash_table_create, elf_cris_adjust_dynamic_symbol,
- elf_cris_size_dynamic_sections, elf_cris_finish_dynamic_symbol,
- elf_cris_finish_dynamic_sections,elf_cris_hide_symbol): New
- functions.
- (cris_elf_howto_table) <R_CRIS_8_PCREL, R_CRIS_16_PCREL,
- R_CRIS_32_PCREL>: Correct comments. Set pcrel_offset to false.
- <R_CRIS_COPY, R_CRIS_GLOB_DAT, R_CRIS_JUMP_SLOT, R_CRIS_RELATIVE,
- R_CRIS_16_GOT, R_CRIS_32_GOT, R_CRIS_16_GOTPLT, R_CRIS_32_GOTPLT,
- R_CRIS_32_GOTREL, R_CRIS_32_PLT_GOTREL, R_CRIS_32_PLT_PCREL>:
- New HOWTO members for new relocs.
- (cris_reloc_map): Map new relocs.
- (ELF_DYNAMIC_INTERPRETER): Define.
- (PLT_ENTRY_SIZE): Define.
- (elf_cris_plt0_entry, elf_cris_plt_entry, elf_cris_pic_plt0_entry,
- elf_cris_pic_plt_entry): New, PLT templates.
- (struct elf_cris_pcrel_relocs_copied, struct
- elf_cris_link_hash_entry, struct elf_cris_link_hash_table): New.
- (elf_cris_link_hash_traverse, elf_cris_hash_table): Define.
- (cris_final_link_relocate): Check that 16-bit GOT relocs have
- positive values. Adjust PCREL relocs to be relative to location
- after relocation.
- (cris_elf_relocate_section): Handle relocations to dynamic
- objects. Handle new relocations. Call error handler when seeing
- non-PIC relocation for read-only sections while generating shared
- object.
- (cris_elf_check_relocs): Set reference counts for GOT and PLT
- entries.
- (bfd_elf32_bfd_link_hash_table_create,
- elf_backend_adjust_dynamic_symbol,
- elf_backend_size_dynamic_sections,
- elf_backend_finish_dynamic_symbol,
- elf_backend_finish_dynamic_sections,
- elf_backend_create_dynamic_sections, bfd_elf32_bfd_final_link,
- elf_backend_hide_symbol, elf_backend_want_got_plt,
- elf_backend_plt_readonly, elf_backend_want_plt_sym,
- elf_backend_got_header_size, elf_backend_plt_header_size):
- Define.
-
- * reloc.c: (BFD_RELOC_CRIS_COPY, BFD_RELOC_CRIS_GLOB_DAT,
- BFD_RELOC_CRIS_JUMP_SLOT, BFD_RELOC_CRIS_RELATIVE,
- BFD_RELOC_CRIS_32_GOT, BFD_RELOC_CRIS_16_GOT,
- BFD_RELOC_CRIS_32_GOTPLT, BFD_RELOC_CRIS_16_GOTPLT,
- BFD_RELOC_CRIS_32_GOTREL, BFD_RELOC_CRIS_32_PLT_GOTREL,
- BFD_RELOC_CRIS_32_PLT_PCREL): New relocs.
- * bfd-in2.h, libbfd.h: Regenerate.
-
-2001-03-21 Diego Novillo <dnovillo@redhat.com>
-
- (_bfd_mips_elf_relocate_section): Give a better error message when
- a relocation is not recognized.
-
-2001-03-21 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c (elf32_hppa_set_gp): Check sec->output_section
- non-NULL before attempting to dereference.
-
-2001-03-20 H.J. Lu <hjl@gnu.org>
-
- * configure.in: Remove the redundent AC_ARG_PROGRAM.
- * configure: Rebuild.
-
-2001-03-20 Andreas Schwab <schwab@suse.de>
-
- * elf32-m68k.c (elf_m68k_relocate_section): Don't need the
- relocation value when resolving a reference from a debugging
- section.
-
-2001-03-16 Scott Thomason <SThomaso@hii.com>
-
- * coff64-rs6000.c (xcoff64_swap_sym_out): Fix syntax errors.
- (xcoff64_swap_sym_out): Fix syntax errors.
-
-2001-03-16 Richard Sandiford <rsandifo@redhat.com>
-
- * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix warning.
-
-2001-03-15 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c (elf32_hppa_link_hash_entry): Add maybe_pic_call.
- (hppa_link_hash_newfunc): Init it.
- (hppa_type_of_stub): Only use non-PIC to PIC call stub if caller
- section appears to be non-PIC.
- (final_link_relocate): Likewise.
- (elf32_hppa_adjust_dynamic_symbol): Set maybe_pic_call for any
- possible candidate function, and set pic_call for those that will
- only have a .plt entry for the PIC call stub.
- (hppa_handle_PIC_calls): Set maybe_pic_call.
-
-2001-03-12 DJ Delorie <dj@redhat.com>
-
- * elf32-sh.c (sh_elf_relocate_section): Only relocation
- R_SH_DIR8WP* relocs if they're against external symbols, else
- they're just for relaxing. Validate the reloc values.
-
-2001-03-12 Stefan Geuken <mail@stefan-geuken.de>
-
- * binary.c (bfd_external_binary_architecture): Declare.
- (binary_object_p): If bfd_external_binary_architecture is defined,
- set the architecture to this string.
-
-2001-03-11 Philip Blundell <philb@gnu.org>
-
- * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make PLT
- entries that could serve as a definition for a weak symbol.
-
-2001-03-08 Nick Clifton <nickc@redhat.com>
-
- * Most files: Update copyright notices using Perl script created
- by Kevin Buettner <kevinb@redhat.com>.
-
-2001-03-07 Nick Clifton <nickc@redhat.com>
-
- * elf32-arm.h (elf32_arm_final_link_relocate): Conditionalise
- prior patch on ! defined OLD_ARM_ABI.
-
-2001-03-07 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix handling of
- some relocation values.
-
-2001-03-06 Nick Clifton <nickc@redhat.com>
-
- * elf32-arm.h (elf32_arm_final_link_relocate): Clear bit zero
- of offset in BLX(1) instruction.
- * coff-arm.c (coff_arm_relocate_section): Clear bit zero of
- offset in BLX(1) instruction.
- Fix formatting.
-
-2001-03-06 Nick Clifton <nickc@redhat.com>
-
- * coff-arm.c (coff_arm_reloc_type_lookup): Add
- BFD_RELOC_THUMB_PCREL_BLX.
-
-2001-03-06 Igor Shevlyakov <igor@windriver.com>
-
- * archures.c (bfd_default_scan): Add Coldfire CPUs.
- * bfd-in2.h: Regenerate.
- * cpu-m68k.c: Add Coldfire CPUs for arch table.
- * ieee.c (ieee_write_processor): Set proper id for
- Coldfire CPUs.
-
-2001-03-01 D.J. Barrow <djbarrow@de.ibm.com,barrow_dj@yahoo.com>
-
- * configure.in: Add s390 target.
- * configure: Regenerate.
-
-2001-02-28 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_relocate_section): Add relocation
- to addend.
-
-2001-02-28 Philip Blundell <pb@futuretv.com>
-
- * elf32-arm.h: Update mentions of renamed EF_xx constants.
- (elf32_arm_print_private_bfd_data): Handle ARM EABI version 2.
-
-2001-02-27 H.J. Lu <hjl@gnu.org>
-
- * aoutx.h (NAME(aout,bfd_free_cached_info)): Return true if
- abfd->tdata.aout_data == NULL.
-
-2001-02-27 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c: Correct field selector in stub comments.
- (clobber_millicode_symbols): Formatting fix.
-
- * configure.in: Bump version to 2.11.90.
- * configure: Regenerate.
- * Makefile.am (CFILES): Rename to SOURCE_CFILES.
- (CFILES): $SOURCE_CFILES + generated C files.
- (POTFILES): Include $HFILES not $SOURCE_HFILES.
- Run "make dep-am"
- * Makefile.in: Regenerate.
- * doc/Makefile.in: This too.
-
-2001-02-26 Timothy Wall <twall@cygnus.com>
-
- * elfxx-ia64.c (elfNN_ia64_aix_add_symbol_hook): Remove obsolete
- comments.
-
-2001-02-26 Nick Clifton <nickc@redhat.com>
-
- * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Tidy
- up, replacing multiple if statements with a switch.
- (handle_COMDAT): New function.
-
-2001-02-26 H.J. Lu <hjl@gnu.org>
-
- * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Issue
- a warning for section flags we do not handle instead of
- aborting.
-
-2001-02-26 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (x86_64_elf_howto_table): Fix order of entries.
-
-2001-02-22 Timothy Wall <twall@cygnus.com>
-
- * config.bfd (targ_cpu): Add vectors for ia64-*-aix* (aka Monterey).
- * configure.in: Add objects for elf64_ia64_aix vectors.
- * configure: Regenerated.
- * configure.host: Recognize ia64-*-aix*.
- * elfxx-ia64.c: Add hooks for ELF64 on AIX5. Define new vectors
- for AIX. AIX5 requires most relocations to be dynamic (*all*
- binaries are somewhat similar to shared libraries).
- * targets.c: Add elf64_ia64_aix vectors.
-
-2001-02-21 David Mosberger <davidm@hpl.hp.com>
-
- * cpu-ia64-opc.c (elf64_ia64_operands}: Fix typo: error string for
- C8 said "1" instead of "8". Clarify error string for IMM22:
- "signed integer" instead of just "integer".
-
-2001-02-20 Andreas Jaeger <aj@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Don't make
- PLT entries that could serve as a definition for a weak symbol.
-
-2001-02-19 Jakub Jelinek <jakub@redhat.com>
-
- * elf32-sparc.c (elf32_sparc_finish_dynamic_symbol): Don't make PLT
- entries that could serve as a definition for a weak symbol.
- * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Likewise.
-
-2001-02-18 David O'Brien <obrien@FreeBSD>
-
- * configure.in: Recognize FreeBSD/arm, FreeBSD/PowerPC, and treat
- FreeBSD/i386-CURRENT differently until I can figure out the needed
- corefile changes.
- * configure: Regenerate.
- * config.bfd: Recognize FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/arm,
- FreeBSD/PowerPC, and FreeBSD/sparc64.
-
-2001-02-18 lars brinkhoff <lars@nocrew.org>
-
- * Makefile.am: Add PDP-11 a.out target.
- * config.bfd: Likewise.
- * configure.in: Likewise.
- * targets.c: Likewise.
- * archures.c: Likewise.
- * bfd-in2.h: Likewise. Add PDP-11 relocations.
- * libbfd.h: Add PDP-11 relocations.
- * reloc.c: Likewise.
- * cpu-pdp11.c: New file.
- * pdp11.c: New file.
-
- * libaout.h (GET_WORD) [ARCH_SIZE==16]: Define.
- (GET_SWORD) [ARCH_SIZE==16]: Likewise.
- (GET_SWORD) [ARCH_SIZE==16]: Likewise.
- (PUT_WORD) [ARCH_SIZE==16]: Likewise.
- (GET_MAGIC): New macro.
- (PUT_MAGIC): Likewise.
- * aout-target.h (MY(object_p)): Use GET_MAGIC to read magic word.
-
-2001-02-18 Jim Kingdon <jkingdon@engr.sgi.com>
-
- * irix-core.c (irix_core_core_file_p): Set the architecture (GDB
- multiarch needs it).
-
-2001-02-18 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_link_input_bfd): Ignore invalid section symbol
- index.
-
-2001-02-18 Kazu Hirata <kazu@hxi.com>
-
- * vms-misc.c: Fix formatting.
-
-2001-02-16 Kazu Hirata <kazu@hxi.com>
-
- * vms.c: Fix formatting.
-
-2001-02-14 H.J. Lu <hjl@gnu.org>
-
- * elf.c (elf_find_function): New function.
- (_bfd_elf_find_nearest_line): Call elf_find_function () to find
- the file name and function name.
-
-2001-02-14 Nick Clifton <nickc@redhat.com>
-
- * ecoff.c (bfd_debug_section): Update to initialise new fields in
- asection structure.
-
- * Makefile.am (BFD32_BACKENDS_CFILES): Remove peigen.c
- (BFD64_BACKENDS): Add pepigen.c
- Add rules to create peigen.c and pepigen.c from peXXigen.c.
-
- * Makefile.in: Regenerate.
- * configure: Regenerate.
- * po/POTFILES.in: Regenerate.
- * po/bfd.pot: Regenerate.
-
-2001-02-14 H.J. Lu <hjl@gnu.org>
-
- * libcoff-in.h (pe_tdata): Add members target_subsystem and
- force_minimum_alignment.
-
-2001-02-14 Bo Thorsen <bo@suse.de>
-
- * elf64-x86-64.c: Small formatting fixes and rearrangements of code.
- (elf64_86_64_size_info): Struct added to fix a problem
- with the hashtable string entries.
- (elf64_x86_64_adjust_dynamic_symbol): Add generation of .got.plt.
- (elf64_x86_64_size_dynamic_sections): A FIXME removed.
- (elf64_x86_64_size_dynamic_sections): Fix a dynamic entry and
- remove the FIXME for this.
- (elf64_x86_64_adjust_dynamic_symbol): Fix check for unneeded .plt
- section. Also removed the FIXME for it.
- (x86_64_elf_howto_table): Use bfd_elf_generic_reloc.
- (ELF_DYNAMIC_INTERPRETER): Fix the name of the dynamic linker.
- (elf64_x86_64_finish_dynamic_sections): Enable .got.plt writing.
-
-2001-02-13 Richard Henderson <rth@redhat.com>
-
- * elfxx-ia64.c (elfNN_ia64_final_link): Set __gp if required
- and not user provided.
-
-2001-02-13 Kazu Hirata <kazu@hxi.com>
-
- * vms.c (vms_print_symbol): Remove unreachable code.
-
- * rs6000-core.c: Fix formatting.
-
-2001-02-13 David Mosberger <davidm@hpl.hp.com>
-
- * peicode.h (coff_swap_filehdr_out) [COFF_IMAGE_WITH_PE]: Define
- as _bfd_XXi_only_swap_filehdr_out.
- (pe_mkobject) [PEI_FORCE_MINIMUM_ALIGNMENT]: Set
- pe->force_minimum_alignment to TRUE.
- (pe_mkobject) [PEI_TARGET_SUBSYSTEM]: Set pe->target_subsystem to
- PEI_TARGET_SUBSYSTEM.
- (pe_print_private_bfd_data): Call
- _bfd_XX_print_private_bfd_data_common() instead of
- _bfd_pe_print_private_bfd_data_common().
- (pe_bfd_copy_private_bfd_data): Call
- _bfd_XX_bfd_copy_private_bfd_data_common() instead of
- _bfd_pe_bfd_copy_private_bfd_data_common().
- (coff_bfd_copy_private_section_data): Define as
- _bfd_XX_bfd_copy_private_section_data instead of
- _bfd_pe_bfd_copy_private_section_data.
- (coff_get_symbol_info): Define as _bfd_XX_get_symbol_info instead
- of a _bfd_pe_get_symbol_info.
-
- * peigen.c: Delete.
-
- * peXXigen.c: Renamed from peigen.c.
- (COFF_WITH_XX): Define this macro (will get expanded into
- COFF_WITH_pep or COFF_WITH_pe, depending on whether this is being
- compiled as peigen.c or pepigen.c.
- [COFF_WITH_pep]: Include "coff/ia64.h" instead of "coff/i386.h" to
- define the canonical PEP structures and definitions.
- (_bfd_XXi_swap_aouthdr_out): If pe->force_minimum_alignment is in
- effect, enforce minimum file and section alignments. If
- extra->Subsystem is IMAGE_SUBSYSTEM_UNKNOWN, set it to
- pe->target_subsystem (this defaults to IMAGE_SUBSYSTEM_UNKNOWN,
- so, by default, this is a no-op).
-
- * libpei.h: Rename COFF_WITH_PEP to COFF_WITH_pep.
- (_bfd_XX_bfd_copy_private_bfd_data_common): Add macros to map
- _bfd_XXfoo to _bfd_pepfoo if COFF_WIT_PEP is defined and to
- _bfd_pefoo if it's not defined. Use these macros to define
- coff swap macros.
-
- * libcoff.h (pe_tdata): Add members target_subsystem and
- force_minimum_alignment.
-
- * efi-app-ia64.c (COFF_WITH_pep): Rename COFF_WITH_PEP to
- COFF_WITH_pep.
- (PEI_TARGET_SUBSYSTEM): Rename from PEI_DEFAULT_TARGET_SUBSYSTEM.
-
- * configure.in (bfd_efi_app_ia64_vec): Use pepigen.lo instead of
- peigen.lo.
-
- * coff-ia64.c: Rename COFF_WITH_PEP to COFF_WITH_pep.
- (AOUTSZ): Rename PEP64AOUTSZ and PEP64AOUTHDR to PEPAOUTSZ and
- PEPAOUTHDR.
-
- * Makefile.in (BFD64_BACKENDS): Mention pepigen.lo.
- (BFD64_BACKENDS_CFILES): Mention pepigen.c
- (peigen.c): Add rule to generate from peXXigen.c.
- (pepigen.c): Ditto.
- (pepigen.lo): List dependencies for pepigen.lo.
-
-2001-02-13 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c (elf32_hppa_set_gp): Handle weak $global$. If
- $global$ referenced but not defined, set its value here.
-
-2001-02-09 Bo Thorsen <bo@suse.de>
-
- * elf64-x86-64.c (elf64_x86_64_check_relocs): Set .rela.got section
- alignment to 3.
- (elf64_x86_64_check_relocs): Write R_X86_64_GOTPCREL GOT entry
- and relocation.
- (elf64_x86_64_relocate_section): Fix formatting.
- (elf64_x86_64_relocate_section): Fix addend for relocation of
- R_X86_64_(8|16|32|PC8|PC16|PC32).
-
-2001-02-12 Jan Hubicka <jh@suse.cz>
-
- * elf64-x86-64.c (x86_64_elf_howto): Fix name of R_X86_64_GOTPCREL.
-
-2001-02-11 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_bfd_final_link): Use file_align for SYMTAB
- alignment.
-
-2001-02-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
-
- * elf32-mips.c (mips_elf_create_dynamic_relocation): Undo patch
- from 2000-10-13. Do not add the symbol's value for R_MIPS_REL32
- relocations against dynsym symbols.
-
- * elf32-mips.c (elf_mips_howto_table): Fix the comment on
- the R_MIPS_26 relocation.
- (mips_elf_calculate_relocation): Use (p + 4) instead of p for
- the R_MIPS_26 relocation.
- (mips_elf_perform_relocation): Fix the comment on the R_MIPS16_26
- relocation.
- * elf64-mips.c (mips_elf64_howto_table_rel): Fix the comment on
- the R_MIPS_26 relocation.
- (mips_elf64_howto_table_rela): Likewise.
-
- * elf32-mips.c (struct mips_elf_link_hash_entry): Added no_fn_stub
- member to mark symbols that have non-CALL relocations against
- them.
- (mips_elf_link_hash_newfunc): Initialize no_fn_stub.
- (mips_elf_calculate_relocation): Handle R_MIPS_CALL16 like
- R_MIPS_GOT16.
- (_bfd_mips_elf_check_relocs): Set no_fn_stub for a symbol if a
- non-CALL relocation against it is encountered.
- (_bfd_mips_elf_copy_indirect_symbol): Merge no_fn_stub as well.
- (_bfd_mips_elf_adjust_dynamic_symbol): Only create a stub if
- no_fn_stub is not set.
-
- * elf32-mips.c (mips_elf_output_extsym): Get the output section
- information from the real symbol for indirect ones.
- Check no_fn_stub to find out if a symbol has a function stub
- indeed.
-
-2001-02-11 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * Makefile.am (stamp-lib): ranlib the libbfd.a in the build directory.
- * Makefile.in: Regenerate.
-
-2001-02-09 David Mosberger <davidm@hpl.hp.com>
-
- * elfxx-ia64.c (is_unwind_section_name): New function. Returns
- true if section name is an unwind table section name.
- (elfNN_ia64_additional_program_headers): Count each unwind section
- separately.
- (elfNN_ia64_modify_segment_map): Install one unwind program header
- for each unwind separate section. Note: normally the linker
- script merges the unwind sections that go into a single segment,
- so this still generates at most one unwind program header per
- segment.
-
- * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Accept any section
- name for SHT_IA_64_UNWIND, not just .IA_64.unwind.
- (elfNN_ia64_fake_sections): Mark sections with names that start
- with .IA_64.unwind but not with .IA_64.unwind_info as an IA-64
- unwind section.
-
- * elfxx-ia64.c (elfNN_ia64_final_write_processing): New function.
- Use it to make sh_info in unwind section point to the text section
- it applies to.
-
-2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
-
- * Makefile.am: Add linux target for S/390.
- * archures.c: Likewise.
- * bfd-in2.h: Likewise.
- * config.bfd: Likewise.
- * configure.in: Likewise.
- * elf.c: Likewise.
- * libbfd.h: Likewise.
- * targets.c: Likewise.
- * cpu-s390.c: New file.
- * elf32-s390.c: New file.
- * elf64-s390.c: New file.
-
-2001-02-09 Nick Clifton <nickc@redhat.com>
-
- * peigen.c (_bfd_pe_get_symbol_info): Suppress addition of
- ImageBase. This has already been done by coff_swap_hdr_in.
-
-2001-02-09 Jakub Jelinek <jakub@redhat.com>
-
- * elf64-sparc.c (sparc64_elf_copy_private_bfd_data): New function.
-
-2001-02-09 Jakub Jelinek <jakub@redhat.com>
-
- * elf64-sparc.c (sparc64_elf_check_relocs): Don't trust reloc_count.
- (sparc64_elf_relocate_section): Likewise.
-
-2001-02-09 Mark Kettenis <kettenis@gnu.org>
-
- * elf32-sparc.c (_bfd_sparc_elf_howto_table): Treat R_SPARC_UA32
- similar to R_SPARC_32.
- * elf64-sparc.c (sparc64_elf_howto_table): Likewise.
-
-2001-02-08 H.J. Lu <hjl@gnu.org>
-
- * elf32-i386.c (elf_i386_check_relocs): Reserve R_386_PC32
- relocation entries for weak definitions when building DSO with
- -Bsymbolic.
-
-2001-02-08 Richard Henderson <rth@redhat.com>
-
- * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Respect weakness
- before visibility. Locally defined protected symbols are not
- dynamic.
-
-2001-02-08 Geoffrey Keating <geoffk@redhat.com>
-
- * config.bfd: Enable coff64 for rs6000-*. Patch from
- <hzoli@austin.ibm.com>.
-
-2001-02-07 Mark Elbrecht <snowball3@bigfoot.com>
-
- * coffgen.c (coff_find_nearest_line): If stabs info is successfully
- found, do not attempt to find dwarf2 info before returning.
-
-2001-02-07 Jakub Jelinek <jakub@redhat.com>
-
- * elflink.h (is_global_symbol_definition): Rename to
- is_global_data_symbol_definition and have it reject function
- symbols.
- (elf_link_is_defined_archive_symbol): Use renamed function.
-
-2001-02-07 Todd Vierling <tv@wasabisystems.com>
-
- * libbfd-in.h (bfd_target_vector): Change extern array to pointer.
- * libbfd.h (bfd_target_vector): Likewise.
- * targets.c (bfd_target_vector): Rename to _bfd_target_vector and
- make static; create pointer reference named bfd_target_vector.
- (_bfd_target_vector_entries): Calculate this based on the array
- typed _bfd_target_vector.
-
-2001-02-06 H.J. Lu <hjl@gnu.org>
-
- * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Only hidden and
- internal symbols are not dynamic.
- * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise.
-
-2001-02-06 Nick Clifton <nickc@redhat.com>
-
- * Makefile.am (BFD64_BACKENDS_CFILES): Remove elf64-ia64.c, so
- that it will not be pulled into the list of files that make up
- po/POTFILES.in.
- * Makefile.in: Regenerate.
- * po/bfd.pot: Regenerate.
-
-2001-02-06 H.J. Lu <hjl@gnu.org>
-
- * peicode.h (coff_swap_filehdr_in): Remove the e_magic
- checking.
- (pe_bfd_object_p): Rewrite with external_PEI_DOS_hdr and
- external_PEI_IMAGE_hdr.
-
-2001-02-06 Kazu Hirata <kazu@hxi.com>
-
- * elf-m10200.c: Fix formatting.
-
-2001-02-04 Nick Clifton <nickc@redhat.com>
-
- * elf32-v850.c (v850_elf_reloc): Do not convert reloc addend to PC
- rel, it will be handled later on.
-
-2001-02-02 Fred Fish <fnf@ninemoons.com>
-
- * Makefile.in: Fix typo.
-
-2001-02-01 Kazu Hirata <kazu@hxi.com>
-
- * elf-m10300.c: Fix formatting.
-
-2001-01-30 Alan Modra <alan@linuxcare.com.au>
-
- * elf64-hppa.c (elf64_hppa_elf_get_symbol_type): New function.
- (elf_backend_get_symbol_type): Define.
- (elf64_hppa_object_p): Set architecture and machine from elf
- header flags.
-
-2001-01-30 Curtis L. Janssen <cljanss@ca.sandia.gov>
-
- * elf64-alpha.c (elf64_alpha_find_nearest_line): Query dwarf2
- before mdebug.
-
-2001-01-26 Richard Henderson <rth@redhat.com>
-
- * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Return false
- for non-default visibility.
- * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise, but
- delete ugly macro and replace with pretty function.
-
-2001-01-25 Mark Elbrecht <snowball3@bigfoot.com>
-
- * coff-go32.c: Update copyright.
- * coff-stgo32.c: Likewise.
- * coff-go32.c (COFF_LONG_FILENAMES): Define.
- * coff-stgo32.c (COFF_LONG_FILENAMES): Likewise.
- * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Remove .bss entry.
- * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
-
-2001-01-25 Kazu Hirata <kazu@hxi.com>
-
- * bfd-in2.h: Rebuild.
- * libbfd.h: Likewise.
-
-2001-01-23 H.J. Lu <hjl@gnu.org>
-
- * bfd-in2.h: Rebuild.
-
-2001-01-23 H.J. Lu <hjl@gnu.org>
-
- * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_buf)
- is NULL or PRIV(vms_rec) is outside of the buffer.
-
-2001-01-23 Kazu Hirata <kazu@hxi.com>
-
- * coff64-rs6000.c: Fix formatting.
- * coff-arm.c: Likewise.
- * coffgen.c: Likewise.
- * cofflink.c: Likewise.
- * coff-mcore.c: Likewise.
- * coff-mips.c: Likewise.
- * coff-pmac.c: Likewise.
- * coff-ppc.c: Likewise.
- * coff-rs6000.c: Likewise.
- * elf32.c: Likewise.
- * elf32-fr30.c: Likewise.
- * elf32-i370.c: Likewise.
- * elf32-i860.c: Likewise.
- * elf32-m32r.c: Likewise.
- * elf32-m68k.c: Likewise.
- * elf32-mcore.c: Likewise.
- * elf32-ppc.c: Likewise.
- * elf32-sh.c: Likewise.
- * elf32-v850.c: Likewise.
- * elf64-alpha.c: Likewise.
- * elf64-sparc.c: Likewise.
- * elflink.c: Likewise.
- * elflink.h: Likewise.
- * elf-m10200.c: Likewise.
- * elf-m10300.c: Likewise.
- * elfxx-ia64.c: Likewise.
-
- * aoutx.h: Fix formatting.
- * bfd.c: Likewise.
- * bfd-in2.h: Likewise.
- * bfd-in.h: Likewise.
- * cpu-i386.c: Likewise.
- * cpu-m68hc11.c: Likewise.
- * dwarf2.c: Likewise.
- * elf64-x86-64.c: Likewise.
- * format.c: Likewise.
- * freebsd.h: Likewise.
- * hash.c: Likewise.
- * hp300hpux.c: Likewise.
- * hppabsd-core.c: Likewise.
- * hpux-core.c: Likewise.
-
-2001-01-22 Bo Thorsen <bo@suse.de>
-
- * elf64-x86-64.c: Added PIC support for X86-64.
- (elf64_x86_64_link_hash_newfunc): Function added.
- (elf64_x86_64_link_hash_table_create): Likewise.
- (elf64_x86_64_check_relocs): Likewise.
- (elf64_x86_64_gc_mark_hook): Likewise.
- (elf64_x86_64_gc_sweep_hook): Likewise.
- (elf64_x86_64_adjust_dynamic_symbol): Likewise.
- (elf64_x86_64_size_dynamic_sections): Likewise.
- (elf64_x86_64_discard_copies): Likewise.
- (elf64_x86_64_finish_dynamic_symbol): Likewise.
- (elf64_x86_64_finish_dynamic_sections): Likewise.
- (elf64_x86_64_relocate_section): Add relocation of PIC sections.
-
-2001-01-21 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
-
- * Makefile.am (install-data-local): Make use of $(DESTDIR).
- * Makefile.in: Regenerate.
-
-2001-01-21 Kazu Hirata <kazu@hxi.com>
-
- * coff-a29k.c: Fix formatting.
-
-2001-01-19 H.J. Lu <hjl@gnu.org>
-
- * elf32-i386.c (elf_i386_check_relocs): Report files with bad
- relocation section names.
- (elf_i386_relocate_section): Report files with bad relocation
- section names and return false.
-
-2001-01-17 Bo Thorsen <bo@suse.de>
-
- * targets.c: Alphabetize list of xvecs.
-
-2001-01-14 Alan Modra <alan@linuxcare.com.au>
-
- * config.bfd: Add linux target variant for elfxx-hppa.
- * configure.in: Recognize bfd_elf32_hppa_linux_vec and
- bfd_elf64_hppa_linux_vec.
- * configure: Regenerate.
- * elf64-hppa.c: Include elf64-target.h again to support linux
- target variant.
- (elf64_hppa_post_process_headers): Set ELFOSABI_LINUX for linux.
- * elf32-hppa.c: Include elf32-target.h again to support linux
- target variant.
- (elf32_hppa_post_process_headers): New function.
- (elf_backend_post_process_headers): Define.
- * targets.c (bfd_target_vector): Add bfd_elf64_hppa_linux_vec and
- bfd_elf32_hppa_linux_vec.
-
- * elf32-hppa.c (elf32_hppa_link_hash_table): Add text_segment_base,
- and data_segment_base fields.
- (elf32_hppa_link_hash_table_create ): Init them.
- (elf32_hppa_check_relocs): Update comments.
- (hppa_record_segment_addr): New function.
- (elf32_hppa_relocate_section): Call it.
- (final_link_relocate): Handle R_PARISC_SEGREL32.
- (elf32_hppa_final_link): New function.
- (bfd_elf32_bfd_final_link): Define to call it.
- (hppa_unwind_entry_compare): New function.
- * cache.c (bfd_open_file): Create files in write+read mode.
-
- * elf-hppa.h (elf_hppa_howto_table): Set bitsize value for
- SEGREL32 and numerous other relocs. Change duplicate
- R_PARISC_NONE relocs to R_PARISC_UNIMPLEMENTED.
-
- * opncls.c (bfd_fdopenr): Add parens like the comment says around
- O_ACCMODE.
-
- * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Don't create
- .plt entries for DT_INIT and DT_FINI.
- (elf32_hppa_finish_dynamic_sections): Remove special handling of
- DT_INIT and DT_FINI.
-
- * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Use 16-bit
- offsets for stub .plt access if wide mode. Check offset in range.
-
-2001-01-13 Nick Clifton <nickc@redhat.com>
-
- * elf32-fr30.c (fr30_elf_howto_table): Remove spurious blank
- line.
-
- * coffcode.h (coff_canonicalize_reloc): Remove spurious blank
- line.
-
-2001-01-12 Alan Modra <alan@linuxcare.com.au>
-
- * configure.in ([bfd_elf64_x86_64_vec]): Set target64.
- * configure: Regenerate.
-
-2001-01-11 Peter Targett <peter.targett@arccores.com>
-
- * bfd-in2.h (bfd_architecture): Add bfd_mach_arc_5,
- bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8 for ARC variants.
- * cpu-arc.c (arch_info_struct): Add entries for variants.
- (bfd_arc_arch) Set default to bfd_mach_arc_5.
- (arc_get_mach) Don't assume machine names prefixed arc- before
- testing.
- * elf32-arc.c (arc_elf_object_p): Set machine number based on new
- selections.
- (arc_elf_final_write_processing) Likewise.
- (ELF_MACHINE_CODE) Use EM_ARC.
-
-2001-01-10 Nick Clifton <nickc@redhat.com>
-
- * coff-arm.c (LOCAL_LABEL_PREFIX): Change definition to "".
-
-2001-01-07 Philip Blundell <philb@gnu.org>
-
- * README: Replace `bug-gnu-utils@gnu.org' with
- `bug-binutils@gnu.org'.
-
-2001-01-04 Kazu Hirata <kazu@hxi.com>
-
- * som.c: Fix formatting.
-
-2001-01-03 Kazu Hirata <kazu@hxi.com>
-
- * ecoffswap.h: Fix formatting.
- * elf-bfd.h: Likewise.
- * elfarm-nabi.c: Likewise.
- * elfarm-oabi.c: Likewise.
- * elfcode.h: Likewise.
- * elfcore.h: Likewise.
- * elflink.c: Likewise.
- * elflink.h: Likewise.
- * elfxx-ia64.c: Likewise.
- * elfxx-target.h: Likewise.
- * libbfd.c: Likewise
- * linker.c: Likewise.
- * lynx-core.c: Likewise.
-
-2001-01-02 Kazu Hirata <kazu@hxi.com>
-
- * pc532-mach.c: Fix formatting.
- * pe-arm.c: Likewise.
- * pe-i386.c: Likewise.
- * pe-mips.c: Likewise.
- * pe-ppc.c: Likewise.
- * pe-sh.c: Likewise.
- * pei-mips.c: Likewise.
- * pei-sh.c: Likewise.
- * peicode.h: Likewise.
- * ppcboot.c: Likewise.
- * ptrace-core.c: Likewise.
-
-2001-01-01 Kazu Hirata <kazu@hxi.com>
-
- * reloc.c: Fix formatting.
- * riscix.c: Likewise.
- * rs6000-core.c: Likewise.
- * xcoff-target.h: Likewise.
-
-2000-12-29 Hans-Peter Nilsson <hp@bitrange.com>
-
- * elfcode.h (elf_object_p): Also restore the bfd mach field on
- error, by calling bfd_default_set_arch_mach with incoming
- values.
-
-2000-12-26 Kazu Hirata <kazu@hxi.com>
-
- * vaxnetbsd.c: Fix formatting.
- * versados.c: Likewise.
- * vms-gsd.c: Likewise.
- * vms-hdr.c: Likewise.
- * vms-misc.c: Likewise.
-
-2000-12-25 Alexandre Oliva <aoliva@redhat.com>
-
- * archive.c (coff_write_armap): Don't write more than symbol_count
- `archive_member_file_ptr's.
-
-2000-12-25 Kazu Hirata <kazu@hxi.com>
-
- * vms-tir.c: Fix formatting.
-
-2000-12-23 Kazu Hirata <kazu@hxi.com>
-
- * vms.c: Fix formatting.
- * vms.h: Likewise.
-
-2000-12-21 Santeri Paavolainen <santtu@ssh.com>
-
- * vms-hdr.c: Include alloca.h if HAVE_ALLOCA_H is defined.
-
- * peicode.h (pe_ILF_object_p): Add const to import of TARGET_LITTLE_SYM.
-
- * elf32-m32r.c (m32r_elf_generic_reloc): Add cast to avoid (void *)
- arithmetic.
-
- * elf32-fr30.c: Add casts to avoid (void *) arithmetic.
-
- * coffcode.h (styp_to_sec_flags): Add empty statement after label.
-
-2000-12-21 Richard Sandiford <rsandifo@redhat.com>
-
- * libbfd.c (bfd_get_bits): Added
- (bfd_put_bits): Likewise
- * bfd-in.h: Declared the above.
- * bfd-in2.h: Regenerated.
-
-2000-12-20 Kazu Hirata <kazu@hxi.com>
-
- * targets.c: Fix formatting.
- * tekhex.c: Likewise.
- * trad-core.c: Likewise.
-
-2000-12-19 Kazu Hirata <kazu@hxi.com>
-
- * sco5-core.c: Fix formatting.
- * section.c: Likewise.
- * sparclinux.c: Likewise.
- * sparclynx.c: Likewise.
- * sparcnetbsd.c: Likewise.
- * srec.c: Likewise.
- * stabs.c: Likewise.
- * stab-syms.c: Likewise.
- * sunos.c: Likewise.
- * syms.c: Likewise.
- * sysdep.h: Likewise.
-
-2000-12-18 Nick Clifton <nickc@redhat.com>
-
- * coff-arm.c (EXTRA_S_FLAGS): Only define if not already
- defined.
- * epoc-pe-arm.c (EXTRA_S_FLAGS): Define.
- * epoc-pei-arm.c (EXTRA_S_FLAGS): Define.
-
-2000-12-18 Nick Clifton <nickc@redhat.com>
-
- * vms-misc.c (_bfd_vms_get_record): Add default case to
- file_format switch.
-
-2000-12-15 Miloslav Trmac <mitr@volny.cz>
-
- * elfcore.h (elf_core_file_p): Move to the start of the program
- headers before attempting to read them.
-
-2000-12-14 Kazu Hirata <kazu@hxi.com>
-
- * peigen.c: Fix formatting.
- * som.c: Likewise.
- * som.h: Likewise.
-
-2000-12-13 Kazu Hirata <kazu@hxi.com>
-
- * peigen.c: Fix formatting.
-
-2000-12-12 Jim Wilson <wilson@redhat.com>
-
- * elfxx-ia64.c (get_dyn_sym_info): Cast %p argument to void *.
-
-2000-12-08 Mark Salter <msalter@redhat.com>
-
- * binary.c (binary_set_section_contents): Ignore sections
- with zero size.
-
-2000-12-12 Kazu Hirata <kazu@hxi.com>
-
- * m68klinux.c: Fix formatting.
- * m68knetbsd.c: Likewise.
- * mipsbsd.c: Likewise.
- * netbsd-core.c: Likewise.
- * netbsd.h: Likewise.
- * newsos3.c: Likewise.
- * nlm32-alpha.c: Likewise.
- * nlm32-i386.c: Likewise.
- * nlm32-ppc.c: Likewise.
- * nlm32-sparc.c: Likewise.
- * nlmcode.h: Likewise.
- * nlmswap.h: Likewise.
- * nlm-target.h: Likewise.
- * ns32knetbsd.c: Likewise.
-
-2000-12-10 Fred Fish <fnf@be.com>
-
- * elflink.h (elf_link_output_extsym): Don't complain about undefined
- symbols in shared objects if allow_shlib_undefined is true.
-
-2000-12-12 Nick Clifton <nickc@redhat.com>
-
- * cpu-sh.c: Fix formattng.
- * elf.c: Fix formattng.
- * elf32-mips.c: Fix formattng.
- * elf32-sh.c: Fix formattng.
- * elf64-alpha.c: Fix formattng.
-
-2000-12-09 Nick Clifton <nickc@redhat.com>
-
- * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Pass
- dwarf2_find_line_info as last parameter to invocation of
- _bfd_dwarf2_find_nearest_line.
- * elf32-arm.h (elf32_arm_find_nearest_line): Pass
- dwarf2_find_line_info as last parameter to invocation of
- _bfd_dwarf2_find_nearest_line.
-
-2000-12-08 Mark Elbrecht <snowball3@bigfoot.com>
-
- * Makefile.am (BFD32_BACKENDS): Move dwarf2.lo from here...
- (BFD_LIBS): ...to here.
- (BFD32_BACKENDS_CFILES): Move dwarf2.c from here...
- (BFD_LIBS_CFILES): ...to here.
- * Makefile.in: Regenerate.
- * configure.in: Remove dwarf.lo from the elf shell variable.
- * configure: Regenerate.
- * libcoff-in.h (coff_tdata): Add pointer dwarf2_find_line_info.
- * libcoff.h: Regenerate.
- * coffgen.c (coff_find_nearest_line): Call
- _bfd_dwarf2_find_nearest_line.
- * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add parameter. Update
- accordingly.
- (read_abbrevs): Likewise
- (decode_line_info): Likewise.
- (parse_comp_unit): Likewise.
- (comp_unit_find_nearest_line): Likewise.
- * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype.
- * libbfd.h: Regenerate.
- * elf.c (_bfd_elf_find_nearest_line): Update call.
- * elf-bfd.h (elf_obj_tdata): Change dwarf2_find_line_info to type PTR.
- * dwarf2.c (concat_filename): Use IS_ABSOLUTE_PATH.
- * coffcode.h (STYP_XCOFF_DEBUG, STYP_DEBUG_INFO): New macros.
- (sec_to_styp_flags): Use them. Handle DWARF2 sections.
- (styp_to_sec_flags): Handle DWARF2 sections.
- * elf32-arm.h (elf32_arm_find_nearest_line): Add parameter to call
- to _bfd_find_nearest_line.
- * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Add parameter to
- call to _bfd_find_nearest_line.
-
-2000-12-08 Kazu Hirata <kazu@hxi.com>
-
- * coffgen.c: Fix formatting.
- * elf-m10300.c: Likewise.
- * elf32-i386.c: Likewise.
- * elf32-i960.c: Likewise.
- * elf32-m68k.c: Likewise.
- * elf32-mcore.c: Likewise.
- * elf32-ppc.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-sparc.c: Likewise.
-
-2000-12-07 Kazu Hirata <kazu@hxi.com>
-
- * elf32-ppc.c: Fix formatting.
- * elf64-x86-64.c: Likewise.
-
-2000-12-06 Ulf Carlsson <ulfc@engr.sgi.com>
-
- From Ralf Baechle <ralf@gnu.org>
-
- * elf32-mips.c (elf32_mips_merge_private_bfd_data): Always permit
- BFDs containing no sections or empty .text, .data or .bss sections
- to be merged, regardless of their flags.
-
-2000-12-06 Kazu Hirata <kazu@hxi.com>
-
- * elf32-m32r.c: Fix formatting.
- * elf32-m68hc11.c: Likewise.
- * elf32-m68hc12.c: Likewise.
- * elf32-m68k.c: Likewise.
- * elf32-mcore.c: Likewise.
- * elf32-pj.c: Likewise.
- * elf32-ppc.c: Likewise.
-
-2000-12-05 Kazu Hirata <kazu@hxi.com>
-
- * elf32-fr30.c: Fix formatting.
- * elf32-hppa.c: Likewise.
- * elf32-i370.c: Likewise.
- * elf32-i386.c: Likewise.
- * elf32-i860.c: Likewise.
- * elf32-i960.c: Likewise.
-
-2000-12-03 Kazu Hirata <kazu@hxi.com>
-
- * elf32-arm.h: Fix formatting.
- * elf32-avr.c: Likewise.
- * elf32-cris.c: Likewise.
- * elf32-d10v.c: Likewise.
- * elf32-d30v.c: Likewise.
- * elf-hppa.h: Likewise.
- * elf-m10200.c: Likewise.
- * elf-m10300.c: Likewise.
-
-2000-12-01 Chris Demetriou <cgd@sibyte.com>
-
- * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mips32 and
- bfd_mach_mips32_4k. Update FIXME comment.
- * archures.c (bfd_mach_mips32): New constant.
- (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to
- the latter, renumber it.
- * bfd-in2.h (bfd_mach_mips32): New constant.
- (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to
- the latter, renumber it.
- * cpu-mips.c (I_mips32): New constant.
- (I_mips4K, I_mips32_4k): Rename the former to the latter.
- (arch_info_struct): Add bfd_mach_mips32 entry, replace
- bfd_mach_mips4K entry with bfd_mach_mips32_4k entry.
- * elf32-mips.c (elf_mips_isa): Add E_MIPS_ARCH_32 case.
- (elf_mips_mach): Likewise. Also, replace E_MIPS_MACH_MIPS32
- with E_MIPS_MACH_MIPS32_4K.
- (_bfd_mips_elf_final_write_processing): Replace
- bfd_mach_mips4K with bfd_mach_mips32_4k case, add
- bfd_mach_mips32 case.
- (_bfd_mips_elf_merge_private_bfd_data): Generalize ISA mixing
- comparison with support for MIPS32.
- (_bfd_mips_elf_print_private_bfd_data): Print ISA name for
- MIPS32.
-
- * aoutx.h (NAME(aout,machine_type)): Add cases for
- bfd_mach_mips5 and bfd_mach_mips64.
- * archures.c (bfd_mach_mips5, bfd_mach_mips64): New constants.
- * bfd-in2.h (bfd_mach_mips5, bfd_mach_mips64): Likewise.
- * cpu_mips.c (I_mips5, I_mips64): New definitions.
- (arch_info_struct): Add entries for bfd_mach_mips5 and
- bfd_mach_mips64.
- * elf32-mips.c (elf_mips_isa, elf_mips_mach,
- _bfd_mips_elf_print_private_bfd_data): Add cases for
- E_MIPS_ARCH_5 and E_MIPS_ARCH_64.
- (_bfd_mips_elf_final_write_processing): Add cases for
- bfd_mach_mips5 and bfd_mach_mips64.
-
- * aoutx.h (NAME(aout,machine_type)): Add a
- bfd_mach_mips_sb1 case.
- * archures.c (bfd_mach_mips_sb1): New constant.
- * bfd-in2.h (bfd_mach_mips_sb1): New constant.
- * cpu-mips.c (I_sb1): New constant.
- (arch_info_struct): Add entry for bfd_mach_mips_sb1.
- * elf32-mips.c (elf_mips_mach): Add case for
- E_MIPS_MACH_SB1.
- (_bfd_mips_elf_final_write_processing): Add case for
- bfd_mach_mips_sb1.
-
-2000-12-01 Joel Sherrill <joel@OARcorp.com>
-
- * config.bfd (arm-*-rtems*, a29k-*rtems*): New targets.
- (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
- (sparc*-*-rtems*): Switched from a.out to ELF.
-
-2000-11-30 Jan Hubicka <jh@suse.cz>
-
- * Makefile.am (BFD64_BACKENDS): Add elf64-x86-64.lo
- BFD64_BACKENDS_CFILES): Add elf64-x86-64.c
- (elf64-x86-64.lo): Add dependencies.
- * archures.c (DESCRIPTION): Add bfd_mach_x86_64,
- bfd_mach_x86_64_intel_syntax.
- * elf.c (prep_headers): Use EM_x86_64 for 64bit output.
- * config.bfd (x86_64): Add.
- * configure.in: Add support for bfd_elf64_x86_64_vec.
- * cpu-i386.c (bfd_x86_64_arch_intel_syntax, bfd_x86_64_arch): Add.
- (bfd_i386_arch, i8086_ar): Link in.
- * elf64-x86-64.c: New file.
- * reloc.c (ENUMDOC): Add BFD_RELOC_X86_64*.
- * targets.c (bfd_elf64_x86_64_vec): Add.
- (bfd_target_vect): Add bfd_elf64_x86_64_vec.
-
-2000-11-30 Kazu Hirata <kazu@hxi.com>
-
- * xcofflink.c: Fix formatting.
-
-2000-11-28 Kazu Hirata <kazu@hxi.com>
-
- * aoutx.h: Fix formatting.
- * bfd-in.h: Likewise.
- * bfd-in2.h: Likewise.
- * cache.c: Likewise.
- * cisco-core.c: Likewise.
- * coff64-rs6000.c: Likewise.
- * coffcode.h: Likewise.
- * coffswap.h: Likewise.
- * corefile.c: Likewise.
- * elf32-mips.c: Likewise.
-
-2000-11-27 Kazu Hirata <kazu@hxi.com>
-
- * aout-adobe.c: Fix formatting.
- * coff64-rs6000.c: Likewise.
- * coffgen.c: Likewise.
- * cofflink.c: Likewise.
-
-2000-11-27 Philip Blundell <pb@futuretv.com>
-
- * libcoff-in.h (coff_tdata): Add `strings_written' flag.
- (obj_coff_strings_written): New accessor macro for above.
- * libcoff.h: Regenerate.
- * cofflink.c (_bfd_coff_final_link): Say that we wrote the
- strings.
- * coffcode.h (coff_write_object_contents): No need to write out
- the string table if it's already been done.
-
-2000-11-22 Philip Blundell <pb@futuretv.com>
-
- * cofflink.c (_bfd_coff_generic_relocate_section): Don't object to
- weak undefined symbols.
-
-2000-11-24 Nick Clifton <nickc@redhat.com>
-
- * archures.c (bfd_mach_arm_5TE): Define.
- (bfd_mach_arm+XScale): Define.
- * bfd-in2.h: Regenerate.
-
- * coff-arm.c (coff_arm_reloc_type_lookup): Accept
- BFD_RELOC_ARM_PCREL_BLX.
-
- * coffcode.h (coff_set_flags): Set flags for 5t, 5te and
- XScale machine numbers.
-
- * config.bfd (xscale-elf): Add target.
- (xscale-coff): Add target.
-
- * cpu-arm.c: Add xscale machine name.
- Add v5t, v5te and XScale machine numbers.
-
-2000-11-23 Kazu Hirata <kazu@hxi.com>
-
- * aix386-core.c: Fix formatting.
-
-2000-11-22 Jim Wilson <wilson@redhat.com>
-
- * coff-ia64.c (howto_table): Use EMPTY_HOWTO.
- (in_reloc_p): Add ATTRIBUTE_UNUSED to unused parameters.
- * cpu-ia64-opc.c (ins_rsvd, ext_rsvd, ins_const, ext_const): Likewise.
- (ins_imms_scaled): Initialize sign_bit at function entry.
- (elf64_ia64_operands): Add missing initializers.
- * elfxx-ia64.c (elfNN_ia64_reloc, elfNN_ia64_reloc_type_lookup,
- elfNN_ia64_info_to_howto, elfNN_ia64_fake_sections,
- elfNN_ia64_add_symbol_hook, elfNN_ia64_is_local_label_name,
- elfNN_ia64_local_hash_table_init, get_fptr, get_pltoff,
- elfNN_ia64_adjust_dynamic_symbol): Add ATTRIBUTE_UNUSED for unused
- parameters.
- (elfNN_ia64_info_to_howto): Initialize free_relocs, free_contents,
- and free_extsyms at function entry.
- (elfNN_add_symbol_hook): Add unsigned cast to bfd_get_gp_size result.
- (elfNN_ia64_create_dynamic_sections): Delete unused local h.
- (get_got): Delete unused local srel.
- (elfNN_ia64_check_relocs): Initialize dynrel_type when declared.
- (elfNN_ia64_relocate_section): Delete unused local dynindx.
-
-2000-11-21 Kazu Hirata <kazu@hxi.com>
-
- * coff-a29k.c: Fix formatting.
- * coff-h8500.c: Likewise.
- * coff-i960.c: Likewise.
- * coff-ppc.c: Likewise.
- * coff-rs6000.c: Likewise.
- * coff-stgo32.c: Likewise.
- * coff-tic54x.c: Likewise.
- * coff-w65.c: Likewise.
- * cpu-h8500.c: Likewise.
- * cpu-hppa.c: Likewise.
- * cpu-ns32k.c: Likewise.
- * ecoff.c: Likewise.
- * ecofflink.c: Likewise.
-
-2000-11-21 Nick Clifton <nickc@redhat.com>
-
- * elf32-sh.c (sh_elf_reloc_loop): Fix compile time warning, and
- remove possibility of infinite loop.
-
-2000-11-20 Kazu Hirata <kazu@hxi.com>
-
- * aix386-core.c: Fix formatting.
- * aout-adobe.c: Likewise.
- * aout-arm.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.
- * bfd-in.h: Likewise.
- * bfd-in2.h: Likewise.
- * bfd.c: Likewise.
- * bout.c: Likewise.
-
-2000-11-17 H.J. Lu <hjl@gnu.org>
-
- * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Don't create
- pltoff entries for DT_INIT and DT_FINI.
- (elfNN_ia64_final_link): Don't set DT_INIT/FINI entries.
- (elfNN_ia64_finish_dynamic_sections): Don't fill in DT_INIT/FINI
- entries.
-
-2000-11-16 Richard Henderson <rth@redhat.com>
-
- * elfxx-ia64.c (elfNN_ia64_check_relocs): Handle IPLT relocs.
- (allocate_dynrel_entries): Likewise.
- (elfNN_ia64_relocate_section): Likewise. Set REL addends correctly.
- (set_pltoff_entry): Likewise.
- (ia64_howto_table): Remove R_IA64_SEGBASE, and R_IA64_EPLT[ML]SB
- (elfNN_ia64_reloc_type_lookup): Likewise.
- (elfNN_ia64_install_value): Likewise.
- (elfNN_ia64_relocate_section): Likewise.
- * reloc.c (BFD_RELOC_IA64_SEGBASE): Remove.
- (BFD_RELOC_IA64_EPLTMSB, BFD_RELOC_IA64_EPLTLSB): Remove.
-
-2000-11-16 Kazu Hirata <kazu@hxi.com>
-
- * cpu-a29k.c: Fix formatting.
- * cpu-alpha.c: Likewise.
- * cpu-arm.c: Likewise.
- * cpu-avr.c: Likewise.
- * cpu-d10v.c: Likewise.
- * cpu-h8500.c: Likewise.
- * cpu-hppa.c: Likewise.
- * cpu-i370.c: Likewise.
- * cpu-i386.c: Likewise.
- * cpu-i960.c: Likewise.
- * cpu-ia64-opc.c: Likewise.
- * cpu-ia64.c: Likewise.
- * cpu-m32r.c: Likewise.
- * cpu-m68hc11.c: Likewise.
- * cpu-m68hc12.c: Likewise.
- * cpu-m68k.c: Likewise.
- * cpu-m88k.c: Likewise.
- * cpu-mips.c: Likewise.
- * cpu-ns32k.c: Likewise.
- * cpu-pj.c: Likewise.
- * cpu-powerpc.c: Likewise.
- * cpu-sh.c: Likewise.
- * cpu-sparc.c: Likewise.
- * cpu-tic54x.c: Likewise.
- * cpu-v850.c: Likewise.
- * cpu-vax.c: Likewise.
- * cpu-w65.c: Likewise.
- * cpu-we32k.c: Likewise.
- * cpu-z8k.c: Likewise.
- * dwarf1.c: Likewise.
- * dwarf2.c: Likewise.
-
-2000-11-15 Kazu Hirata <kazu@hxi.com>
-
- * coff-arm.c: Fix formatting.
- * coff-ppc.c: Likewise.
- * coff-rs6000.c: Likewise.
- * coff-sh.c: Likewise.
- * coff-sparc.c: Likewise.
- * coff-tic30.c: Likewise.
- * coff-tic54x.c: Likewise.
- * coff-tic80.c: Likewise.
- * coff-w65.c: Likewise.
- * coff-we32k.c: Likewise.
- * coff-z8k.c: Likewise.
-
-2000-11-15 Richard Henderson <rth@redhat.com>
-
- * elf64-alpha.c (elf64_alpha_check_relocs): Create the reloc
- section with the same ALLOC|LOAD flags as the source section.
-
-2000-11-14 Jakub Jelinek <jakub@redhat.com>
-
- * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used
- by STO_ALPHA constants.
-
-2000-11-14 Kazu Hirata <kazu@hxi.com>
-
- * coff-pmac.c: Fix formatting.
- * coff-ppc.c: Likewise.
-
-2000-11-13 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_link_add_object_symbols): Also add indirect
- symbols for common symbols with the default version.
-
-2000-11-09 Philip Blundell <pb@futuretv.com>
-
- * section.c (STD_SECTION): Set gc_mark flag.
-
-2000-11-11 Kazu Hirata <kazu@hxi.com>
-
- * coff-i960.c: Likewise.
- * coff-m68k.c: Likewise.
- * coff-m88k.c: Likewise.
- * coff-mcore.c: Likewise.
- * coff-mips.c: Likewise.
-
-2000-11-11 Bernd Schmidt <bernds@cygnus.co.uk>
-
- * elf32-sh.c (sh_elf_relocate_section): Ignore R_SH_NONE relocs.
-
-2000-11-10 Kazu Hirata <kazu@hxi.com>
-
- * coff-h8300.c: Fix formatting.
- * coff-h8500.c: Likewise.
- * coff-i386.c: Likewise.
- * coff-i860.c: Likewise.
- * coff-i960.c: Likewise.
- * coff-ia64.c: Likewise.
-
-2000-11-09 Kazu Hirata <kazu@hxi.com>
-
- * archive.c: Fix formatting.
- * archures.c: Likewise.
-
-2000-11-07 Richard Henderson <rth@redhat.com>
-
- * elfxx-ia64.c (elf64_ia64_final_link): New local unwind_output_sec.
- Set it before bfd_elf64_bfd_final_link call. Use it after the call.
- * section.c (bfd_set_section_contents): Call memcpy if
- section->contents set and location not equal to contents plus offset.
-
-2000-11-08 Kazu Hirata <kazu@hxi.com>
-
- * bfd-in.h: Fix formatting.
- * bfd-in2.h: Likewise.
- * bfd.c: Likewise.
- * binary.c: Likewise.
- * bout.c: Likewise.
- * coff-a29k.c: Likewise.
- * coff-alpha.c: Likewise.
- * coff-apollo.c: Likewise.
- * coff-aux.c: Likewise.
-
-2000-11-07 Kazu Hirata <kazu@hxi.com>
-
- * aix386-core.c: Fix formatting.
- * aoutf1.h: Likewise.
- * aoutx.h: Likewise.
- * archures.c: Likewise.
- * armnetbsd.c: Likewise.
-
-2000-11-07 Alan Modra <alan@linuxcare.com.au>
-
- * coff-h8300.c (special): Adjust reloc address.
-
-2000-11-06 Steve Ellcey <sje@cup.hp.com>
-
- * archures.c (bfd_mach_ia64_elf64, bfd_mach_ia64_elf32): Add defines
- to differentiate elf32 and elf64 on ia64.
- * bfd-in2.h: Regenerate.
- * config.bfd: Add target for "ia64*-*-hpux*".
- * configure.in: Add bfd_elf32_ia64_big_vec to selvecs switch.
- * configure: Regenerate.
- * cpu-ia64.c (bfd_ia64_elf32_arch): Add elf32 arch info structure.
- * targets.c: Add bfd_target bfd_elf32_ia64_big_vec.
-
- * Makefile.am: Make elf32-ia64.c and elf64-ia64.c derived objects
- from elfxx-ia64.c. Add depenency rules for making elf32-ia64.lo.
- * Makefile.in: Regnerate.
- * elf64-ia64.c: Deleted.
- * elfxx-ia64.c: New file, paramaterized version of elf64-ia64.c.
-
-2000-11-06 Kazu Hirata <kazu@hxi.com>
-
- * aout-adobe.c: Fix formatting.
- * aout-arm.c: Likewise.
- * aout-cris.c: Likewise.
- * aout-encap.c: Likewise.
- * aout-ns32k.c: Likewise.
- * aout-target.h: Likewise.
- * aout-tic30.c: Likewise.
-
-2000-11-05 Philip Blundell <philb@gnu.org>
-
- * elf32-arm.h (elf32_arm_merge_private_bfd_data): Always permit
- BFDs containing no sections to be merged, regardless of their flags.
-
-2000-11-04 Philip Blundell <philb@gnu.org>
-
- * elf32-arm.h (elf32_arm_relocate_section): Suppress error message
- if a relocation for an undefined symbol also results in an
- overflow.
-
-2000-11-06 Christopher Faylor <cgf@cygnus.com>
-
- * config.bfd: Add support for Sun Chorus.
-
-2000-11-05 David O'Brien <obrien@FreeBSD.org>
-
- * configure.in: Recognize alpha-*-freebsd*.
- * configure: Regenerate.
-
-2000-11-02 Luciano Gemme <ishitawa@yahoo.com>
-
- * srec.c (CHUNK): Rename to DEFAULT_CHUNK.
- (Chunk): New global variable set by a parameter in objcopy.c.
- (S3Forced): New global variable set by a parameter in
- objcopy.c.
- (srec_set_section_contents): If S3Forced is true, always generate
- S3 records.
- (srec_write_section): Use 'Chunk' to limit maximum length of S
- records.
-
-2000-11-02 Per Lundberg <plundis@chaosdev.org>
-
- * config.bfd: Add support for i[3456]86-chaosdev-storm-chaos.
- * Makefile.in: Regenerate.
- * bfd-in2.h: Regenerate.
- * po/bfd.pot: Regenerate.
-
-2000-10-31 Philip Blundell <philb@gnu.org>
-
- * elf32-arm.h (elf32_arm_merge_private_bfd_data): Only handle
- EF_SOFT_FLOAT if it is defined.
-
-2000-10-27 Philip Blundell <philb@gnu.org>
-
- * elf32-arm.h (elf32_arm_copy_private_bfd_data): Don't refuse
- attempts to mix PIC code with non-PIC, just mark the output as
- being position dependent.
- (elf32_arm_merge_private_bfd_data): Likewise. Print an error
- message for EF_SOFT_FLOAT mismatches. Display diagnostics for
- all mismatches, not just the first one.
-
-2000-10-25 Chris Demetriou <cgd@sibyte.com>
-
- * ieee.c (ieee_archive_p): Plug one of many possible
- memory leaks in error handling.
-
-2000-10-20 Jakub Jelinek <jakub@redhat.com>
-
- * elf32-sparc.c (elf32_sparc_merge_private_bfd_data,
- elf32_sparc_object_p, elf32_sparc_final_write_processing):
- Support v8plusb.
- * elf64-sparc.c (sparc64_elf_merge_private_bfd_data,
- sparc64_elf_object_p): Support v9b.
- * archures.c: Declare v8plusb and v9b machines.
- * bfd-in2.h: Ditto.
- * cpu-sparc.c: Ditto.
-
-2000-10-16 Geoffrey Keating <geoffk@shoggoth.cygnus.com>
-
- * elf64-sparc.c (sparc64_elf_relocate_section): Clear the location
- of a GOT reloc.
-
- * elf32-ppc.c (SYMBOL_REFERENCES_LOCAL): New macro.
- (SYMBOL_CALLS_LOCAL): New macro.
- (ppc_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL.
- (ppc_elf_check_relocs): Use SYMBOL_REFERENCES_LOCAL.
- (ppc_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL.
- (ppc_elf_relocate_section): Use flag variable to determine
- whether the relocation refers to a local symbol.
- Test whether a PLTREL24 reloc will produce a reloc by looking
- to see whether a PLT entry was made.
-
-2000-10-14 Geoffrey Keating <geoffk@shoggoth.cygnus.com>
-
- * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make PLT
- entries that could serve as a definition for a weak symbol.
-
-2000-10-13 Ulf Carlsson <ulfc@engr.sgi.com>
-
- From Ralf Baechle <ralf@gnu.org>
-
- * elf32-mips.c (mips_elf_create_dynamic_relocation): New argument
- local_p. Add symbol value only for non-R_MIPS_REL32 relocations
- against local symbols.
- (_bfd_mips_elf_finish_dynamic_sections): Undo patch from 2000-10-01.
-
-2000-10-12 Alan Modra <alan@linuxcare.com.au>
-
- * section.c (struct sec): Add kept_section.
- (struct bfd_comdat_info): Remove sec, we can use above.
- (STD_SECTION): Add initializer.
- (bfd_make_section_anyway): Init here too.
-
- * bfd-in2.h: Regenerate.
-
- * elflink.h (elf_link_add_object_symbols): Remove unnecessary
- zeroing of `flags'.
- (elf_link_input_bfd): Set all asection->symbol->value's here, and
- fudge values for discarded link-once section symbols.
-
- * elf64-hppa.c: Include alloca-conf.h
-
-2000-10-11 Alan Modra <alan@linuxcare.com.au>
-
- * elf.c (swap_out_syms): Revert 2000-10-07 changes.
-
- * ieee.c (ieee_make_empty_symbol): Oops, bfd_zalloc needs another arg.
-
-2000-10-10 Alan Modra <alan@linuxcare.com.au>
-
- * ieee.c (ieee_make_empty_symbol): Use bfd_zalloc, not bfd_zmalloc.
-
-2000-10-10 Tom Rix <trix@redhat.com>
-
- * section.c (bfd_make_section_anyway): Release newsect ptr when
- newsect->symbol fails to alloc. Use bfd_release instead of free.
-
-2000-10-09 Richard Henderson <rth@cygnus.com
-
- * elf64-ia64.c (elf64_ia64_unwind_entry_compare_bfd): New.
- (elf64_ia64_unwind_entry_compare): New.
- (elf64_ia64_final_link): Sort the .IA_64.unwind section.
-
-2000-10-07 Alan Modra <alan@linuxcare.com.au>
-
- * elflink.h (size_dynamic_sections): Don't create various tags if
- .dynstr is excluded from the link. Don't set first dynsym entry
- if dynsymcount is zero.
- (elf_bfd_final_link): Don't try to swap out dynamic syms if
- .dynsym excluded from the link. Don't try to write any dynamic
- sections excluded from the link.
-
- * elf.c (swap_out_syms): Handle global section symbols.
-
-2000-10-05 DJ Delorie <dj@redhat.com>
-
- * peigen.c (_bfd_pei_swap_scnhdr_out): note extended relocs
- * coffcode.h (coff_set_alignment_hook): read extended reloc count
- (coff_write_relocs): write extended reloc count
- (coff_write_object_contents): account for extended relocs
-
-2000-10-05 Jim Wilson <wilson@cygnus.com>
-
- * elf-bfd.h (struct elf_backend_data): Add elf_backend_section_flags
- field.
- * elf.c (_bfd_elf_make_section_from_shdr): Call the
- elf_backend_section_flags function.
- * elf64-ia64.c (elf64_ia64_section_from_shdr): Delete flag conversion
- code.
- (elf64_ia64_section_flags): New function containing flag conversion
- code.
- (elf_backend_section_flags): Define to elf64_ia64_section_flags.
- * elfxx-target.h (elf_backend_section_flags): Define.
- (elfNN_bed): Initialize elf_backend_section_flags field.
-
-2000-10-02 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c (elf32_hppa_check_relocs): Correct call to
- _bfd_elf32_gc_record_vtable. Correct a comment.
-
-2000-10-01 Ulf Carlsson <ulfc@engr.sgi.com>
-
- From Ralf Baechle <ralf@gnu.org>
-
- * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Mark gld
- produces binaries with got[1] = 0x80000001 to differenciate them
- for the dynamic linker from the broken binaries produced by old
- versions.
-
-2000-09-30 Petr Sorfa <petrs@sco.com>
-
- * elf.c (elfcore_grok_pstatus): Check for size of pxstatus_t.
- (elfcore_grok_lwpstatus): Check for size of lwpxstatus_t.
- * configure.in: Add check for pxstatus_t and lwpxstatus_t.
- * configure: Regenerate.
-
-2000-09-27 Hans-Peter Nilsson <hp@axis.com>
-
- Define two bfd_targets for absence and presence of leading
- underscore on symbols. Make sure to only link same kind.
- * elf32-cris.c (cris_elf_object_p,
- cris_elf_final_write_processing, cris_elf_print_private_bfd_data,
- cris_elf_merge_private_bfd_data): New.
- (elf_backend_object_p, elf_backend_final_write_processing,
- bfd_elf32_bfd_print_private_bfd_data,
- bfd_elf32_bfd_merge_private_bfd_data): Define.
- <Target vector definition>: Include elf32-target.h twice with
- different macro settings:
- (TARGET_LITTLE_SYM): First as bfd_elf32_cris_vec, then as
- bfd_elf32_us_cris_vec.
- (TARGET_LITTLE_NAME): First as "elf32-cris", then "elf32-us-cris".
- (elf_symbol_leading_char): First as 0, then '_'.
- (INCLUDED_TARGET_FILE): Define for second include of elf32-target.h.
- * config.bfd (cris-*-*): Add bfd_elf32_us_cris_vec to targ_selvecs.
- * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vector.
- * configure: Regenerate.
- * targets.c: Declare bfd_elf32_us_cris_vec.
- * po/bfd.pot: Regenerate.
-
-2000-09-29 Momchil Velikov <velco@fadata.bg>
-
- * elf32-arm.h (arm_add_to_rel): Correctly adjust the addend for
- R_ARM_THM_PC22 relocations.
-
-2000-09-29 NIIBE Yutaka <gniibe@chroot.org>
-
- * elflink.h (elf_link_add_object_symbols): Don't bfd_release runpath.
-
-2000-09-29 Momchil Velikov <velco@fadata.bg>
-
- * elf.c (elf_fake_sections): Do not mark the section SHT_NOBITS if
- is has the SEC_HAS_CONTENTS flag set.
-
-2000-09-28 Örjan Friberg <orjanf@axis.com>
- Hans-Peter Nilsson <hp@axis.com>
-
- * aout-cris.c (N_TXTADDR): Define.
-
-2000-09-28 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * som.c: Include alloca-conf.h.
- * Makefile.am: "make dep-am"
- * Makefile.in: Regenerate.
-
-2000-09-27 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c (plt_stub): New.
- (PLT_STUB_ENTRY): Define.
- (elf32_hppa_link_hash_table): Change multi_subspace to packed
- boolean. Add need_plt_stub, has_12bit_branch and has_17bit_branch.
- (elf32_hppa_link_hash_table_create): Init to suit.
- (elf32_hppa_check_relocs): Set has_12bit_branch and
- has_17bit_branch as appropriate.
- (elf32_hppa_adjust_dynamic_symbol): Set need_plt_stub for
- non-local functions.
- (elf32_hppa_size_dynamic_sections): Correct setting of reltext.
- Add space for plt_stub as needed.
- (elf32_hppa_finish_dynamic_symbol): Point .plt entries for global
- functions at plt_stub.
- (elf32_hppa_finish_dynamic_sections): Write plt_stub.
- (elf32_hppa_create_dynamic_sections): Leave .plt executable.
-
- * elf32-hppa.h (elf32_hppa_size_stubs): Add group_size param.
- * elf32-hppa.c (elf32_hppa_size_stubs): Likewise. Use it instead
- of fixed size, and if negative, disable handling of input sections
- before stub section. Set up default stub group size depending
- on detected branch relocs.
- (hppa_build_one_stub): Use lrsel and rrsel for import stubs to
- ensure different offsets from sym_value aren't rounded to
- different 2k blocks. Use lrsel and rrsel for other stubs too for
- consistency rather than necessity.
- (elf32_hppa_check_relocs): Handle R_PARISC_DIR14F.
- (final_link_relocate): Likewise.
- (elf32_hppa_relocate_section): Likewise.
-
- * elf-hppa.h (elf_hppa_howto_table): Add R_PARISC_DIR14F reloc.
- (_bfd_elf_hppa_gen_reloc_type): Generate them.
- (elf_hppa_final_link_relocate): Handle them.
- (elf_hppa_relocate_insn): Likewise.
- (_bfd_elf_hppa_gen_reloc_type): Add missing e_ldsel and e_rdsel cases.
-
-2000-09-26 Hans-Peter Nilsson <hp@axis.com>
-
- * elfcode.h (elf_object_p): Preserve and clear abfd section
- information. Restore at error.
-
-2000-09-26 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
-
- * peigen.c (_bfd_pei_swap_aouthdr_in): If some DataDirectory
- is empty, make sure that its rva also 0. NT loader dislikes
- having otherwise.
-
-2000-09-26 Steve Ellcey <sje@cup.hp.com>
-
- * som.c (som_bfd_derive_misc_symbol_info): Make weak symbols
- global by default.
-
-2000-09-21 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c (elf32_hppa_check_relocs): Fix weak sym handling in
- currently unused RELATIVE_DYNAMIC_RELOCS code.
- (hppa_discard_copies): Likewise.
- (elf32_hppa_size_stubs): Size `input_list' array correctly. Correct
- comments. Don't check non-code output sections for stub grouping.
-
-2000-09-20 Alan Modra <alan@linuxcare.com.au>
-
- * section.c (bfd_get_unique_section_name): Return NULL if
- bfd_malloc fails.
-
-2000-09-19 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * elf32-m68k.c (elf_cpu32_plt0_entry): Change the PLT entry 0
- instruction sequence to actually work.
- (elf_m68k_finish_dynamic_sections): Change the patch-in offset
- accordingly.
-
-2000-09-18 Alexandre Oliva <aoliva@redhat.com>
-
- * elf32-sh.c (sh_elf_relocate_section): Use
- _bfd_final_link_relocate to apply the relocation against a section
- symbol, when doing relocatable links.
-
-2000-09-18 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c (elf32_hppa_stub_hash_entry): Rename input_section
- to id_sec.
- (stub_hash_newfunc): Here too.
- (hppa_add_stub): And here.
- (elf32_hppa_link_hash_table): Remove stub_section_created,
- reloc_section_created, first_init_sec and first_fini_sec. Add
- stub_group.
- (elf32_hppa_link_hash_table_create): Init to suit.
- (hppa_get_stub_entry): Add support for grouping stub sections.
- (hppa_add_stub): Likewise. Remove sec_count param and init/fini
- section code. Index stub vars by section->id.
- (elf32_hppa_size_stubs): Likewise. Remove duplicated function
- exit paths. Zap allocation of above removed vars. Refine
- link-once test.
-
- * elf32-hppa.h (elf32_hppa_size_stubs): Add output_bfd param.
- * elf32-hppa.c (elf32_hppa_size_stubs): Likewise.
- (hppa_get_stub_entry): Pass in pointer to elf32_hppa_link_hash_table
- rather than pointer to bfd_link_info.
- (hppa_add_stub): Likewise.
- (final_link_relocate): Likewise.
-
-2000-09-17 David Huggins-Daines <dhd@linuxcare.com>
-
- (elf32_hppa_size_stubs): Don't try to build stubs for discarded
- link-once sections.
-
-2000-09-16 Alexandre Oliva <aoliva@redhat.com>
-
- * elf32-sh.c (ELF_MAXPAGESIZE): Define to 128, to match
- ld/emulparams/shelf.sh.
-
-2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): New function.
- * bfd-in.h (bfd_m68k_elf32_create_embedded_relocs): Add declaration.
- * bfd-in2.h: Regenerate.
-
-2000-09-15 Kenneth Block <Kenneth.Block@compaq.com>
-
- * elf64-alpha.c (elf64_alpha_relax_with_lituse): ld performs
- LITUSE relocations incorrectly if -relax is specified on the ld
- command line and the displacement field of the load or store
- instruction is non-zero. (Patch by paul.winalski@compaq.com)
-
-2000-09-15 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c (hppa_add_stub): Dont set first_init_sec and
- first_fini_sec here.
- (elf32_hppa_size_stubs): Instead correctly find the first .init
- and .fini section here.
-
-2000-09-15 David Huggins-Daines <dhd@linuxcare.com>
-
- * elf32-hppa.c (clobber_millicode_symbols): New function.
- (elf32_hppa_size_dynamic_sections): Call it.
-
-2000-09-14 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.c (elf32_hppa_link_hash_entry): Make pic_call
- packed. Add plabel, plt_abs packed booleans.
- (hppa_link_hash_newfunc): Init new fields.
- (PLABEL_PLT_ENTRY_SIZE): Define.
- (hppa_stub_name): Use size_t len vars.
- (hppa_add_stub): Likewise.
- (elf32_hppa_build_stubs): Likewise.
- (hppa_build_one_stub): Kill some compiler warnings.
- (elf32_hppa_check_relocs): Always generate a plt entry for PLABELs
- if dynamic linking. Munge the local plt offsets into
- local_got_refcounts. Set h->plabel for all global PLABELs. Use
- size_t len vars. Add assert for plabel addend.
- (elf32_hppa_gc_sweep_hook): Sweep local plt entries too.
- (elf32_hppa_hide_symbol): New function.
- (elf_backend_hide_symbol): Define.
- (elf32_hppa_adjust_dynamic_symbol): Don't throw away plt entries
- with h->plabel set. Don't make plt entries to have dynamic syms
- when they have been forced local. If plt entry is used by a
- plabel, make it PLABEL_PLT_ENTRY_SIZE.
- (elf32_hppa_size_dynamic_sections): Set plt_abs for init fns.
- Set up .plt offsets for local syms.
- (elf32_hppa_relocate_section): Initialise plt entries for local
- syms. Leave weak undefined plabels zero. Make global plabel
- relocs against function symbol, and leave the addend zero.
- Use *ABS* DIR32 relocs instead of SEGREL32 for dynamic got relocs.
- (elf32_hppa_finish_dynamic_symbol): Set up IPLT relocs for
- non-dynamic syms. Init extra plt for plabels. Use *ABS* DIR32
- relocs instead of SEGREL32 for dynamic got relocs.
- (elf32_hppa_finish_dynamic_sections): Reserve one more .got entry.
- (elf_backend_got_header_size): Adjust.
- (elf32_hppa_set_gp): Calculate an "ideal" LTP.
-
- * elf32-hppa.c (LONG_BRANCH_VIA_PLT): Define.
- (hppa_type_of_stub): Use it instead of #if 0
- (hppa_discard_copies): Use it here too.
- (elf32_hppa_size_dynamic_sections): And here.
-
- * elf32-hppa.c (elf32_hppa_link_hash_table): Remove `offset' field.
- (elf32_hppa_link_hash_table_create): And here.
- (hppa_build_one_stub): And here. Instead keep track of stub
- offset using _raw_size.
- (elf32_hppa_size_stubs): Likewise.
- (elf32_hppa_build_stubs): Likewise.
- (hppa_size_one_stub): Likewise. Resize reloc section too.
-
- * elf32-hppa.c (hppa_add_stub): Correct first_init_sec and
- first_fini_sec handling. Don't search for reloc section or set
- hplink->reloc_section_created here.
- (elf32_hppa_size_stubs): Instead search for reloc sections, and
- set reloc_section_created here.
- (hppa_handle_PIC_calls): Set ELF_LINK_HASH_NEEDS_PLT.
- (elf32_hppa_size_dynamic_sections): Make a .plt entry for DT_INIT
- and DT_FINI.
- (elf32_hppa_finish_dynamic_sections): Set DT_INIT and DT_FINI.
-
- * elf32-hppa.c (hppa_build_one_stub): Replace `elf_hash_table (info)'
- with `hplink->root.'.
- (elf32_hppa_check_relocs): Likewise.
- (elf32_hppa_gc_sweep_hook): Likewise.
- (elf32_hppa_adjust_dynamic_symbol): Likewise.
- (hppa_handle_PIC_calls): Likewise.
- (elf32_hppa_size_dynamic_sections): Likewise.
- (elf32_hppa_set_gp): Likewise.
- (elf32_hppa_relocate_section): Likewise.
- (elf32_hppa_finish_dynamic_symbol): Likewise.
- (elf32_hppa_finish_dynamic_sections): Likewise.
-
- From David Huggins-Daines <dhd@linuxcare.com>
- * elf32-hppa.c (hppa_type_of_stub): Generate import stubs for
- defined weak symbols in shared links.
- (final_link_relocate): Calls to defined weak symbols in shared
- objects must go via import stubs, as the target might not be known
- at link time.
-
-2000-09-14 Alexandre Oliva <aoliva@redhat.com>
-
- * elf32-sh.c (sh_elf_howto_table): Moved R_SH_GOT32, R_SH_PLT32,
- R_SH_COPY, R_SH_GLOB_DAT, R_SH_JMP_SLOT, R_SH_RELATIVE,
- R_SH_GOTOFF, R_SH_GOTPC) to the range from 160 to 167. Replaced
- the original entries with EMPTY_HOWTOs, and added new ones to fill
- in the gap.
- (sh_elf_info_to_howto): Make sure the new gap isn't used.
- (sh_elf_relocate_section): Likewise.
-
-2000-09-13 Anders Norlander <anorland@acc.umu.se>
-
- * cpu-mips.c (arch_info_struct): Add mips:4K
- * bfd-in2.h (bfd_mach_mips4K): New define.
- * archures.c: Add bfd_mach_mips4K to comment.
- * elf32-mips.c (_bfd_mips_elf_final_write_processing): Return
- E_MIPS_ARCH_2 for bfd_mach_mips4K.
-
-2000-09-13 Marco Franzen <marcof@thyron.com>
-
- * som.c (som_write_symbol_strings): Do not used fixed buffers,
- use size_t as a counter.
- (som_write_space_strings): Similarly.
-
-2000-09-12 Jason Eckhardt <jle@cygnus.com>
-
- * elf32-i860.c (elf32_i860_relocate_pc26): New function
- and prototype.
- (elf32_i860_relocate_section): Invoke new function from here.
-
-2000-09-11 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * elf.c (_bfd_elf_make_section_from_shdr): Make debug_sec_names
- static.
-
-2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Emit 8 NULs for
- target section name instead of dumping core when the target symbol is
- undefined.
-
-2000-09-09 Kazu Hirata <kazu@hxi.com>
-
- * riscix.c: Remove DEFUN.
-
-2000-09-08 Nick Clifton <nickc@redhat.com>
-
- * elf32-arm.h (elf32_arm_merge_private_bfd_data): Do not
- initialise flags in output bfd if the input bfd is the default
- architecture with the default flags.
-
-2000-09-08 Kazu Hirata <kazu@hxi.com>
-
- * archive.c: Fix formatting.
- * coff-arm.c: Likewise.
- * doc/chew.c: Likewise.
-
-2000-09-08 Alan Modra <alan@linuxcare.com.au>
-
- * section.c (bfd_get_unique_section_name): Put a dot before the
- numeric suffix.
-
-2000-09-07 Kazu Hirata <kazu@hxi.com>
-
- * doc/chew.c: Remove all uses of DEFUN and DEFUN_VOID.
- * elf.c: Fix formatting.
-
-2000-09-07 Alexandre Oliva <aoliva@redhat.com>
-
- * config.bfd (sh-*-linux*): Added.
- * configure.in (bfd_elf32_shlin_vec, bfd_elf32_shblin_vec): New.
- * targets.c: Declare them.
- * elf32-sh-lin.c: New file.
- * Makefile.am: Compile it.
- * elf32-sh.c: Don't override defines from elf32-sh-lin.c.
- * configure, Makefile.in: Rebuilt.
-
-2000-09-06 Geoffrey Keating <geoffk@cygnus.com>
-
- * xcofflink.c (xcoff_link_input_bfd): Include the .tocbss
- pseduo-section when determining where the TOC ends.
-
- * coff-rs6000.c (_bfd_xcoff_swap_aux_out): Use bfd_h_put_16 to
- output x_tvndx as it is only two bytes wide.
-
- * coff-rs6000.c (xcoff_howto_table): A modifiable branch-absolute
- reloc is 26 or 32 bits wide.
-
- * coff-rs6000.c (_bfd_xcoff_rtype2howto): The bitsize is irrelevant
- for relocs that don't change anything. Also look at the full
- 6 bits of bitsize.
-
-2000-09-06 Philip Blundell <philb@gnu.org>
-
- * config.bfd (arm*-*-uclinux*): New target.
-
-2000-09-06 Alexandre Oliva <aoliva@redhat.com>
-
- * configure: Rebuilt with new libtool.m4.
-
-2000-09-06 Alan Modra <alan@linuxcare.com.au>
-
- * section.c (bfd_get_unique_section_name): Avoid c++ reserved
- word for variable name.
- * bfd-in2.h: Regenerate.
-
-2000-09-05 Nick Clifton <nickc@redhat.com>
-
- * config.in: Regenerate.
- * libbfd.h: Regenerate.
- * po/bfd.pot: Regenerate.
- * doc/bfdint.texi: Remove CVS date string - it foils compares with
- local versions.
-
-2000-09-05 Steven Johnson <sbjohnson@ozemail.com.au>
-
- * cpu-powerpc.c (arch_info_struct): Added MPC860 Family entry.
-
-2000-09-05 Alan Modra <alan@linuxcare.com.au>
-
- Shared library and PIC support.
- * elf32-hppa.c (PLT_ENTRY_SIZE): New.
- (GOT_ENTRY_SIZE): New.
- (ELF_DYNAMIC_INTERPRETER): New.
- (STUB_SUFFIX): Define.
- (LONG_BRANCH_PIC_IN_SHLIB): Define.
- (RELATIVE_DYNAMIC_RELOCS): Define.
- (enum elf32_hppa_stub_type): New.
- (struct elf32_hppa_stub_hash_entry): Rename offset to
- stub_offset. Add a number of new fields.
- (struct elf32_hppa_link_hash_entry): New.
- (struct elf32_hppa_link_hash_table): Add numerous fields. Remove
- global_value.
- (elf32_hppa_hash_table): Rename to hppa_link_hash_table.
- (elf32_hppa_stub_hash_lookup): Rename to hppa_stub_hash_lookup.
- (elf32_hppa_stub_hash_newfunc): Rename to stub_hash_newfunc. Init
- new fields.
- (hppa_link_hash_newfunc): New function.
- (elf32_hppa_link_hash_table_create): Use above function. Init new
- fields.
- (elf32_hppa_stub_name): Rename to hppa_stub_name. Pass in reloc
- instead of addend, and remove sym_name from args. Don't use
- symbol name for local syms, instead use sym index.
- (elf32_hppa_size_of_stub): Rename to hppa_type_of_stub, and return
- stub type rather than size. Pass in hash and handle import stub
- case. Also pass in reloc instead of offset so we can calculate
- PCREL22F and PCREL12F branches properly.
- (elf32_hppa_build_one_stub): Rename to hppa_build_one_stub. Build
- import and export stubs too.
- (elf32_hppa_size_one_stub): Rename to hppa_size_one_stub. Handle
- import and export stub sizing.
- (elf32_hppa_check_relocs): New function.
- (elf32_hppa_adjust_dynamic_symbol): New function.
- (hppa_discard_copies): New function.
- (elf32_hppa_size_dynamic_sections): New function.
- (elf_backend_size_dynamic_sections): Define.
- (elf32_hppa_finish_dynamic_symbol): New function.
- (elf_backend_finish_dynamic_symbol): Define.
- (elf32_hppa_size_stubs): Stash params in link hash table, and move
- some local vars into the link hash table too. For shared links,
- trundle over function syms, generating export stubs. Handle
- PCREL22F branches. Break out stub creation code from here..
- (hppa_add_stub): .. to here. New function.
- (elf32_hppa_final_link): Rename to elf32_hppa_set_gp, and don't
- call the bfd linker. Use elf_gp to record global pointer.
- Calculate a value from sections if $global$ is missing.
- (bfd_elf32_bfd_final_link): Define as _bfd_elf32_gc_common_final_link.
- (elf32_hppa_gc_mark_hook): New function.
- (elf_backend_gc_mark_hook): Define.
- (elf32_hppa_gc_sweep_hook): New function.
- (elf_backend_gc_sweep_hook): Define.
- (elf32_hppa_bfd_final_link_relocate): Rename to final_link_relocate.
- Add rel to args, and remove howto, input_bfd, offset, addend,
- sym_name as we can recalculate these locally. Handle calls to
- dynamic objects, extra PIC relocs, PCREL22F branches. Change
- handling of undefined weak syms. Check that stubs are in range.
- Only look for import stubs on PCREL17F and PCREL22F relocs. Add
- message on hitting a DPREL21L reloc that needs fixing. Subtract
- off PC for PCREL14F. Break out code that does a stub lookup from
- here..
- (hppa_get_stub_entry): ..to here. New function.
- (elf32_hppa_relocate_insn): Merge into final_link_relocate.
- (elf32_hppa_relocate_section): Handle got and plt relocs, dynamic
- relocs, etc. etc.
- (elf32_hppa_finish_dynamic_sections): New function.
- (elf_backend_finish_dynamic_sections): Define.
- (elf_backend_final_write_processing) Define.
- (hppa_handle_PIC_calls): New function.
- (elf32_hppa_build_stubs): Call it. Pass link_info to
- hppa_build_one_stub.
- (elf32_hppa_create_dynamic_sections): New function
- to create .plt and .got then set .plt flags correctly.
- (elf_backend_create_dynamic_sections): Define.
- (elf32_hppa_object_p): New function.
- (elf_backend_object_p): Define.
- (elf32_hppa_elf_get_symbol_type): New function.
- (elf_backend_get_symbol_type): Define.
- (elf_backend_can_gc_sections): Define.
- (elf_backend_want_got_plt): Define.
- (elf_backend_plt_alignment): Set to 2.
- (elf_backend_plt_readonly): Define.
- (elf_backend_want_plt_sym): Define.
- (elf_backend_got_header_size): Reserve one entry.
-
- * elf32-hppa.h (elf32_hppa_build_stubs): Don't pass stub bfd.
- (elf32_hppa_size_stubs): Pass in multi_subspace.
- (elf32_hppa_set_gp): Declare.
-
- * section.c (SEC_HAS_GOT_REF): Define new flag for asection.
- (bfd_get_unique_section_name): New function.
- * bfd-in2.h: Regenerate.
-
- * elf64-hppa.c (elf64_hppa_check_relocs): Handle R_PARISC_PCREL12F.
- (elf64_hppa_size_dynamic_sections): Remove the FIXME at bfd_zalloc
- comment.
-
- From David Huggins-Daines <dhd@linuxcare.com>
- * elf64-hppa.c (elf64_hppa_check_relocs): Fix a warning.
- (elf64_hppa_mark_exported_functions): Set dyn_h->st_shndx.
- (elf64_hppa_link_output_symbol_hook): Test dyn_h->st_shndx has
- been updated in finish_dynamic_symbol before modifying function
- symbol.
-
- * elf-hppa.h (elf_hppa_howto_table): Restructure into groups of
- eight entries. Replace NULL with bfd_elf_generic_reloc. Add
- R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT and R_PARISC_PCREL12F.
- (_bfd_elf_hppa_gen_reloc_type): Handle R_PARISC_GNU_VT*. Add some
- comments. Handle format == 12 for R_HPPA_PCREL_CALL.
- (elf_hppa_final_link_relocate): Handle R_PARISC_PCREL12F.
- (elf_hppa_relocate_insn): Likewise. Reformat some comments.
- (elf_hppa_final_write_processing): Expose it for ARCH_SIZE == 32.
-
- From David Huggins-Daines <dhd@linuxcare.com>
- * elf-hppa.h (elf_hppa_is_local_label_name): Accept the SysV/ELF
- style of local labels as well.
-
-2000-09-03 Philip Blundell <philb@gnu.org>
-
- * elf32-arm.h (elf32_arm_relocate_section): Don't try to relocate
- references to undefined symbols in debugging sections.
-
-2000-09-02 H.J. Lu <hjl@gnu.org>
-
- * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT,
- BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE,
- BFD_RELOC_SH_GOTPC): Move them from the MIPS section to the SH
- section.
-
-2000-09-02 Jason Eckhardt <jle@cygnus.com>
-
- * elf32-i860.c (bfd_elf32_bfd_is_local_label_name): Define macro.
- (elf32_i860_is_local_label_name): New function and prototype.
-
-2000-09-02 Nick Clifton <nickc@redhat.com>
-
- * configure.in: Increase version number to 2.10.91.
- * configure: Regenerate.
- * aclocal.m4: Regenerate.
- * config.in: Regenerate.
- * po/bfd.pot: Regenerate.
-
-2000-09-02 Daniel Berlin <dberlin@redhat.com>
-
- * elf.c (_bfd_elf_make_section_from_shdr): Add
- .gnu.linkobce.wi. to the list of debug section names.
-
-2000-09-02 Nick Clifton <nickc@redhat.com>
-
- * dwarf2.c (find_debug_info): New function: Locate a section
- containing dwarf2 debug information.
- (bfd_dwarf2_find_nearest_line): Find all sections containing
- debug information and include them in the stash.
-
-2000-09-01 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
-
- * elf32-sh.c (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT,
- R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New.
- (sh_reloc_map): Add new relocs.
- (sh_elf_check_relocs, sh_elf_link_hash_newfunc,
- sh_elf_link_hash_table_create, sh_elf_adjust_dynamic_symbol,
- sh_elf_size_dynamic_sections, sh_elf_finish_dynamic_symbol,
- sh_elf_finishe_dynamic_sections, sh_elf_discard_copies): New
- functions.
- (ELF_DYNAMIC_INTERPRETER, PLT_ENTRY_SIZE): Define.
- (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le,
- elf_sh_plt_entry_be, elf_sh_plt_entry_le,
- elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le):
- New array constants.
- (elf_sh_plt0_entry, elf_sh_plt_entry, elf_sh_pic_plt_entry):
- New variables.
- (elf_sh_sizeof_plt, elf_sh_plt_plt0_offset,
- elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset,
- elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset,
- elf_sh_plt_reloc_offset): Define.
- (elf_sh_pcrel_relocs_copied, elf_sh_link_hash_entry,
- elf_sh_link_hash_table): New structs.
- (sh_elf_link_hash_traverse, sh_elf_hash_table): New macros.
- (sh_elf_relocate_section, sh_elf_check_relocs): Handle new
- relocation types.
- (elf_backend_create_dynamic_sections,
- bfd_elf32_bfd_link_hash_table_create,
- elf_backend_adjust_dynamic_symbol,
- elf_backend_size_dynamic_sections,
- elf_backend_finish_dynamic_symbol,
- elf_backend_finish_dynamic_sections, elf_backend_want_got_plt,
- elf_backend_plt_readonly, elf_backend_want_plt_sym,
- elf_backend_got_header_size, elf_backend_plt_header_size):
- Define.
- * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT,
- BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC):
- New relocs.
- * bfd-in2.h, libbfd.h: Rebuilt.
-
-2000-09-01 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-i386.c (elf_i386_finish_dynamic_symbol): Revert 2000-08-27
- change.
-
-2000-08-31 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * elf32-sh.c (sh_elf_merge_private_data): If ibfd's elf header flags
- not initialized, set them to indicate the SH1 instruction set.
-
-2000-08-31 Alexandre Oliva <aoliva@redhat.com>
-
- * acinclude.m4: Include libtool and gettext macros from the
- top level.
- * aclocal.m4, configure: Rebuilt.
-
-2000-08-29 Michael Snyder <msnyder@seadog.cygnus.com>
-
- * elf.c: Eliminate references to __sparcv9 macro; replace with
- autoconf variables HAVE_PSINFO32_T etc.
- * configure.in: Auto-configure HAVE_PSINFO_32_T, HAVE_PRPSINFO32_T,
- HAVE_PSTATUS32_T, HAVE_PRSTATUS32_T, HAVE_PRSTATUS32_T_PR_WHO.
- * config.in: Ditto.
- * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE) define _SYSCALL32 so it can
- detect the above typedefs. (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Ditto.
- * aclocal.m4: Ditto.
- * configure: Regenerate.
-
-2000-08-27 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-i386.c (elf_i386_check_relocs): Keep info on relocs copied
- for any shared link, not just shared -Bsymbolic.
- (elf_i386_size_dynamic_sections): Call elf_i386_discard_copies on
- any shared link, and pass link info to it.
- (elf_i386_size_dynamic_sections): Update comment.
- (elf_i386_discard_copies): Modify to discard relocs for symbols
- that have been forced local.
- (elf_i386_finish_dynamic_symbol): Don't copy relocs for symbols
- that have been forced local.
-
-2000-08-24 Denis Chertykov <denisc@overta.ru> & Nick Clifton <nickc@redhat.com>
-
- * elflink.h (elf_link_add_object_symbols): Allow common
- symbols to have an alignment of 1 if explicitly requested, and
- not overridden by other definitions.
-
-2000-08-22 Doug Kwan <dkwan@transmeta.com>
-
- * coff-w65.c (CREATE_LITTLE_COFF_TARGET): Fix typo.
- * coffcode.h (coff_set_flags): Add detection of w65 architecture.
-
-2000-08-22 H.J. Lu <hjl@gnu.org>
-
- * elf-bfd.h (elf_link_hash_table): Add runpath.
-
- * bfd-in.h (bfd_elf_get_runpath_list): New prototype.
- * bfd-in2.h: Rebuilt.
-
- * elf.c (_bfd_elf_link_hash_table_init): Initialize the
- "runpath" field to NULL.
- (bfd_elf_get_runpath_list): New function.
-
- * elflink.h (elf_link_add_object_symbols): Record DT_RPATH and
- DT_RUNPATH entries.
-
-2000-08-22 Alexandre Oliva <aoliva@redhat.com>
-
- * elf32-sh.c (sh_elf_relocate_section) [R_SH_IND12W,
- R_SH_DIR8WPN, R_SH_DIR8WPZ, R_SH_DIR8WPL]: Handle them
- explicitly. Improve validation of r_type.
-
-2000-08-21 H.J. Lu <hjl@gnu.org>
-
- * elf32-i386.c (elf_i386_size_dynamic_sections): Zero out the
- dynamic allocated content space. Add a comment to remind us that
- one day this ought to be fixed.
- * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
- * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
- * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
-
-2000-08-21 Jason Eckhardt <jle@cygnus.com>
-
- * elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate
- field with the newly relocated value instead of adding it to the
- existing immediate field.
- (elf32_i860_relocate_splitn): Likewise.
- (elf32_i860_relocate_highadj): Likewise.
-
-2000-08-16 Jason Eckhardt <jle@cygnus.com>
-
- * elf32-i860.c (elf32_i860_relocate_pc16): Implemented function (it
- was previously just a stub).
-
-2000-08-16 Alexandre Oliva <aoliva@redhat.com>
-
- * elflink.c (_bfd_elf_create_got_section): Don't abort().
- Formatting fixes.
- (_bfd_elf_create_dynamic_sections): Likewise.
-
-2000-08-16 Andrew Macleod <amacleod@cygnus.com>
-
- * elf64-sparc.c (sparc64_elf_relocate_section): Set relocation address
- for undefined symbols to be the beginning of the section.
-
- * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate
- four extra entries at the beginning of the .rela.plt section.
- (sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt
- section to account for the four reserved entries in the .plt section.
-
-2000-08-15 Geoffrey Keating <geoffk@cygnus.com>
-
- * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0
- to the list of NOPs we recognize after a branch-and-link.
- Use the ori NOP when one is needed.
-
- * coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation
- for large archives.
-
-2000-08-14 Jim Wilson <wilson@cygnus.com>
-
- * elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle
- EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP.
- (elf64_ia64_print_private_bfd_data): Likewise. Also handle
- EF_IA_64_ABSOLUTE.
-
-2000-08-11 Alexandre Oliva <aoliva@redhat.com>
-
- * elf32-sh.c (sh_elf_set_mach_from_flags): Make it static.
-
-2000-08-10 Jason Eckhardt <jle@cygnus.com>
-
- * elf32-i860.c (elf32_i860_relocate_section): New function.
- (i860_final_link_relocate): New function.
- (elf32_i860_relocate_splitn): New function.
- (elf32_i860_relocate_pc16): New function.
- (elf32_i860_relocate_highadj): New function.
- (elf32_i860_howto): Minor adjustments to some relocations.
- (elf_info_to_howto_rel): Define.
- (elf_backend_relocate_section): Define.
-
-2000-08-10 Nick Clifton <nickc@cygnus.com>
-
- * elf32-arm.h: Fix formatting.
-
-2000-08-10 Bernd Schmidt <bernds@cygnus.co.uk>
-
- * elf32-sh.c (sh_elf_reloc_loop): Make LAST_SYMBOL_SECTION static.
-
-2000-08-08 Jason Eckhardt <jle@cygnus.com>
-
- * elf32-i860.c (elf32_i860_howto_table): Updated some fields.
-
-2000-08-07 Kazu Hirata <kazu@hxi.com>
-
- * ieee.c (ieee_write_debug_part): Rewrite a comment.
- * elf64-ia64.c: Fix a typo.
-
-2000-08-05 Jason Eckhardt <jle@cygnus.com>
-
- * elf32-i860.c (elf32_i860_howto_table): New structure.
- (lookup_howto): New function.
- (elf32_i860_reloc_type_lookup): New function.
- (elf32_i860_info_to_howto_rela): New function.
- (elf_code_to_howto_index): New structure.
- (elf_info_to_howto): Re-define as elf32_i860_info_to_howto_rela.
- (bfd_elf32_bfd_reloc_type_lookup): Re-define as
- elf32_i860_reloc_type_lookup.
-
-2000-08-04 Rodney Brown <RodneyBrown@pmsc.com>
-
- * som.c (struct fixup_format): Constify `format'.
- (som_hppa_howto_table): Use SOM_HOWTO macro.
- (try_prev_fixup, hppa_som_reloc): Decorate unused parameter.
- (som_bfd_reloc_type_lookup): Likewise.
- (compare_subspaces): Remove unused `count1', `count2'.
- (som_begin_writing): Remove unused `total_reloc_size'.
- (som_bfd_derive_misc_symbol_info): Decorate unused parameter.
- (som_print_symbol, som_bfd_is_local_label_name): Likewise.
- (som_set_reloc_info): Constify `cp'. Remove unused `addend'.
- (som_find_nearest_line): Decorate unused parameter(s).
- (som_sizeof_headers, som_get_symbol_info, som_write_armap): Likewise.
- (som_bfd_link_split_section): Likewise.
-
-2000-08-03 Nick Clifton <nickc@cygnus.com>
-
- * section.c: Restore backed out code.
- * elf.c: Restore backed out code.
- (copy_private_bfd_data): Fix bug preventing stipped dynamic
- binaries from working.
- * bfd-in2.h: Regenerate.
-
-2000-08-03 H.J. Lu <hjl@gnu.org>
-
- * section.c: Back out the change made by Nick Clifton
- <nickc@cygnus.com> on 2000-07-31. It breaks stripping dynamic
- binaries.
- * bfd-in2.h: Likewise.
- * elf.c: Likewise.
-
-2000-08-03 Alexandre Oliva <aoliva@redhat.com>
-
- * elf32-sh.c (sh_elf_reloc_loop): Warning removal.
-
-2000-07-31 Jason Eckhardt <jle@cygnus.com>
-
- * reloc.c (BFD_RELOC_860_*): New bfd relocs for i860.
- * bfd-in2.h, libbfd.h: Regenerate.
-
-2000-07-31 Nick Clifton <nickc@cygnus.com>
-
- * section.c (struct sec): Add new boolean field 'segment_mark'.
- (STD_SECTION): Initialise new field to zero.
-
- * bfd-in2.h: Regenerate.
-
- * elf.c (copy_private_bfd_data): Reorganise section to segment
- mapping to cope with moved sections requiring new segments,
- and overlapping segments.
- (SEGMENT_END): New macro: Return the end address of a segment.
- (IS_CONTAINED_BY_VMA): New macro: Determine if a segment
- contains a section by comparing their VMA addresses.
- (IS_CONTAINED_BY_LMA): New macro: Determine if a segment
- contains a section by comparing their LMA addresses.
- (INCLUDE_SECTION_IN_SEGMENT): New macro: Determine if a
- section should be included in a segment.
- (SEGMENT_AFTER_SEGMENT): New macro: Determine if one segment
- follows another in memory.
- (SEGMENT_OVERLAPS_SEGMENT): New macro: Determine if two
- segments overlap.
-
-2000-07-22 Jason Eckhardt <jle@cygnus.com>
-
- * cpu-i860.c: Added comments.
-
- * elf32-i860.c (TARGET_LITTLE_SYM): Defined to
- bfd_elf32_i860_little_vec.
- (TARGET_LITTLE_NAME): Defined to "elf32-i860-little".
- (ELF_MAXPAGESIZE): Changed to 4096.
-
- * targets.c (bfd_elf32_i860_little_vec): Declaration of
- new target.
- (bfd_target_vector): Added bfd_elf32_i860_little_vec.
-
- * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added
- config for little endian elf32 i860.
- (targ_defvec): Define for the new config above
- as "bfd_elf32_i860_little_vec".
- (targ_selvecs): Define for the new config above
- as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec"
-
- * configure.in (bfd_elf32_i860_little_vec): Added recognition
- of new target vec.
-
- * configure: Regenerated.
-
-2000-07-27 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_merge_symbol): Take one more argument,
- dt_needed, to indicate if the symbol comes from a DT_NEEDED
- entry. Don't overide the existing weak definition if dt_needed
- is true.
- (elf_link_add_object_symbols): Pass dt_needed to
- elf_merge_symbol ().
-
-2000-07-27 Nick Clifton <nickc@cygnus.com>
-
- * elflink.h (elf_link_size_reloc_section): Zeroes the section's
- allocated contents.
-
-2000-07-25 Geoffrey Keating <geoffk@cygnus.com>
-
- * configure.host (*-*-aix*): AIX has 'long long' always.
-
- * coff-rs6000.c (xcoff_write_one_armap_big): New procedure.
- (xcoff_write_armap_big): Write both 32-bit and 64-bit armaps.
- (xcoff_write_archive_contents_big): Don't update the offset
- of the symbol table, xcoff_write_armap will do it.
-
-2000-07-23 Ulf Carlsson <ulfc@engr.sgi.com>
-
- * elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead
- of dynobj for SGI_COMPAT checks.
-
-2000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): New function.
- * bfd-in.h (bfd_m68k_coff_create_embedded_relocs): Add declaration.
- * bfd-in2.h: Regenerate.
-
-2000-07-21 Nick Clifton <nickc@cygnus.com>
-
- * elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of
- range symbol indices in relocs and issue an error message.
-
-2000-07-20 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check
- info->new_dtags when setting DT_FLAGS_1. It will only be set
- by the new linker options. It shouldn't break anything.
-
-2000-07-20 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1
- only if info->new_dtags is true.
-
-2000-07-20 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set
- DT_RUNPATH and DT_FLAGS only if info->new_dtags is true.
-
-2000-07-20 Hans-Peter Nilsson <hp@axis.com>
-
- * Makefile.am (ALL_MACHINES): Add cpu-cris.lo.
- (ALL_MACHINES_CFILES): Add cpu-cris.c.
- (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo.
- (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c.
- (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules.
- * Makefile.in: Rebuild.
- * aclocal.m4: Rebuild.
- * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris.
- * archures.c (enum bfd_architecture): Add bfd_arch_cris.
- (bfd_cris_arch): Declare.
- (bfd_archures_list): Add bfd_cris_arch.
- * bfd-in2.h: Rebuild.
- * config.bfd: (cris-*-*): New target.
- * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors.
- * configure: Rebuild.
- * elf.c (prep_headers): Add bfd_arch_cris.
- * libbfd.h: Rebuild.
- * libaout.h (enum machine_type): Add M_CRIS.
- * reloc.c: Add CRIS relocations.
- * targets.c (bfd_elf32_cris_vec, cris_aout_vec): Declare.
- (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec.
- * cpu-cris.c, aout-cris.c, elf32-cris.c: New files.
- * po/POTFILES.in, po/bfd.pot: Regenerate.
-
-2000-07-19 H.J. Lu <hjl@gnu.org>
-
- * elf32-arm.h (elf32_arm_size_dynamic_sections): Also set
- DF_TEXTREL if DT_TEXTREL is set.
- * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
- * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
- * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
- * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise.
- * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
- * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
- * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
- * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
- * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise.
- * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise.
-
- * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also
- set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if
- DT_RPATH is set.
- Set the DT_FLAGS and DT_FLAGS_1 entries if necessary.
-
-2000-07-19 H.J. Lu <hjl@gnu.org>
-
- * bfd-in.h (bfd_elf_set_dt_needed_soname): New.
- * bfd-in2.h: Rebuild.
-
- * elf-bfd.h (elf_obj_tdata): Add dt_soname.
- (elf_dt_soname): New.
-
- * elf.c (bfd_elf_set_dt_needed_soname): New.
-
- * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED
- entry if the shared object loaded by DT_NEEDED is used to
- resolve the reference in a regular object.
-
-2000-07-19 H.J. Lu <hjl@gnu.org>
-
- * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG,
- DT_DEPAUDIT and DT_AUDIT as strings.
-
-2000-07-19 Nick Clifton <nickc@cygnus.com>
-
- * format.c: Fix formatting.
-
-2000-07-19 H.J. Lu <hjl@gnu.org>
-
- * elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM.
-
-2000-07-19 H.J. Lu <hjl@gnu.org>
-
- * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW,
- DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ,
- DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ,
- DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1,
- DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT,
- DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT,
- DT_FLAGS_1, DT_USED and DT_CHECKSUM.
-
-2000-07-18 Andrew Cagney <cagney@b1.cygnus.com>
-
- * elf.c (bfd_elf_get_sign_extend_vma, bfd_elf_get_arch_size): Move
- renamed functions from here...
- (assign_section_numbers): Use renamed functions.
- (prep_headers): Use renamed functions.
-
- * bfd.c (bfd_get_sign_extend_vma, bfd_get_arch_size): ...To here.
- * bfd-in.h (bfd_get_sign_extend_vma, bfd_get_arch_size): Update.
- * bfd-in2.h: Regenerate.
-
-2000-07-18 Ulf Carlsson <ulfc@engr.sgi.com>
-
- * elf32-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Add
- parenthesis in if statement.
-
-2000-07-17 Koundinya K <kk@ddeorg.soft.net>
-
- Enable the support for Traditional MIPS.
- * elf32-mips.c (IRIX_COMPAT): Recognize bfd_elf32_tradbigmips_vecand
- return ict_none appropriately for traditional mips targets.
- (STUB_LW): Change 0x8f998000 to 0x8f998010 for traditional mips.
- (STUB_MOVE): Conditionalize for traditonal mips.
- (STUB_LI16): Likewise.
- (_bfd_mips_elf_modify_segment_map): Conditionalize to avoid making
- room for RTPROC header.
- (_bfd_mips_elf_modify_segment_map): For a normal mips executable set
- the permission for the PT_DYNAMIC as read, write and execute.
- (mips_elf_calculate_relocation): Check for the symbol _DYNAMIC_LINKING
- for traditonal mips.
- (_bfd_mips_elf_create_dynamic_sections): Add the symbol
- _DYNAMIC_LINKING for traditonal mips.
- (_bfd_mips_elf_create_dynamic_sections): Add the symbol __RLD_MAP
- in case of traditonal mips.
- (_bfd_mips_elf_adjust_dynamic_symbol): Create a stub only if a PLT
- entry is required. For a function if PLT is not required then set the
- corresponding hash table entry to 0.
- (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG entry for
- traditonal mips.
- (_bfd_mips_elf_finish_dynamic_symbol): for a undefined symbol in a
- shared object set the value to 0.
- (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol
- _DYNAMIC_LINKING for traditonal mips.
- (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol __RLD_MAP
- for traditonal mips.
-
-2000-07-15 H.J. Lu <hjl@gnu.org>
-
- * aoutx.h (translate_to_native_sym_flags): Handle BSF_LOCAL.
-
-2000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
-
- * libbfd.c (bfd_seek): fix 'seek beyond EOF' error when writing
- out a structure that is BFD_IN_MEMORY.
-
-2000-07-11 Alan Modra <alan@linuxcare.com.au>
-
- * elf64-hppa.c (get_dyn_name): Pass in section pointer instead of
- bfd pointer. Print section id instead of bfd pointer for local
- syms. Prefix addend with `+' for global syms as well as local.
- Correct calculation of name component lengths.
- (elf64_hppa_check_relocs): Update call to get_dyn_name.
-
- From David Huggins-Daines <dhd@linuxcare.com>
- * elf-hppa.h (elf_hppa_relocate_section): Update calls here too.
- * elf64-hppa.c (elf64_hppa_check_relocs): Fix some warnings.
- (elf64_hppa_modify_segment_map): Likewise.
-
-2000-07-11 Andrew Cagney <cagney@b1.cygnus.com>
-
- * elf.c (bfd_elf_get_sign_extend_vma): Return tendency of VMA
- addresses to be "naturally" sign extended. Return -1 if unknown.
- * bfd-in.h (bfd_elf_get_sign_extend_vma): Add declaration.
- * bfd-in2.h: Regenerate.
-
-2000-07-11 Andrew Cagney <cagney@b1.cygnus.com>
-
- * ecoffswap.h (ecoff_get_off, ecoff_put_off): Add ECOFF_SIGNED_32
- and ECOF_SIGNED_64 to list ways to extract an offset.
- (ecoff_swap_fdr_in, ecoff_swap_fdr_out, ecoff_swap_pdr_in,
- ecoff_swap_pdr_out, ecoff_swap_ext_in, ecoff_swap_ext_out):
- Update.
- * elf64-mips.c (ECOFF_SIGNED_64): Define instead of ECOFF_64.
- * elf32-mips.c (ECOFF_SIGNED_32): Define instead of ECOFF_32.
-
-2000-07-11 Andrew Cagney <cagney@b1.cygnus.com>
-
- * elfcode.h (elf_object_p): Use bfd_set_start_address and not
- bfd_get_start_address.
- (elf_swap_ehdr_in): Sign extend e_entry when applicable.
- (elf_swap_ehdr_out): Ditto.
-
-2000-07-10 Alexander Aganichev <AAganichev@hypercom.com>
-
- * archures.c (bfd_default_scan): Add set of bfd_mach_ cases for
- compatibility with older binutils.
-
-2000-07-10 Alan Modra <alan@linuxcare.com.au>
-
- * section.c (bfd_make_section_anyway): Start section_id at 0x10.
- (STD_SECTION): Avoid negative ids, instead use 0 to 3.
-
- From Ryan Bradetich <rbradetich@uswest.net>
- * dwarf1.c (parse_die): Cure signed/unsigned char warnings.
- (parse_line_table): Ditto.
- (_bfd_dwarf1_find_nearest_line): Ditto.
- * syms.c (cmpindexentry): Remove extra `*' from params.
-
-2000-07-09 Koundinya K <kk@ddeorg.soft.net>
-
- * elf32-mips.c (sort_dynamic_relocs): New Function.
- (_bfd_mips_elf_finish_dynamic_sections): Call sort_dynamic_relocs
- via qsort to sort the dynamic relocations in increasing r_symndx
- value.
-
-2000-07-09 Alan Modra <alan@linuxcare.com.au>
-
- * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add
- ATTRIBUTE_UNUSED to unused args.
- (get_opd): Likewise.
- (get_plt): Likewise.
- (get_dlt): Likewise.
- (get_stub): Likewise.
- (elf64_hppa_adjust_dynamic_symbol): Likewise.
- (elf64_hppa_link_output_symbol_hook): Likewise.
- (elf64_hppa_check_relocs): Delete unused var.
- (elf64_hppa_size_dynamic_sections): Likewise.
- (elf64_hppa_finalize_opd): Likewise.
- (elf64_hppa_finalize_dynreloc): Likewise.
- (elf64_hppa_modify_segment_map): Likewise.
- (elf64_hppa_finish_dynamic_sections): Likewise.
-
- * elf-hppa.h (elf_hppa_final_write_processing): Add
- ATTRIBUTE_UNUSED to unused args.
- (elf_hppa_final_link_relocate): Likewise.
- (elf_hppa_record_segment_addrs): Add paretheses.
- (elf_hppa_relocate_section): Constify dyn_name.
-
- From David Huggins-Daines <dhd@linuxcare.com>
- * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and
- rearrange case statement so that it gets preferred to 32-bit ones.
-
- * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use
- asection->id instead of address of asection structure.
- (elf32_hppa_size_stubs): Likewise.
-
- * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section
- for .init* and .fini*.
-
- * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers
- and addends used in stub names to 32 bits.
- (elf32_hppa_size_stubs): Likewise.
-
- * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend
- twice for R_PARISC_GPREL64. Use bfd_put_32 for R_PARISC_PCREL32,
- not bfd_put_64. Fix minor comment typo and formatting.
-
- Changes to create multiple linker stubs, positioned immediately
- before the section where they are required.
- * elf32-hppa.c: Don't include hppa_stubs.h.
- (elf32_hppa_stub_hash_entry): Add a pointer to the stub section.
- (elf32_hppa_stub_hash_table): Delete.
- (elf32_hppa_link_hash_entry): Delete.
- (elf32_hppa_link_hash_table): Use plain bfd_hash_table for
- stub_hash_table, and store the struct here rather than a pointer.
- Delete output_symbol_count. Add offset array. Change
- global_value to a bfd_vma.
- (elf32_hppa_stub_hash_lookup): Use table instead of table->root.
- (elf32_hppa_stub_hash_traverse): Delete.
- (elf32_hppa_name_of_stub): Delete.
- (elf32_hppa_link_hash_lookup): Delete.
- (elf32_hppa_link_hash_traverse): Delete.
- (elf32_hppa_stub_hash_table_init): Delete.
- (elf32_hppa_size_of_stub): Pass input section and offset rather
- than location and calculate location here. Don't pass name as all
- stubs are now the same size.
- (elf32_hppa_stub_hash_newfunc): Init new fields.
- (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table
- too.
- (elf32_hppa_bfd_final_link_relocate): Cast enums to int before
- comparing against ints. Rewrite stub handling code.
- (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned.
- Case enums to int before comparing against ints. Remove
- bfd_reloc_dangerous case.
- (elf32_hppa_build_one_stub): Rewrite.
- (elf32_hppa_size_one_stub): New function.
- (elf32_hppa_build_stubs): Rewrite.
- (elf32_hppa_size_stubs): Pass in linker call-back functions.
- Rewrite stub-handling specific code.
-
- * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype.
-
- * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo.
-
- * hppa_stubs.h: Delete.
- * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h
- (elf32-hppa.lo): Remove hppa_stubs.h from dependencies.
- * Makefile.in: Regenerate.
-
- * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and
- e_nlrsel.
-
- * libhppa.h (hppa_field_adjust): Correct e_nsel case.
-
- * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset
- and section name for bfd_reloc_notsupported error message.
- (elf32_hppa_bfd_final_link_relocate): Print reasons for returning
- bfd_reloc_notsupported.
- (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd.
-
- * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle
- undefined weak symbols for all relocs.
- (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch
- offsets are relative to one past the delay slot.
- (elf32_hppa_size_stubs): Account for reloc addend when calculating
- branch destination. Put addend into stub name too.
- (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and
- adjust by 8 when deciding whether a linker stub is needed. Put
- addend into stub name as for above.
-
- * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on
- various args and vars.
- (elf32_hppa_bfd_final_link_relocate): Here too.
- (elf32_hppa_size_stubs): Rename index -> indx. Use e_indx for
- inner block var to avoid shadowing.
-
- * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Make `field' arg
- unsigned.
- * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto.
- * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto.
- (elf_hppa_fake_sections): Rename local var to avoid shadowing.
-
- * libhppa.h: Change practically all unsigned ints to plain ints.
- Remove tests on gcc version. Instead use ATTRIBUTE_UNUSED for
- prototypes.
-
- From Ryan Bradetich <rbradetich@uswest.net>
- * libhppa.h (hppa_opcode_type): New enum to replace #define's.
- * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to
- suit above.
- From David Huggins-Daines <dhd@linuxcare.com>
- * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants
- to the new OP_* ones.
-
- * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on
- error exit. Bail out earlier on plabel relocs that we aren't
- interested in. Don't tell elf32_hppa_stub_hash_lookup to copy
- string, and then don't free our copy.
- (elf32_hppa_build_one_stub): Make insn unsigned int.
-
- * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only
- available with BL, not BE and BLE.
-
- * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example
- code for elf arg relocs.
- (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local
- argument with elf_link_hash_entry h. Handle undefined weak
- symbols. Move $global$ lookup from here...
- (elf32_hppa_relocate_section): ...to here. Return correct error
- message for non-handled relocs.
- (elf32_hppa_size_of_stub): Correctly test branch range. Previous
- wrong test was -0x3ffff to +0x40000.
-
- * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R,
- R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches;
- Handle them as such.
- (elf_hppa_relocate_insn): Fix a typo.
-
- * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete.
- (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a,
- assemble_17, assemble_21): Delete.
- Supply defines for all 64 possible opcodes.
- (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode
- formats. Handle COMICLR.
- (hppa_rebuild_insn): Delete bfd argument. Handle formats 10, -11,
- -10, -16, 16, 22.
-
- * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite.
- (elf32_hppa_bfd_final_link_relocate): Major rewrite.
- (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls
- to suit.
- (elf32_hppa_size_stubs): Don't free stub_name twice. Read in all
- the local syms - did this code get deleted accidentally? Ignore
- undefined and undefweak syms.
-
- * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost
- block. Use it instead of elf64_hppa_hash_table (info).
- (elf_hppa_final_link_relocate): Use hppa_info instead of
- elf64_hppa_hash_table (info).
-
- * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
- re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
- (hppa_rebuild_insn): Mask immediate bits here instead.
- * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
-
-2000-07-08 Alan Modra <alan@linuxcare.com.au>
-
- * section.c (struct sec): Add id field. Tidy comment formatting.
- (bfd_make_section_anyway): Set id.
- (STD_SECTION): Init id too.
- Change CONST to const throughout.
- * archures.c (bfd_arch_info): Tidy comment.
- (bfd_arch_list): Change a CONST to const.
- * libbfd-in.h: Tidy comments and replace CONST with const.
- * elf-bfd.h: Likewise.
- * libbfd.h: Regenerate.
- * bfd-in2.h: Regenerate.
- * libcoff.h: Regenerate.
-
-2000-07-07 DJ Delorie <dj@redhat.com>
-
- * archive.c (_bfd_write_archive_contents): Add an informative
- comment.
-
-2000-07-06 Kazu Hirata <kazu@hxi.com>
-
- * srec.c: Fix formatting.
-
-2000-06-05 DJ Delorie <dj@redhat.com>
-
- * MAINTAINERS: new
-
-2000-07-04 Alexandre Oliva <aoliva@redhat.com>
-
- * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol
- value of PC-relative offsets.
-
-2000-07-03 Jim Wilson <wilson@cygnus.com>
-
- * elf64-alpha.c (alpha_elf_size_info): New.
- (elf_backend_size_info): Define to alpha_elf_size_info.
- * elfcode.h (elf_size_info): Change hash bucket size to 4.
-
-2000-07-03 Ulf Carlsson <ulfc@engr.sgi.com>
-
- * elf32-mips.c: Include elf32-target.h again for the traditional
- MIPS targets.
-
-2000-07-03 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup):
- Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings.
- (avr_info_to_howto_rela): Likewise.
- (elf32_avr_gc_mark_hook): Likewise.
- (elf32_avr_gc_sweep_hook): Likewise.
- (elf32_avr_relocate_section): Likewise.
-
-2000-07-03 Mark Elbrecht <snowball3@bigfoot.com>
-
- * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into
- an external symbol for a non-shared, non-relocatable link.
-
-2000-07-03 Nick Clifton <nickc@redhat.com>
-
- * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol
- is an external symbol.
- (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak
- external symbol.
-
-2000-07-03 Kazu Hirata <kazu@hxi.com>
-
- * reloc16.c: Fix formatting.
-
-2000-07-01 Koundinya K <kk@ddeorg.soft.net>
-
- * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4*
- to add a new target for traditional mips i.e
- bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec.
- * configure.in: Likewise.
- * configure: Rebuild.
- * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in
- bfd_target_vector.
- (bfd_elf32_tradlittlemips_vec): Likewise.
- * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test
- to see that elfNN_bed does not get redefined even if the target file
- is included twice for a chip. See elf32-mips.c.
-
-2000-07-01 Alan Modra <alan@linuxcare.com.au>
-
- * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
- (CLEANFILES): Add DEPA.
- * Makefile.in: Regenerate.
-
-2000-06-30 DJ Delorie <dj@cygnus.com>
-
- * peicode.h (coff_swap_filehdr_in): can't use e_magic because we
- can't assume the PE header is at 0x80.
-
-2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
-
- * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH.
-
-2000-06-28 Mark Elbrecht <snowball3@bigfoot.com>
-
- * go32stub.h: Update stub.
-
-2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * archures.c (bfd_mach_avr5): Define.
- * bfd-in2.h (bfd_mach_avr5): Define.
- * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to
- bfd_mach_avr5, add bfd_mach_avr4. Update comments.
- (compatible): Update comment. Add missing test.
- * elf32-avr.c (avr_final_link_relocate): Support 8K wrap
- for avr2 and avr4. Simplify 8K wrap code.
- (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5.
- (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5.
-
-2000-06-26 Kazu Hirata <kazu@hxi.com>
-
- * coff-h8300.c: Fix formatting.
- * cpu-h8300.c: Likewise.
-
-2000-06-24 Alexandre Oliva <aoliva@redhat.com>
-
- * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)'
- for local symbols whose names are unknown.
-
-2000-06-22 Alan Modra <alan@linuxcare.com.au>
-
- * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
- find one.
- * Makefile.in: Regenerate.
- * doc/Makefile.in: Regenerate.
-
-2000-06-20 H.J. Lu <hjl@gnu.org>
-
- * Makefile.am: Rebuild dependency.
- * Makefile.in: Rebuild.
-
-2000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
-
- * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function.
- (elf_backend_copy_indirect_symbol): Map to the new function.
-
-2000-06-20 Alan Modra <alan@linuxcare.com.au>
-
- * archive.c (normalize): Correct pointer comparison when checking
- for backslashes.
- (bfd_bsd_truncate_arname): Likewise.
- (bfd_gnu_truncate_arname): Likewise.
-
-2000-06-20 Ulf Carlsson <ulfc@engr.sgi.com>
-
- * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual
- sections elf_{text,data}_{section,symbol}.
- * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove.
- (_bfd_mips_elf_hide_symbol): New function.
- (elf_backend_hide_symbol): Map to the new function.
- (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD
- definitions of mips_elf_{text,data}_{section,symbol}.
- (mips_elf_local_relocation_p): Try to find the direct symbol
- based on new check_forced argument.
- (mips_elf_calculate_relocation): Use new version of
- mips_elf_local_relocation_p.
- (mips_elf_relocate_section): Likewise.
- (_bfd_mips_elf_relocate_section): Likewise.
- (mips_elf_sort_hash_table): Only assert that have enough GOT
- space.
- (mips_elf_got16_entry): Match all 32 bits to the existing GOT
- entry if the relocation based on the new external argument.
- (mips_elf_create_dynamic_relocation): Assert that we have a
- section contents allocated where we can swap out the dynamic
- relocations.
- (mips_elf_calculate_relocation): Find the real hash-table entry
- correctly by using h->root.root.type. Only create a dynamic
- relocation entry if the symbol is defined in a shared library.
- Create an external GOT entry for the GOT16 relocation if the
- symbol was forced local.
- (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a
- dynamic index if the symbol was forced local.
-
-2000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
-
- * elf32-mips.c: Fix typos in comments.
-
-2000-06-19 Mark Kettenis <kettenis@gnu.org>
-
- * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef
- CORE_VERSION_1.
-
-2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
-
- * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild.
- * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS,
- BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files.
- * configure.in (bfd_elf32_m68hc12_vec): Recognize.
- (bfd_elf32_m68hc11_vec): Likewise.
- * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11.
- Supports 68hc11 & 68hc12 at the same time.
- * targets.c (bfd_elf32_m68hc12_vec): Declare and put in
- bfd_target_vector.
- (bfd_elf32_m68hc11_vec): Likewise.
- * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11.
- * archures.c (bfd_m68hc12_arch): Define and register in global list
- (bfd_m68hc11_arch): Likewise.
- * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8,
- BFD_RELOC_M68HC11_3B): Define.
- * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support.
- * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support.
-
-2000-06-18 Ulf Carlsson <ulfc@engr.sgi.com>
-
- * elf_bfd.h (struct elf_backend_data): Add info argument to
- elf_backend_hide_symbol.
- (_bfd_elf_link_hash_hide_symbol): Likewise.
- * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise.
- * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise.
- * elflink.h (elf_link_add_object_symbols): Likewise.
- (elf_link_assign_sym_version): Likewise.
-
-2000-06-18 H.J. Lu <hjl@gnu.org>
-
- * coff-i386.c (coff_i386_reloc): Don't return in case of
- output_bfd == (bfd *) NULL if COFF_WITH_PE is defined.
- Compensate PE relocations when linking with non-PE object
- files to generate a non-PE executable.
-
-2000-06-17 Ulf Carlsson <ulfc@engr.sgi.com>
-
- * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write
- GOT entries if we're doing a static link or -Bsymbolic link.
-
-2000-06-15 Ulf Carlsson <ulfc@engr.sgi.com>
-
- * elflink.h (elf_link_adjust_relocs): Check for and call backend
- specifific swap_reloc_{in,out} and swap_reloca_{in,out} if
- available.
- (elf_link_output_relocs): Likewise.
- (elf_reloc_link_order): Likewise.
-
-2000-06-16 Nicholas Duffek <nsd@redhat.com>
-
- * archures.c (enum bfd_architecture): #define constants for
- PowerPc and RS6000 machine numbers.
- * bfd-in2.h: Regenerate.
- * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch
- to bfd_arch_powerpc instead of bfd_arch_rs6000. Refer to PowerPc
- and RS6000 machine numbers using #defined constants from
- archures.c.
- * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000
- machine numbers using #defined constants from archures.c. Add
- entries for EC603e, 630, A35, RS64II, RS64III, 7400. Specify
- 64-bit words in 620 entry.
- * cpu-rs6000.c (arch_info_struct): Create with entries for RS1,
- RSC, and RS2.
- (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k).
-
-2000-06-16 Nicholas Duffek <nsd@cygnus.com>
-
- * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64.
- * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field.
- * libcoff.h (struct xcoff_tdata): Define xcoff64 field.
-
-2000-06-16 Nicholas Duffek <nsd@redhat.com>
-
- * bfd-in.h (bfd_family_coff): Define.
- * bfd-in2.h: Regenerate.
- * coffgen.c (coff_count_linenumbers, coff_symbol_from,
- coff_find_nearest_line): Check COFFness using bfd_family_coff()
- instead of bfd_target_coff_flavour.
- * cofflink.c (_bfd_coff_final_link): Likewise.
- * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to
- exclude XCOFF files.
- * reloc.c (bfd_perform_relocation, bfd_install_relocation):
- Likewise.
- * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour.
- * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour.
- * xcofflink.c (XCOFF_XVECP): Delete.
- (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol,
- bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc,
- bfd_xcoff_record_link_assignment,
- bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with
- check for bfd_target_xcoff_flavour.
-
-2000-06-16 Nicholas Duffek <nsd@redhat.com>
-
- * rs6000-core.c: Support 64-bit core files, support pre-4.3 core
- files on AIX 4.3.
- (read_hdr): New function.
- (rs6000coff_core_p): Store mstsave or __context64 struct instead
- of trying to extract individual registers. Set abfd->arch_info
- to match the architecture that created the core file.
- (rs6000coff_get_section_contents): Delete.
- * xcoff-target.h (rs6000coff_get_section_contents): Delete.
-
-2000-06-14 H.J. Lu <hjl@gnu.org>
-
- * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec)
- is NULL.
-
-2000-06-13 H.J. Lu <hjl@gnu.org>
-
- * configure: Regenerate.
-
-2000-06-13 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of
- armpei_little_vec.
-
-2000-06-08 David O'Brien <obrien@FreeBSD.org>
-
- * configure.in (VERSION): Update to show this is the CVS mainline.
-
-2000-06-07 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-d10v.c: Include elf/d10v.h
- (enum reloc_type): Delete.
- * elf32-d30v.c: Include elf/d30v.h
- (enum reloc_type): Delete.
-
- * Makefile.am: Run "make dep-am" to regenerate dependencies.
- * Makefile.in: Regenerate.
-
- * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs.
- (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and
- move HOWTOs into elf_howto_table.
- (R_386_standard, R_386_ext_offset): Define.
- (R_386_ext, R_386_vt_offset, R_386_vt): Define.
- (elf_i386_reloc_type_lookup): Modify calculation of index into
- elf_howto_table since we've removed the padding.
- (elf_i386_info_to_howto_rel): Likewise.
- (elf_i386_relocate_section): Likewise.
-
-2000-06-06 Michael Snyder <msnyder@seadog.cygnus.com>
-
- * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t.
-
-2000-06-05 H.J. Lu <hjl@gnu.org>
-
- * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag
- an error when seeing an undefined symbol with hidden/internal
- attribute. It is handled in *_relocate_section ().
-
-2000-06-05 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_fix_symbol_flags): Follow the link for the
- indirect symbol for the ELF_LINK_NON_ELF bit.
- (elf_link_output_extsym): Don't output the indirect symbol even
- if the ELF_LINK_NON_ELF bit is set.
-
-2000-06-01 J.T. Conklin <jtc@redback.com>
-
- * config.bfd (i[3456]86-*-netbsdelf*): New target.
- (i[3456]86-*-netbsdaout*): New target.
- (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs.
- (i[3456]86-*-openbsd*): Likewise.
-
-2000-05-30 Andrew Cagney <cagney@b1.cygnus.com>
-
- * trad-core.c: From hpux-core.c, include <dirent.h> or
- <sys/ndir.h> when possible.
-
-2000-05-31 Ulrich Drepper <drepper@redhat.com>
-
- * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version
- definitions. We must not assume they are sorted in the file
- according to their index numbers.
-
-2000-05-31 Alan Modra <alan@linuxcare.com.au>
-
- * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field
- selector for R_PARISC_PCREL17R. R_PARISC_DIR17R and
- R_PARISC_DIR17F are for absolute branches; Handle them as such.
-
-2000-05-30 Nick Clifton <nickc@cygnus.com>
-
- * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB,
- 80960CA, 80960MC as valid machine names.
-
-2000-05-30 H.J. Lu <hjl@gnu.org>
-
- * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the
- visibility bits if the symbol is undefined. Correctly handle
- weak undefined symbols with hidden and internal attributes.
-
- * elflink.h (elf_link_add_object_symbols): Always turn the
- symbol into local if it has the hidden or internal attribute.
-
-2000-05-29 Philip Blundell <philb@gnu.org>
-
- * ppcboot.c: Add packed attribute if compiling with GCC.
-
-2000-05-29 Anatoly Vorobey <mellon@pobox.com>
-
- * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal.
-
-2000-05-26 Michael Snyder <msnyder@seadog.cygnus.com>
-
- * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus,
- elfcore_grok_psinfo): Add code to allow debugging a 32-bit
- corefile on a 64-bit (Sparc Solaris) host. Also clean up
- a few old comments.
-
-2000-05-26 Alan Modra <alan@linuxcare.com.au>
-
- * Makefile.am: Update dependencies with "make dep-am"
- * Makefile.in: Regenerate.
-
- * sysdep.h (gettext, dgettext, dcgettext, textdomain,
- bindtextdomain): Replace defines with those from intl/libgettext.h
- to quieten gcc warnings.
-
-2000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
-
- * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH.
-
- * archive.c (normalize, bfd_bsd_truncate_arname,
- bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support
- file names with backslashes.
-
- * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file
- before opening it.
-
- * sysdep.h: Include filenames.h.
-
-2000-05-26 Alan Modra <alan@linuxcare.com.au>
-
- * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777.
-
-2000-05-26 Jakub Jelinek <jakub@redhat.com>
-
- * elf64-sparc.c (sparc64_elf_relax_section): New.
- (sparc64_elf_relocate_section): Optimize tail call into branch always
- if possible.
- * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
- (elf32_sparc_relax_section): New.
-
-2000-05-26 Jakub Jelinek <jakub@redhat.com>
-
- * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters.
- Remove unusued variables.
- (sparc64_elf_relocate_section): Change r_symndx type to unsigned long.
- (sparc64_elf_merge_private_bfd_data): Fix shared library case from
- previous fix, so that shared libs really don't influence targets
- extension mask and memory model.
-
-2000-05-23 H.J. Lu <hjl@gnu.org>
-
- * elf64-alpha.c (elf64_alpha_relocate_section): Check
- h->root.other not h->other.
- * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
-
- * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo.
-
-2000-05-23 H.J. Lu <hjl@gnu.org>
-
- * elf32-i386.c (elf_i386_relocate_section): Don't allow the
- undefined symbol with the non-default visibility attributes.
- * elf-hppa.h (elf_hppa_relocate_section): Likewise.
- * elf32-arm.h (elf32_arm_relocate_section): Likewise.
- * elf32-i370.c (i370_elf_relocate_section): Likewise.
- * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
- * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
- * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
- * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
- * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
- * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
- * elf64-ia64.c (elf64_ia64_relocate_section): Likewise.
- * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
-
-2000-05-22 Richard Henderson <rth@cygnus.com>
-
- * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI,
- PCREL22, PCREL64I. Zero size of special relocs.
- (elf64_ia64_reloc_type_lookup): Likewise.
- (USE_BRL, oor_brl, oor_ip): New.
- (elf64_ia64_relax_section): New.
- (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I.
- (elf64_ia64_install_value): Likewise, plus PCREL21BI.
- (elf64_ia64_relocate_section): Likewise.
- (bfd_elf64_bfd_relax_section): New.
- * reloc.c (BFD_RELOC_IA64_PCREL21BI): New.
- (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New.
- * bfd-in2.h, libbfd.h: Regenerate.
-
-2000-05-22 Nick Clifton <nickc@cygnus.com>
-
- * configure.in : Add peigen.lo to MIPS PE targets.
- * configure: Regenerate.
-
-2000-05-22 Momchil Velikov <velco@fadata.bg>
-
- * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess
- only if it is known for both input and output bfds. Separate
- error message strings as in some languages, it may be necessary
- to change more than one place in the string to change between
- 'big' and 'little'.
-
- * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline
- endianess checks, call _bfd_generic_verify_endian_match() instead.
-
- * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise.
-
- * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise.
-
- * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify
- endianess before checking bfd flavours.
-
-2000-05-22 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_link_output_extsym): Clear the visibility
- field for symbols not defined locally.
-
-2000-05-18 Alan Modra <alan@linuxcare.com.au>
-
- * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
- re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
- (hppa_rebuild_insn): Mask immediate bits here instead.
- * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
-
-2000-05-18 Momchil Velikov <velco@fadata.bg>
-
- * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting
- relocs for an executable, ensure that they are virtual addresses.
-
-2000-05-18 Jeffrey A Law (law@cygnus.com)
-
- * config.bfd (hppa*64*-*-hpux11*): New target triplet.
-
-2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
- Rick Gorton <gorton@scrugs.lkg.dec.com>
-
- * elflink.h: Add emitrelocations support: when enabled, relocation
- information and relocation sections are put into final output
- executables. If the emitrelocations flag is set, do the following:
- (elf_bfd_final_link): Emit relocation sections.
- (elf_link_input_bfd): Compute relocation section contents.
- (elf_gc_sections): Don't clean relocation sections.
-
-2000-05-16 Catherine Moore <clm@cygnus.com>
-
- * som.c (som_decode_symclass): Recognize weak symbols.
-
-2000-05-16 Szabolcs Szakacsits <szaka@F-Secure.com>
-
- * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that
- read idata section only from dataoff.
- (pe_print_edata): Correctly check for valid eat_member.
-
-2000-05-16 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
-
-2000-05-14 Philip Blundell <philb@gnu.org>
-
- * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets.
-
-2000-05-12 Alan Modra <alan@linuxcare.com.au>
-
- * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec
-
- * peigen.c (pe_print_idata): Look for .idata section and print
- info even if data directory has zero entries. Read idata section
- starting from dataoff, and adjust all data offsets to suit. Cast
- all bfd_vma vars to unsigned long before passing to fprintf.
- * peigen.c (pe_print_edata): Similarly, look for .edata section
- and print info even if data directory has zero entries. Cast
- all bfd_vma vars to unsigned long before passing to fprintf.
-
- From Szabolcs Szakacsits <szaka@F-Secure.com>
- * peigen.c (pe_print_idata): Use bfd_section_size rather than data
- directory size which may be bogus.
- * peigen.c (pe_print_edata): Similarly.
-
-2000-05-09 Alan Modra <alan@linuxcare.com.au>
-
- * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela
- section is empty.
- (copy_private_bfd_data): Allow for space possibly taken up by elf
- headers when calculating segment physical address from lma.
-
-2000-05-08 Alan Modra <alan@linuxcare.com.au>
-
- * versados.c (versados_scan): Init stringlen and pass_2_done.
-
- * trad-core.c (trad_unix_core_file_p): Return
- bfd_error_wrong_format rather than bfd_error_file_truncated.
-
- * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to
- add_data_entry. DataDirectory virtual address is relative.
- (pe_print_idata): Account for relative DataDirectory virtual
- addresses. Don't trash datasize inside POWERPC_LE_PE code.
- (pe_print_edata): Similarly.
-
- From Szabolcs Szakacsits <szaka@F-Secure.com>
- * peigen.c (dir_names): Add Delay Import Directory.
- (pe_print_idata): Always search for bfd section containing
- idata address rather than looking up section name. Print this
- section name rather than .idata.
- (pe_print_edata): Similarly. Also print some fields as %08lx.
- (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as
- Win32Version.
-
-2000-05-05 Clinton Popetz <cpopetz@cygnus.com>
-
- * xcoff.h: Rename to xcoff-target.h
- * Makefile.am: Change all instances of xcoff.h to xcoff-target.h
- * coff-rs6000.c: Ditto.
- * coff64-rs6000.c: Ditto.
- * coff-pmac.c: Ditto.
- * Makefile.in: Regenerate.
-
-2000-05-05 Clinton Popetz <cpopetz@cygnus.com>
-
- * coffcode.h (coff_set_arch_mach_hook, coff_set_flags):
- Change U802TOC64MAGIC to U803XTOCMAGIC.
-
-2000-05-04 Michael Snyder <msnyder@seadog.cygnus.com>
-
- * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1.
- * bfd-in.h: Prototype bfd_elf_get_arch_size.
- * bfd-in2.h: Prototype bfd_elf_get_arch_size.
-
-2000-05-04 Alan Modra <alan@linuxcare.com.au>
-
- * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma.
-
-2000-05-03 Martin v. Löwis <loewis@informatik.hu-berlin.de>
-
- * elflink.h (elf_link_add_object_symbols): Reset dynindx for
- hidden and internal symbols.
- (elf_fix_symbol_flags): Clear NEEDS_PLT for symbols with
- visibility.
- * elflink.c (_bfd_elf_link_record_dynamic_symbol): Do not
- assign a PLT or GOT entry to symbols with hidden and
- internal visibility.
-
-2000-05-03 Mark Elbrecht <snowball3@bigfoot.com>
-
- * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add entry for
- the .bss section.
- * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
-
-2000-05-02 H.J. Lu <hjl@gnu.org>
-
- * elf.c (prep_headers): Use ELFOSABI_NONE instead of
- ELFOSABI_SYSV.
-
-2000-05-02 Alan Modra <alan@linuxcare.com.au>
-
- * targets.c (bfd_target_vector): Restore bfd_elf32_hppa_vec.
- * Makefile.am (BFD32_BACKENDS): Restore elf32-hppa.lo. Regenerate
- dependencies.
- * Makefile.in: Regenerate.
-
-2000-05-01 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.am (BFD32_BACKENDS): Add efi-app-ia32.lo.
- (BFD32_BACKENDS_CFILES): Add efi-app-ia32.c.
- (BFD64_BACKENDS): Delete coff-ia64.lo. Add efi-app-ia64.lo.
- (BFD64_BACKENDS_CFILES): Delete coff-ia64.c. Add efi-app-ia64.c.
- * Makefile.in: Rebuild.
-
-2000-05-02 Alan Modra <alan@linuxcare.com.au>
-
- * config.bfd: Re-enable elf32-hppa. It now compiles, even if it
- doesn't work very well.
-
- * elf-hppa.h (elf_hppa_internal_shdr): Define.
- (elf_hppa_fake_sections): hdr is elf_hppa_internal_shdr.
- Set hdr->s_type to 1 if ARCH_SIZE == 32.
- (_bfd_elf_hppa_gen_reloc_type): Add prototype.
- (elf_hppa_info_to_howto): Likewise.
- (elf_hppa_info_to_howto_rel): Likewise.
- (elf_hppa_reloc_type_lookup): Likewise.
- (elf_hppa_is_local_label_name): Likewise.
- (elf_hppa_fake_sections): Likewise.
- (elf_hppa_final_write_processing): Likewise.
- (elf_hppa_howto_table): Fully initialise all entries.
- (_bfd_elf_hppa_gen_reloc_type): Add ATTRIBUTE_UNUSED to args.
- (elf_hppa_info_to_howto): Likewise.
- (elf_hppa_info_to_howto_rel): Likewise.
- (elf_hppa_reloc_type_lookup): Likewise.
- (elf_hppa_final_write_processing, elf_hppa_add_symbol_hook,
- elf_hppa_unmark_useless_dynamic_symbols,
- elf_hppa_remark_useless_dynamic_symbols,
- elf_hppa_record_segment_addrs, elf_hppa_final_link,
- elf_hppa_relocate_section, elf_hppa_final_link_relocate,
- elf_hppa_relocate_insn): Compile only if ARCH_SIZE == 64 until
- elf32-hppa.c mess is cleaned up.
- (elf_hppa_final_link_relocate): Make insn and r_type unsigned
- int. Delete r_field. In case R_PARISC_PCREL21L, don't set
- r_field then call hppa_field_adjust inline func with variable
- r_field arg, instead call hppa_field_adjust with fixed arg.
- In case R_PARISC_PCREL22F, don't set r_field.
- (elf_hppa_relocate_insn): Change args and return type to unsigned
- int. Call re_assemble_* funcs to do the work.
-
- * elf32-hppa.c (hppa_elf_relocate_insn): Don't assume 32 bit when
- sign extending.
-
- * libhppa.h (HPPA_R_CONSTANT): Don't assume 32 bit when sign
- extending.
- (sign_extend): Mask first before sign extending.
- (low_sign_extend): Rewrite without condition expression.
- (ones, dis_assemble_3, dis_assemble_12, dis_assemble_16,
- dis_assemble_17, dis_assemble_21, dis_assemble_22): Delete.
- (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a,
- assemble_17, assemble_21, sign_unext, low_sign_unext): Return
- result as function return value rather than through pointer arg.
- Accept unsigned int args, and return unsigned int.
- (re_assemble_3): New. Combines function of dis_assemble_3 with
- re-assembly of opcode and immediate.
- (re_assemble_12): Likewise.
- (re_assemble_16): Likewise.
- (re_assemble_17): Likewise.
- (re_assemble_21): Likewise.
- (re_assemble_22): Likewise.
- (hppa_field_adjust): Rewrite and document, paying attention to
- size of types and signed/unsigned issues.
- (get_opcode): Shift before masking.
- (FDLW): Rename to FLDW.
- (bfd_hppa_insn2fmt): Change arg to unsigned int. Delete fmt.
- (hppa_rebuild_insn): Change args and return value to unsigned
- int. Make use of re_assemble_*. Correct case 11.
-
- * dep-in.sed: Handle ../opcodes/.
- * Makefile.am (SOURCE_HFILES): Add elf-hppa.h, elf32-hppa.h,
- elf64-hppa.h, hppa_stubs.h, xcoff.h.
- (BFD32_BACKENDS_CFILES): Restore elf32-hppa.c.
- Remove elf64-hppa.lo, cpu-ia64.lo, elf64-ia64.lo, elfarm-oabi.lo,
- elfarm-nabi.lo dependencies outside of auto-dependency area.
- Regenerate dependencies.
- * Makefile.in: Regenerate.
-
- * configure.in (TRAD_HEADER): Test non-null before
- AC_DEFINE_UNQUOTED.
- * configure: Regenerate.
-
- * reloc.c: Fix mis-spelling in comment.
-
-2000-05-01 Alan Modra <alan@linuxcare.com.au>
-
- * coff-sh.c (bfd_coff_small_swap_table): Fix Fri Apr 28 change.
- * vms.c (vms_openr_next_archived_file): Return NULL.
-
-2000-04-28 Clinton Popetz <cpopetz@cygnus.com>
-
- * coffcode.h Copy changes mistakenly done to libcoff.h in
- 4/24/2000 patch.
-
-2000-04-29 Andreas Jaeger <aj@suse.de>
-
- * libbfd-in.h: Correctly check GCC version.
- * bfd-in.h: Likewise.
- * libhppa.h: Likewise.
- * libbfd.h: Regenerate.
- * bfd-in2.h: Regenerate.
-
-2000-04-28 Clinton Popetz <cpopetz@cygnus.com>
-
- * Makefile.am (BFD64_BACKENDS, BFD64_BACKENDS_CFILES): Add
- coffdu-rs6000.{lo,c}.
- (coff-pmac.lo, coff-rs6000.lo, coff64-rs6000.lo): Add dependency
- on xcoff.h
- * Makefile.in: Regenerate.
- * xcoff.h: New file.
- * coff-pmac.c: Use xcoff.h instead of coff-rs6000.c.
- * coff-rs6000.c: Move all declarations and defines that are
- common to the xcoff backends into xcoff.h
- * coff64-rs6000.c: Ditto,
-
-2000-04-28 Clinton Popetz <cpopetz@cygnus.com>
-
- * coff-mips.c (mips_ecoff_backend_data): Add initialization of
- _bfd_coff_force_symnames in strings and
- _bfd_coff_debug_string_prefix_length to their default values.
- * coff-sh.c: (bfd_coff_small_swap_table): Ditto.
-
-2000-04-28 Clinton Popetz <cpopetz@cygnus.com>
-
- * coff-alpha.c (alpha_ecoff_backend_data): Add initialization of
- _bfd_coff_force_symnames in strings and
- _bfd_coff_debug_string_prefix_length to their default values.
-
-2000-04-27 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-m68k.c (elf_m68k_gc_sweep_hook): Return if dynobj NULL.
- Check local_got_refcounts before dereferencing.
-
- * elf32-ppc.c (ppc_elf_relocate_section): Check splt != NULL
- before deciding we don't need R_PPC_PLT32 relocation.
- (ppc_elf_gc_sweep_hook): Check local_got_refcounts before
- dereferencing.
-
- * elflink.h (elf_gc_common_finalize_got_offsets): Fix comment.
-
- * elf32-i386.c (elf_i386_check_relocs): Reference count .got and
- .plt entries.
- (elf_i386_gc_sweep_hook): Garbage collect .got and .plt entries.
- (elf_i386_adjust_dynamic_symbol): Recognize unused .plt entries.
- (elf_i386_relocate_section): Allow for .plt to go missing.
- (elf_i386_finish_dynamic_symbol): Use same test to decide if we
- can use a relative reloc for got as elf_i386_relocate_section.
- (bfd_elf32_bfd_final_link): Define to use gc form of final link.
-
-2000-04-26 Clinton Popetz <cpopetz@cygnus.com>
-
- * config.bfd: Remove extraneous bfd_powerpc_64_arch.
-
-2000-04-24 Clinton Popetz <cpopetz@cygnus.com>
-
- * Makefile.am (coff64-rs6000.lo): New rule.
- * Makefile.in: Regenerate.
- * coff-rs6000.c (xcoff_mkobject, xcoff_copy_private_bfd_data,
- xcoff_is_local_label_name, xcoff_rtype2howto,
- xcoff_reloc_type_lookup, xcoff_slurp_armap, xcoff_archive_p,
- xcoff_read_ar_hdr, xcoff_openr_next_archived_file, xcoff_write_armap,
- xcoff_write_archive_contents): No longer static, and prefix with _bfd_.
- (NO_COFF_SYMBOLS): Define.
- (xcoff64_swap_sym_in, xcoff64_swap_sym_out, xcoff64_swap_aux_in,
- xcoff64_swap_aux_out): New functions; handle xcoff symbol tables
- internally.
- (MINUS_ONE): New macro.
- (xcoff_howto_tabl, xcoff_reloc_type_lookup): Add 64 bit POS
- relocation.
- (coff_SWAP_sym_in, coff_SWAP_sym_out, coff_SWAP_aux_in,
- coff_SWAP_aux_out): Map to the new functions.
- * coff64-rs6000.c: New file.
- * libcoff.h (bfd_coff_backend_data): Add new fields
- _bfd_coff_force_symnames_in_strings and
- _bfd_coff_debug_string_prefix_length.
- (bfd_coff_force_symnames_in_strings,
- bfd_coff_debug_string_prefix_length): New macros for above fields.
- * coffcode.h (coff_set_arch_mach_hook): Handle XCOFF64 magic.
- Set machine to 620 for XCOFF64. Use bfd_coff_swap_sym_in instead
- of using coff_swap_sym_in directly.
- (FORCE_SYMNAMES_IN_STRINGS): New macro, defined for XCOFF64.
- (coff_set_flags) Set magic for XCOFF64.
- (coff_compute_section_file_positions): Add symbol name length to
- string section length if bfd_coff_debug_string_prefix_length is
- true.
- (coff_write_object_contents): Don't do reloc overflow for XCOFF64.
- (coff_slurp_line_table): Use bfd_coff_swap_lineno_in instead of
- using coff_swap_lineno_in directly.
- (bfd_coff_backend_data): Add _bfd_coff_force_symnames_in_strings
- and _bfd_coff_debug_string_prefix_length fields.
- * coffgen.c (coff_fix_symbol_name, coff_write_symbols): Force
- symbol names into strings table when
- bfd_coff_force_symnames_in_strings is true.
- * coffswap.h (MAX_SCNHDR_NRELOC, MAX_SCNHDR_NLNNO, GET_RELOC_VADDR,
- SET_RELOC_VADDR): New macros.
- (coff_swap_reloc_in, coff_swap_reloc_out): Use above macros.
- (coff_swap_aux_in, coff_swap_aux_out): Remove RS6000COFF_C
- code.
- (coff_swap_aouthdr_in, coff_swap_aouthdr_out): Handle XCOFF64
- changes within RS6000COFF_C specific code.
- (coff_swap_scnhdr_out): Use PUT_SCNHDR_NLNNO, PUT_SCNHDR_NRELOC,
- MAX_SCNHDR_NRELOC, and MAX_SCNHDR_NLNNO.
- * reloc.c (bfd_perform_relocation, bfd_install_relocation):
- Extend existing hack on target name.
- * xcofflink.c (XCOFF_XVECP): Extend existing hack on
- target name.
- * coff-tic54x.c (ticof): Keep up to date with new fields
- in bfd_coff_backend_data.
- * config.bfd: Add bfd_powerpc_64_arch to targ_arch and define
- targ_selvecs to include rs6000coff64_vec for rs6000.
- * configure.in: Add rs6000coff64_vec case.
- * cpu-powerpc.c: New bfd_arch_info_type.
-
-2000-04-24 Jeffrey A Law (law@cygnus.com)
-
- * config.bfd: Only disable elf32-hppa vectors, not all of the
- BSD and OSF configuration support. Provide (disabled) clauses
- for PA64 support.
- * configure.in: Add clause for PA64 support.
- * configure: Rebuilt.
-
- * targets.c (bfd_target_vector): Add bfd_elf64_hppa_vec.
- (bfd_elf64_hppa_vec): Declare.
-
- * Makefile.am (BFD64_BACKENDS): Add elf64-hppa.lo
- (BFD64_BACKENDS_CFILES): Add elf64-hppa.c
- (elf64-hppa.lo): Add dependencies.
- * Makefile.in: Rebuilt.
-
- * elf64-hppa.c, elf64-hppa.h: New files with PA64 support.
-
-2000-04-24 Jason Eckhardt <jle@cygnus.com>
-
- * libhppa.h (dis_assemble_16): New function.
- (pa_arch): Added pa20w element.
-
-2000-04-24 Ulrich Drepper <drepper@cygnus.com>
-
- * elf-bfd.h: Add prototypes for bfd_elf32_write_relocs,
- bfd_elf32_slurp_reloc_table, bfd_elf64_write_relocs, and
- bfd_elf64_slurp_reloc_table.
-
- * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): New
- definitions to get external names.
- (elf_write_relocs): Renamed from write_relocs and make global.
- (elf_slurp_reloc_table): Make global.
- (_bfd_elf,size_info): Use elf_write_relocs instead of write_relocs.
-
- * archive.c (hpux_uid_gid_encode): New function.
- (bfd_ar_hdr_from_filesystem): Use it if HPUX_LARGE_AR_IDS is
- defined and the ID is greater than 99999.
- (bfd_generic_stat_arch_elt): If HPUX_LARGE_AR_IDS is defined decode
- special uid/gid fields into 32 bit values.
-
-2000-04-21 Matthew Green <mrg@cygnus.com>
-
- * config.bfd: Add NetBSD/sparc64 support.
-
-Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
- David Mosberger <davidm@hpl.hp.com>
- Timothy Wall <twall@cygnus.com>
- Jim Wilson <wilson@cygnus.com>
-
- * Makefile.am (ALL_MACHINES): Add cpu-ia64.lo.
- (ALL_MACHINES_CFILES): Add cpu-ia64.c.
- (BFD64_BACKENDS): Add elf64-ia64.lo.
- (BFD64_BACKENDS_CFILES): Add elf64-ia64.c.
- (cpu-ia64.lo, elf64-ia64.lo): New rules.
- * Makefile.in: Rebuild.
- * archures.c (enum bfd_architecture): Add bfd_arch_ia64.
- (bfd_ia64_arch): Declare.
- (bfd_archures_list): Add bfd_ia64_arch.
- * bfd-in2.h: Rebuild.
- * config.bfd: (ia64*-*-linux-gnu*, ia64*-*-elf*): New targets.
- * configure: Rebuild.
- * configure.host: (ia64-*-linux*): New host.
- * configure.in (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec,
- bfd_efi_app_ia64_vec, bfd_efi_app_ia64_vec): New vectors.
- * elf.c (prep_headers): Add bfd_arch_ia64.
- * libbfd.h: Rebuild.
- * reloc.c: Add IA-64 relocations.
- * targets.c (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec):
- Declare.
- (bfd_target_vect): Add bfd_elf64_ia64_little_vec.
- * cpu-ia64-opc.c, cpu-ia64.c, elf64-ia64.c: New files.
-
-2000-04-21 Richard Henderson <rth@cygnus.com>
-
- * elf32-d30v.c (bfd_elf_d30v_reloc): Don't modify section
- contents when performing a partial link.
- (bfd_elf_d30v_reloc_21): Likewise.
-
-2000-04-20 H.J. Lu <hjl@gnu.org>
-
- * elf32-i386.c (elf_i386_relocate_section): Restrict 1998-12-10
- patch to symbols defined by a shared object.
- * elf32-ppc.c (ppc_elf_relocate_section): Similarly.
-
-2000-04-19 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- K&R compiler fixes.
- * dwarf2.c (concat_filename): Avoid string literal concatenation.
- * ieee.c (ieee_get_symtab): Don't initialise union in struct.
-
-Mon Apr 17 19:14:36 2000 David Mosberger <davidm@hpl.hp.com>
-
- * Makefile.am (BFD64_BACKENDS): Mention coff-ia64.lo.
- (BFD64_BACKENDS_CFILES): Mention coff-ia64.c
- (coff-ia64.lo): Add dependency.
- * Makefile.in: Regenerate.
- * coff-ia64.c: New file.
- * efi-app-ia32.c: Ditto.
- * efi-app-ia64.c: Ditto.
- * coffcode.h (coff_set_arch_mach_hook): Handle IA64MAGIC.
- (coff_set_flags): Ditto.
- (coff_write_object_contents) [IA64]: Set magic number to ZMAGIC.
- * config.bfd (i[3456]86-*-linux-gnu*): Mention bfd_efi_app_ia32_vec.
- * configure.in (elf): Handle bfd_efi_app_ia32 and bfd_efi_app_ia64_vec.
- * configure: Regenerate.
- * libpei.h (GET_OPTHDR_IMAGE_BASE): New macro.
- (PUT_OPTHDR_IMAGE_BASE): Ditto.
- (GET_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto.
- (PUT_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto.
- (GET_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto.
- (PUT_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto.
- (GET_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto.
- (PUT_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto.
- (GET_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto.
- (PUT_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto.
- (GET_PDATA_ENTRY): Ditto.
- * peigen.c (_bfd_pei_swap_aouthdr_in) [COFF_WITH_PEP64]: Don't read
- data_start. Use above macros to read fields that are 64 bit wide for
- COFF_WITH_PEP64. Don't truncate entry and text_start to 32 bits.
- (_bfd_pei_swap_aouthdr_out) [PEI_FORCE_MINIMUM_ALIGNMENT]: Force
- FileAlignment and SectionAlignment to minimum alignment if they
- are zero.
- (_bfd_pei_swap_aouthdr_out) [PEI_DEFAULT_TARGET_SUBSYSTEM]: Set
- Subsystem to default PEI_DEFAULT_TARGET_SUBSYSTEM.
- (_bfd_pei_swap_aouthdr_out) [COFF_WITH_PEP64]: Don't set data_start.
- Use above macros to write fields that are 64 bit wide for
- COFF_WITH_PEP64.
- (pe_print_pdata): Set PDATA_ROW_SIZE to 3*8 for COFF_WITH_PEP64,
- 5*4 otherwise. This should be right for IA-32 and IA-64, but may
- be wrong for platforms. Use PDATA_ROW_SIZE instead of hardcoded
- value of 20 bytes. Modify printing for COFF_WITH_PEP64 to print
- begin address, end address, and unwind info address only. Use
- GET_PDATA_ENTRY() to read .pdata entries. Use fprintf_vma() to
- print addresses.
- (tbl): Add SECTION, REL32, RESERVED1, MIPS_JMPADDR16, DIR64, and
- HIGH3ADJ relocation names.
- (_bfd_pe_print_private_bfd_data): Print Subsystem name in legible form.
- * targets.c: Declare bfd_efi_app_ia32_vec and
- bfd_efi_app_ia64_vec.
- (bfd_target_vector): Mention bfd_efi_app_ia32_vec and
- bfd_efi_app_ia64_vec.
-
-2000-04-17 Timothy Wall <twall@cygnus.com>
-
- * bfd-in2.h: Add prototypes for tic54x load page access.
- * bfd-in.h: Regenerate.
- * coff-tic54x.c: Add load page functions; allow bfd_arch_unknown
- in customized _set_arch_mach function.
- * coffcode.h (coff_set_alignment_hook): Set section load page if
- the appropriate macro is defined.
- (write_object_contents): Read section load page.
-
-2000-04-13 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-hppa.h: Update copyright date.
-
- * elf32-fr30.c (fr30_elf_i20_reloc): Don't use U suffix.
- * elf32-mips.c (_bfd_mips_elf_relocate_section): And here.
-
- * elf32-d30v.c (MAX32): Don't use LL suffix.
- (MIN32): Define in terms of MAX32.
- (bfd_elf_d30v_reloc): Make relocation a bfd_signed_vma.
-
- * coff-a29k.c (SIGN_EXTEND_HWORD): Replace with more concise
- expression.
-
- * peicode.h (pe_ILF_build_a_bfd): Remove UL from hex constants.
-
-2000-04-12 Alan Modra <alan@linuxcare.com.au>
-
- * dep-in.sed: Match space before file name, not after.
- * Makefile.am: Regenerate dependencies.
- * Makefile.in: Regenerate.
-
- * reloc.c (_bfd_relocate_contents): In complain_overflow_bitfield
- case, allow address wrap-around stupidly removed 2000-03-17. Sign
- extend without an if statement.
-
-2000-04-11 Alan Modra <alan@linuxcare.com.au>
-
- * coff-mips.c (mips_gprel_reloc): Test for 16 bit range using
- signed quantites.
- * elf32-mips.c (gprel16_with_gp): Likewise.
- * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Test range
- here using -0x40000, not (int)0xfffc0000.
- (elf32_hppa_size_of_stub): Likewise.
-
-2000-04-11 Timothy Wall <twall@cygnus.com>
-
- * coff-tic54x.c: Now builds with all targets.
- * Makefile.am: Add coff/tic54x.h to coff-tic54x.o dependencies.
- * Makefile.in: Regenerate.
- * coffcode.h (coff_set_arch_mach_hook): Eliminate warning on
- unitialized variable.
-
-Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com>
-
- * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
- --enable-build-warnings option.
- * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
- * Makefile.in, configure: Re-generate.
-
-2000-04-07 Nick Clifton <nickc@cygnus.com>
-
- * reloc.c: Add BFD_RELOC_ARM_PCREL_BLX and
- BFD_RELOC_THUMB_PCREL_BLX.
-
- * elf32-arm.h (elf32_arm_final_link_relocate): Handle
- R_ARM_XPC25 and R_ARM_THM_PC22.
-
- * elfarm-nabi.c (elf32_arm_howto_): Fix definitions of
- R_ARM_XPC25 and R_ARM_THM_XPC22.
- (elf32_arm_reloc_map): Make BFD_RELOC_{ARM|THUMB}_PCREL_BLX to
- R_ARM_[XPC25|THM_XPC22].
-
- * elfarm-oabi.c: Define OLD_ARM_ABI and change include from
- elf/arm-oabi.h to elf/arm.h
-
- * Makefile.am: Fix dependency for elfarm-oabi.c
- * Makefile.in: Regenerate.
-
- * bfd-in2.h: Regenerate.
- * libbfd.h: Regenerate.
-
-2000-04-06 Michael Snyder <msnyder@seadog.cygnus.com>
-
- * elfcore.h (elf_core_file_p): preserve value of tdata at entry,
- and restore it on failure. Release newly allocated tdata on
- failure.
-
-Fri Apr 7 11:33:47 2000 Jim Wilson <wilson@cygnus.com>
-
- * dwarf2.c (struct dwarf2_debug): New field dwarf_line_size.
- (decode_line_info): Set it. Report error if unit->line_offset is
- equal to or larger than it.
-
-2000-04-07 Timothy Wall <twall@cygnus.com>
-
- * targets.c: Added vecs for tic54x.
- * reloc.c: Added relocs for tic54x.
- * libbfd.h: Regenerated.
- * configure: Add TI COFF vecs for tic54x.
- * configure.in: Ditto.
- * config.bfd (targ_cpu): Recognize new tic54x target.
- * coffcode.h (coff_slurp_symbol_table): Additions for TI COFF handling.
- * bfd-in2.h: Add tic54x target and relocations.
- * Makefile.am, Makefile.in: Add tic54x target.
- * archures.c (bfd_archures_list): Add tic54x target.
- * coff-tic54x.c: New.
- * cpu-tic54x.c: New.
-
-2000-04-06 Michael Snyder <msnyder@seadog.cygnus.com>
-
- * elfcore.h (elf_core_file_p): call backend_object_p which
- thereby gets an opportunity to update the arch/machine type.
-
-2000-04-06 Timothy Wall <twall@cygnus.com>
-
- * coffcode.h (coff_slurp_symbol_table): Handle C_STATLAB storage
- class. Handle SEC_CLINK and SEC_BLOCK flags.
- * section.c: Add SEC_CLINK and SEC_BLOCK flags.
- * bfd-in2.h: Add SEC_CLINK and SEC_BLOCK flags.
-
-2000-04-06 Nick Clifton <nickc@cygnus.com>
-
- * elf32-arm.h (elf32_arm_set_private_flags): Only check for
- EF_INTERWORK if this is an unknown EABI.
- (elf32_arm_merge_private_bfd_data): Check EABI version
- numbers. Only check EF_xxx flags if the EABI version number
- is unknown.
- (elf32_arm_check_private_bfd_data): Only check EF_xxx flags
- if the EABI version number is unknown.
- (elf32_arm_print_private_bfd_data): Only decode EF_xxx flags
- if the EABI version number is unknown.
-
-Wed Apr 5 22:04:20 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reloc.c (_bfd_relocate_contents): Add BFD_RELOC_SH_LOOP_START and
- BFD_RELOC_SH_LOOP_END.
- * elf32-sh.c (sh_elf_howto_tab): Change special_func to
- sh_elf_ignore_reloc for all entries that sh_elf_reloc used to ignore.
- Add entries for R_SH_LOOP_START and R_SH_LOOP_END.
- (sh_elf_reloc_loop): New function.
- (sh_elf_reloc): No need to test for always-to-be-ignored relocs
- any more.
- (sh_rel): Add entries for BFD_RELOC_SH_LOOP_{START,END}.
- (sh_elf_relocate_section): Handle BFD_RELOC_SH_LOOP_{START,END}.
- * bfd-in2.h, libbfd.h: Regenerate.
-
-2000-04-04 Alan Modra <alan@linuxcare.com.au>
-
- * po/bfd.pot: Regenerate.
-
- * Makefile.am: Remove extraneous mkdep comment.
- (MKDEP): Use gcc -MM rather than mkdep.
- (DEP): Quote when passing vars to sub-make. Add warning
- message to end.
- (DEP1): Rewrite for "gcc -MM".
- (CLEANFILES): Add DEP2.
- Update dependencies.
- * Makefile.in: Regenerate.
-
-2000-04-03 Kevin Buettner <kevinb@redhat.com>
-
- * configure.in: Added corefile support for AIX 4.3. In particular,
- AIX_CORE_DUMPX_CORE will be defined in addition to AIX_CORE when
- compiling rs6000-core.c.
- * configure: Regenerated.
-
-2000-04-03 H.J. Lu <hjl@gnu.org>
-
- * cache.c (bfd_open_file): Unlink the output file only if
- it has non-zero size.
-
-2000-04-01 Ken Block USG <block@zk3.dec.com>
-
- * elf64-alpha.c (elf64_alpha_relocate_section): Don't emit
- relative relocations for non-loaded sections in shared objects.
- (elf64_alpha_check_relocs): Similarly.
-
-Mon Apr 3 13:37:15 2000 Hans-Peter Nilsson <hp@axis.com>
-
- * aoutx.h (NAME(aout,reloc_type_lookup)): Add BFD_RELOC_8 and
- BFD_RELOC_16 to switch for extended relocs.
- (MY_swap_ext_reloc_in): New.
- (MY_swap_ext_reloc_out): New.
- (NAME(aout,slurp_reloc_table)): Use MY_swap_ext_reloc_in rather
- than NAME(aout,swap_ext_reloc_in) for extended relocs.
- (NAME(aout,squirt_out_relocs)): Similarly use
- MY_swap_ext_reloc_out.
- (aout_link_reloc_link_order): Use MY_put_ext_reloc if defined.
-
-2000-04-03 Kazu Hirata <kazu@hxi.com>
-
- * coff-h8300.c (h8300_reloc16_extra_cases): Add bsr:16 -> bsr:8 to
- the R_PCRWORD_B case.
-
-2000-03-31 Thomas de Lellis <tdel@wrs.com>
-
- * srec.c : Set CHUNK size to 16 bytes to prevent download failures
- on some targets.
- * ihex.c : Ditto.
-
-Wed Mar 30 15:28:00 2000 Donald Lindsay <dlindsay@cygnus.com>
-
- * elf32-m32r.c (m32r_elf_generic_reloc): new function. All
- HOWTO references to bfd_elf_generic_reloc, that have
- partial_inplace == true, now use the new function. The function
- is based on the recent rewrite of m32r_elf_lo16_reloc(), and
- extends its fixes to the R_M32R_{16,24,32} relocs.
- The new logic in m32r_elf_lo16_reloc() has been removed, and
- it instead calls the new routine to obtain that functionality.
-
-2000-03-27 Alan Modra <alan@linuxcare.com.au>
-
- * elf32-avr.c (elf32_avr_gc_mark_hook, elf32_avr_gc_sweep_hook,
- elf32_avr_check_relocs, avr_final_link_relocate,
- elf32_avr_relocate_section, bfd_elf_avr_final_write_processing,
- elf32_avr_object_p): Add prototypes.
- (elf32_avr_gc_mark_hook): Add default for h->root.type.
- (bfd_elf_avr_final_write_processing): Make static.
-
-2000-03-27 Denis Chertykov <denisc@overta.ru>
-
- * cpu-avr.c: New file. BFD support routines for AVR architecture.
- * archures.c (bfd_architecture): Add AVR architecture.
- (bfd_archures_list): Add reference to AVR architecture info.
- * elf.c (prep_headers): Handle bfd_arch_avr.
- * reloc.c: Add various AVR relocation enums.
- * targets.c (bfd_elf32_avr_vec): Declare and add to target vector
- list.
- * Makefile.am: Add support for AVR elf.
- * configure.in: Likewise.
- * config.bfd: Likewise.
- * Makefile.in: Regenerate.
- * configure: This too.
- * bfd-in2.h: And this.
- * libbfd.h: And this.
-
-2000-03-24 H.J. Lu <hjl@gnu.org>
-
- * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Add prototype.
- (elf64_alpha_find_reloc_at_ofs): Likewise.
-
-2000-03-17 Alan Modra <alan@linuxcare.com.au>
-
- * reloc.c (bfd_check_overflow): In case complain_overflow_bitfield,
- flag an overflow if the bitfield is outside -2**n to 2**n-1. The
- allowable range used to be -2**(n-1) to 2**n-1.
- * reloc.c (_bfd_relocate_contents): Same here. Also replace
- "boolean overflow" with "bfd_reloc_status_type flag".
-
-2000-03-14 Doug Evans <dje@casey.transmeta.com>
-
- * elf32-m32r.c (m32r_elf_lo16_reloc): Rewrite.
-
-2000-03-14 Kazu Hirata <kazu@hxi.com>
-
- * reloc16.c (bfd_coff_reloc16_relax_section): Count the total number
- of shrinks properly, including the last reloc.
-
-2000-03-13 Kazu Hirata <kazu@hxi.com>
-
- * coff-h8300.c (h8300_reloc16_extra_cases): Fix the sanity
- check for R_MOVL2.
-
-2000-03-11 Alan Modra <alan@linuxcare.com.au>
-
- * ieee.c (ieee_archive_p): Return bfd_error_wrong_format on
- a format mismatch rather than an "error" from bfd_read such as
- bfd_error_file_truncated.
-
-2000-03-10 Geoff Keating <geoffk@cygnus.com>
-
- * elf32-mips.c (_bfd_mips_elf_relocate_section): Do proper
- sign-extension and big-endian compensation for
- R_MIPS_64 even in ld -r.
-
-2000-03-10 Geoffrey Keating <geoffk@cygnus.com>
-
- * elf32-mips.c (mips_elf_next_relocation): Rename from
- mips_elf_next_lo16_relocation, and generalize to look
- for any relocation type.
- (elf_mips_howto_table): Make R_MIPS_PC16 pcrel_offset.
- (elf_mips_gnu_rel_hi16): Howto for R_MIPS_GNU_REL_HI16.
- (elf_mips_gnu_rel_lo16): Howto for R_MIPS_GNU_REL_LO16.
- (elf_mips_gnu_rel16_s2): Howto for R_MIPS_GNU_REL16_S2.
- (elf_mips_gnu_pcrel64): Howto for R_MIPS_PC64.
- (elf_mips_gnu_pcrel32): Howto for R_MIPS_PC32.
- (bfd_elf32_bfd_reloc_type_lookup): Add new relocs.
- (mips_rtype_to_howto): Likewise.
- (mips_elf_calculate_relocation): Handle new relocs.
- (_bfd_mips_elf_relocate_section): REL_HI16/REL_LO16 relocs
- are paired. The addend for R_MIPS_GNU_REL16_S2
- is shifted right two bits.
-
-2000-03-10 Alan Modra <alan@linuxcare.com.au>
-
- * reloc.c (bfd_perform_relocation): Undo emacs formatting of
- comment, and ensure it doesn't happen again.
- (bfd_install_relocation): Same here.
- (_bfd_relocate_contents): Don't bother assigning unused signmask
- shift result. Fix typos in comments.
- Remove trailing whitespace throughout file.
-
-2000-03-07 Doug Evans <dje@casey.transmeta.com>
-
- * reloc.c (reloc_howto_struct): Fix partial_inplace comment.
- * bfd-in2.h: Rebuild.
-
-2000-03-06 Nick Clifton <nickc@cygnus.com>
-
- * peicode.h (struct pe_ILF_vars): Add sym_ptr_table and
- sym_ptr_ptr fields.
- (SIZEOF_ILF_SYM_PTR_TABLE): Define.
- (SIZEOF_ILF_STRINGS): Redefine.
- (pe_ILF_make_a_symbol-reloc): New function. Creates a symbol
- relative reloc, as opposed to a section relative reloc.
- (pe_ILF_make_a_symbol): Set the class of local symbols to C_STAT
- not C_LABEL.
- Add length of symbol's prefix to string pointer.
- Store a pointer to the symbol in the symbol pointer table.
- (pe_ILF_build_a_bfd): Do not build .idata$2 or .idata$7.
- Initialise the symbol pointer table.
- Store the hint in the Hint/Name table.
- Make the jump reloc be symbol realtive, not section relative.
- Create an import symbol for imported code.
-
-2000-03-06 Catherine Moore <clm@cygnus.com>
-
- * elf.c (swap_out_syms): Check for null type_ptr.
-
-2000-03-01 Hans-Peter Nilsson <hp@axis.com>
-
- * aout-target.h (MY(write_object_contents)): Remove unused
- and unusable "#if CHOOSE_RELOC_SIZE".
- * pc532-mach.c (MY(write_object_contents)): Ditto.
- * netbsd.h (MY(write_object_contents)): Ditto.
- * hp300hpux.c (MY(write_object_contents)): Ditto.
- * freebsd.h (MY(write_object_contents)): Ditto.
- * aout-tic30.c (tic30_aout_write_object_contents): Ditto.
-
-2000-02-29 H.J. Lu <hjl@gnu.org>
-
- * peicode.h (jtab): Make it static.
-
- * coff-sh.c (sh_align_load_span): Declared if COFF_WITH_PE is
- defined and COFF_IMAGE_WITH_PE is not defined.
- (_bfd_sh_align_load_span): Defined as sh_align_load_span if
- COFF_WITH_PE is defined and COFF_IMAGE_WITH_PE is not defined.
-
-2000-03-01 Nick Clifton <nickc@cygnus.com>
-
- * coff-arm.c (bfd_arm_process_before_allocation): Make
- 'symndx' signed to prevent compile time warning.
-
- * coff-mcore.c: Remove unused prototype for pe_object_p.
-
- * coff-sh.c: Add "#ifndef COFF_IMAGE_WITH_PE" around static
- functions that are not used when COFF_IMAGE_WITH_PE is
- defined.
- (struct sh_opcode): Change type of 'flags' field to unsigned
- long so that it can hold the USESAS flag.
-
- * coffcode.h (styp_to_sec_flags): Initialise 'target_name'.
-
- * elf-m10300.c (mn10300_elf_relax_section): Initialise
- 'sym_sec'.
-
- * elf32-i370.c: Add ATTRIBUTE_UNUSED to unused function
- parameters.
- Remove unusued variables and code.
- (elf_backend_add_symbol_hook): Fix prototype.
-
- * elf32-m68k.c (elf_m68k_gc_sweep_hook): Initialise 'sgot' and
- 'srelgot'.
-
- * elf32-mcore.c (mcore_elf_relocate_section): Initialise
- 'oldinst'.
-
- * elf32-mips.c: Add ATTRIBUTE_UNUSED to unused function
- parameters.
- Remove unusued variables and code.
- (elf_backend_add_symbol_hook): Fix prototype.
-
- * elf32-sh.c (sh_elf_set_mach_from_flags): Use 'flags'.
-
- * elflink.h (elf_bfd_link_add_symbols): Add ATTRIBUTE_UNUSED
- to unused function parameter.
-
- * pe-mips.c: Add ATTRIBUTE_UNUSED to unused function
- parameters.
- Use EMPTY_HOWTO to initialise empty howto slots.
- Remove unused variables.
-
- * peicode.h (pe_ILF_build_a_bfd): Initialise id6.
-
-2000-03-01 H.J. Lu <hjl@gnu.org>
-
- * aoutx.h (aout_link_input_section_std): Pass "true" to
- the undefined_symbol callback.
- (aout_link_input_section_ext): Likewise.
- * bout.c (get_value): Likewise.
- * coff-a29k.c (coff_a29k_relocate_section): Likewise.
- * coff-alpha.c (alpha_ecoff_get_relocated_section_conten):
- Likewise.
- (alpha_relocate_section): Likewise.
- * coff-arm.c (coff_arm_relocate_section): Likewise.
- * coff-i960.c (coff_i960_relocate_section): Likewise.
- * coff-mcore.c (coff_mcore_relocate_section): Likewise.
- * coff-mips.c (mips_relocate_section): Likewise.
- * coff-ppc.c (coff_ppc_relocate_section): Likewise.
- * coff-sh.c (sh_relocate_section): Likewise.
- * coff-tic80.c (coff_tic80_relocate_section): Likewise.
- * cofflink.c (_bfd_coff_generic_relocate_section): Likewise.
- * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
- * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
- * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
- * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
- * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
- * elf32-i370.c (i370_elf_relocate_section): Likewise.
- * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
- * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
- * elf32-sh.c (sh_elf_relocate_section): Likewise.
- * elf32-v850.c (v850_elf_relocate_section): Likewise.
- * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise.
- * elflink.h (elf_link_output_extsym): Likewise.
- * pe-mips.c (coff_pe_mips_relocate_section): Likewise.
- * reloc.c (bfd_generic_get_relocated_section_conten): Likewise.
- * reloc16.c (_bfd_ppc_xcoff_relocate_section): Likewise.
-
- * elf-hppa.h (elf_hppa_relocate_section): Pass "false" to the
- undefined_symbol callback when building shared library with
- -Bsymbolic and undefined symbols are allowed. Otherwise, pass
- "true".
- * elf32-arm.h (elf32_arm_relocate_section): Likewise.
- * elf32-i386.c (elf_i386_relocate_section): Likewise.
- * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
- * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
- (elf32_mips_get_relocated_section_content): Likewise.
- * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
- * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
- * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
- * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
-
-2000-02-28 Nick Clifton <nickc@cygnus.com>
-
- * Makefile.am: Add rules to build pe[i]-{sh|mips}.lo objects.
- * Makefile.in: Regenerate.
-
- * configure.in: Add support for mips and sh pe vectors.
- * configure: regenerate.
-
- * config.bfd: Add support for arm-wince, mips-pe and sh-pe
- targets.
-
- * targets.c: Add mips and sh pe vectors.
-
- * libpei.h (coff_final_link_postscript): Only define if not
- already defined.
-
- * coffcode.h: Add support for WinCE magic numbers.
-
- * peigen.c (pe_print_reloc): Update comment and rearrange
- appending of newline character.
-
- * peicode.h: Add support for Image Library Format.
- (pe_ILF_vars): Structure containing data used by ILF code.
- (pe_ILF_make_a_section): New function. Create a section based
- on ILF data.
- (pe_ILF_make_a_reloc): New function. Create a reloc based on
- ILF data.
- (pe_ILF_make_a_symbol): New function. Create a symbol based
- on ILF data.
- (pe_ILF_save_relocs): New function. Store the relocs created
- by pe_ILF_make_a_reloc in a section.
- (pe_ILF_build_a_bfd): New function. Create a BFD describing
- an ILF object.
- (pe_ILF_object_p): New function. Return a bfd_target pointer
- for an ILF object.
- (pe_bfd_object_p): If an ILF object is detected call
- pe_ILF_object_p on it.
-
- * coff-arm.c: Add support for WinCE relocs which are different
- from normal ARM COFF relocs.
- * pe-arm.c: Unset TARGET_UNDERSCORE for a WinCE target.
-
- * coff-sh.c: Add support for sh-pe target.
- * pe-sh.c: New file. Support code for sh-pe target.
- * pei-sh.c: New file. Support code for sh-pe target.
-
- * pe-mips.c: New file. Support code for mips-pe target.
- * pei-mips.c: New file. Support code for mips-pe target.
-
-2000-02-27 Jakub Jelinek <jakub@redhat.com>
-
- * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Don't bump
- architecture if the object causing the bump is dynamic.
- * elf64-sparc.c (sparc64_elf_merge_private_bfd_data): Likewise,
- and also don't it for memory ordering.
- (sparc64_elf_write_relocs): Take src_rela out of the loop.
-
-2000-02-27 Ian Lance Taylor <ian@zembu.com>
-
- * dwarf2.c (read_abbrevs): Use _raw_size directly rather than
- calling bfd_get_section_size_before_reloc.
- (decode_line_info): Likewise.
- (_bfd_dwarf2_find_nearest_line): Likewise.
-
-2000-02-27 Eli Zaretskii <eliz@is.elta.co.il>
-
- * Makefile.am (stamp-lib): Use $(LIBTOOL) --config to get the
- name of the libtool directory.
- * Makefile.in: Rebuild.
-
-Fri Feb 25 18:39:26 2000 Rodney Brown (RodneyBrown@pmsc.com)
-
- * som.c (SOM_HOWTO): Define.
- (som_hppa_howto_table): Use it.
-
-2000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
-
- * config.bfd: Enable 64 bit support for GNU/Linux/sparc.
-
- * config.bfd: Enable 64 bit support for Solaris7+/sparc.
-
-2000-02-24 Catherine Moore <clm@cygnus.com>
-
- * som.c (som_misc_symbol_info): Add field
- secondary_def.
- (som_bfd_derive_misc_symbol_info): Initialize
- secondary_def.
- (som_build_and_write_symbol_table): Keep track
- of secondary_def field.
- (som_slurp_symbol_table): Set BSF_WEAK symbol flag
- if secondary_def field is set.
- (som_bfd_ar_write_symbol_stuff): Initialize
- secondary_def.
-
-2000-02-23 Stephane Carrez <stcarrez@worldnet.fr>
-
- * dwarf2.c (read_address): Read 16-bits addresses.
- (parse_comp_unit): Accept addr_size == 2.
-
-2000-02-23 Alan Modra <alan@spri.levels.unisa.edu.au>
-
- * bfd-in.h: Update copyright date.
-
-2000-02-23 Linas Vepstas <linas@linas.org>
-
- * cpu-i370.c: New file.
- * elf32-i370.c: New file.
- * archures.c (enum bfd_architecture): Add bfd_arch_i370.
- (bfd_i370_arch): New.
- (bfd_archures_list): Add bfd_i370_arch.
- * elf.c (prep_headers): Add bfd_arch_i370.
- * Makefile.am: Add support for IBM 370 elf.
- * config.bfd: Likewise.
- * configure.in: Likewise.
- * libbfd.h (bfd_reloc_code_real_names): Likewise.
- * reloc.c (bfd_reloc_code_type): Likewise.
- * targets.c: Likewise.
-
- * Makefile.in: Regenerate.
- * configure: Regenerate.
- * bfd-in2.h: Regenerate.
-
-2000-02-22 Ian Lance Taylor <ian@zembu.com>
-
- * elf32-i386.c (elf_i386_info_to_howto_rel): Give a warning for
- invalid relocation types, and change them to R_386_NONE.
-
-2000-02-22 H.J. Lu <hjl@gnu.org>
-
- * elflink.h (elf_link_add_object_symbols): If a version symbol is
- not defined, don't add a second ELF_VER_CHR.
-
- * elflink.h (elf_bfd_final_link): Call output_extsym for global
- symbols converted to local symbols even when stripping all
- symbols.
- (elf_link_output_extsym): Process global symbols converted to
- local symbols even if they are being stripped.
-
-2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
-
- * archures.c (bfd_octets_per_byte): Return unsigned int.
- (bfd_arch_mach_octets_per_byte): Ditto.
- * libbfd.c (bfd_read, bfd_seek): Quell signed vs. unsigned
- comparison warning.
- * section.c (bfd_get_section_size_before_reloc): Quell signed
- vs. unsigned comparison warning.
- (bfd_get_section_size_after_reloc): Same here. Fix parentheses too.
- * trad-core.c (trad_unix_core_file_p): Correct 2000-01-27
- change. What was I thinking?
- * bfd-in2.h: Regenerate.
-
- * elflink.h (elf_gc_sweep): Skip non-elf input bfds.
- (elf_gc_sections): Same here.
- (elf_gc_common_finalize_got_offsets): And here.
-
-2000-02-21 Ian Lance Taylor <ian@zembu.com>
-
- ELF HPPA doesn't work at present; remove it until it does.
- * config.bfd: Comment out setting targ_defvec to
- bfd_elf32_hppa_vec.
- * Makefile.am: Rebuild dependencies.
- (BFD32_BACKENDS): Remove elf32-hppa.lo.
- (BFD32_BACKENDS_CFILES): Remove elf32-hppa.c.
- (SOURCE_HFILES): Remove elf32-hppa.h and hppa_stubs.h.
- * Makefile.in: Rebuild.
- * targets.c (bfd_target_vector): Comment out bfd_elf32_hppa_vec.
-
-2000-02-18 Geoff Keating <geoffk@cygnus.com>
-
- * coffcode.h (coff_set_arch_mach_hook): Use free(), because there
- is no bfd_free(). Revert bfd_free part of previous change.
-
-2000-02-18 Geoff Keating <geoffk@cygnus.com>
-
- * coffcode.h (coff_set_arch_mach_hook): Don't use variable-size
- arrays.
- (coff_compute_section_file_positions): Use bfd_free to pair
- bfd_malloc.
- (coff_write_object_contents): Likewise.
-
- * coff-rs6000.c (xcoff_howto_table_16): New variable.
- (xcoff_rtype2howto): Handle 16-bit variants of 32-bit relocs.
-
-2000-02-18 Ulrich Drepper <drepper@cygnus.com>
-
- * coff-rs6000.c (XCOFFARMAGBIG): New macro.
- (xcoff_ar_file_hdr_big): New structure.
- (SIZEOF_AR_FILE_HDR_BIG): New macro.
- (xcoff_ar_hdr_big): New structure.
- (SIZEOF_AR_HDR_BIG): New macro.
- (xcoff_big_format_p): New macro.
- (xcoff_ardata_big): New macro.
- (arch_xhdr_big): New macro.
- (xcoff_slurp_armap): Handle large archives.
- (xcoff_archive_p): Detect large archives.
- (xcoff_read_ar_hdr): Handle large archives.
- (xcoff_openr_next_archived_file): Handle large archives.
- (xcoff_generic_stat_arch_elt): Handle large archives.
- (xcoff_write_armap_old): Rename from xcoff_write_armap.
- (xcoff_write_armap_big): New function.
- (xcoff_write_armap): New function, dispatch to _old or _big.
- (xcoff_write_archive_contents_old): Rename from
- xcoff_write_archive_contents.
- (xcoff_write_archive_contents_big): New function.
- (xcoff_write_archive_contents): New function, dispatch to _old or
- _big.
-
-2000-02-18 Richard Henderson <rth@cygnus.com>
-
- * elf-bfd.h (struct elf_link_hash_table): Remove copy_indirect
- and hide_symbol members.
- (elf_link_hash_copy_indirect): Remove.
- (elf_link_hash_hide_symbol): Remove.
- (struct elf_backend_data): Add elf_backend_copy_indirect_symbol
- and elf_backend_hide_symbol.
- (_bfd_elf_link_hash_copy_indirect): Declare.
- (_bfd_elf_link_hash_hide_symbol): Declare.
- * elf.c (_bfd_elf_link_hash_copy_indirect): Remove table argument.
- (_bfd_elf_link_hash_hide_symbol): Likewise.
- (_bfd_elf_link_hash_table_init): Don't init killed members.
- * elflink.h (elf_link_add_object_symbols): Use the bed function
- pointers not elf_link_hash_{copy_indirect,hide_symbol}.
- (elf_link_assign_sym_version): Likewise.
- * elfxx-target.h (elf_backend_copy_indirect_symbol): Default.
- (elf_backend_hide_symbol): Likewise.
- (elfNN_bed): Update for new members.
-
-2000-02-17 Kevin Buettner <kevinb@redhat.com>
-
- * rs6000-core.c (CORE_DATA_SIZE_FIELD, CORE_COMM_FIELD, SAVE_FIELD,
- STACK_END_ADDR): Define for new core file format.
- (LOADER_OFFSET_FIELD, LOADER_REGION_SIZE, CORE_DUMP): New defines
- for handling the vagaries of the various core file structures used
- by AIX over the years.
- (rs6000coff_core_p, rs6000coff_core_file_matches_executable,
- Rs6kCorData): Use above defines to adapt code to use AIX 4.3's
- core_dumpx structure.
-
-Thu Feb 17 00:04:48 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * archures.c (bfd_mach_sh2, bfd_mach_sh_dsp): New macros.
- (bfd_mach_sh3_dsp): Likewise.
- (bfd_mach_sh4): Reinstate.
- (bfd_default_scan): Recognize 7410, 7708, 7729 and 7750.
- * bfd-in2.h: Regenerate.
- * coff-sh.c (struct sh_opcode): flags is no longer short.
- (USESAS, USESAS_REG, USESR8, SETSAS, SETSAS_REG): New macros.
- (sh_opcode41, sh_opcode42): Integrate as sh_opcode41.
- (sh_opcode01, sh_opcode02, sh_opcode40): Add sh-dsp opcodes.
- (sh_opcode41, sh_opcode4, sh_opcode80): Likewise.
- (sh_opcodes): No longer const.
- (sh_dsp_opcodef0, sh_dsp_opcodef): New arrays.
- (sh_insn_uses_reg): Check for USESAS and USESR8.
- (sh_insn_sets_reg, sh_insns_conflict): Check for SETSAS.
- (_bfd_sh_align_load_span): Return early for SH4.
- Modify sh_opcodes lookup table for sh-dsp / sh3-dsp.
- Take into account that field b of a parallel processing insn
- could be mistaken for a separate insn.
- * cpu-sh.c (arch_info_struct): New array elements for
- sh2, sh-dsp and sh3-dsp.
- Reinstate element for sh4.
- (SH2_NEXT, SH_DSP_NEXT, SH3_DSP_NEXT): New macros.
- (SH4_NEXT): Reinstate.
- (SH3_NEXT, SH3E_NEXT): Adjust.
- * elf-bfd.h (_sh_elf_set_mach_from_flags): Declare.
- * elf32-sh.c (sh_elf_set_private_flags): New function.
- (sh_elf_copy_private_data, sh_elf_set_mach_from_flags): Likewise.
- (sh_elf_merge_private_data): New function.
- (elf_backend_object_p, bfd_elf32_bfd_set_private_bfd_flags): Define.
- (bfd_elf32_bfd_copy_private_bfd_data): Define.
- (bfd_elf32_bfd_merge_private_bfd_data): Change to
- sh_elf_merge_private_data.
-
-2000-02-13 Richard Henderson <rth@cygnus.com>
-
- * elf-bfd.h (struct elf_link_hash_table): Add copy_indirect and
- hide_symbol members.
- (elf_link_hash_copy_indirect): New.
- (elf_link_hash_hide_symbol): New.
- * elflink.h (elf_link_add_object_symbols): Break out copy from
- indirect new new symbol to elf.c.
- (elf_link_assign_sym_version): Break out privatization of
- non-exported symbol to elf.c.
- * elf.c (_bfd_elf_link_hash_copy_indirect): New.
- (_bfd_elf_link_hash_hide_symbol): New.
- (_bfd_elf_link_hash_table_init): Init copy_indirect and hide_symbol.
-
-2000-02-13 Ian Lance Taylor <ian@zembu.com>
-
- * section.c (_bfd_strip_section_from_output): Add info parameter.
- If it passed as non-NULL, use it to check whether any input BFD
- has an input section which uses this output section. Change all
- callers.
- * bfd-in2.h: Rebuild.
-
- * bfd-in.h: Move declarations of bfd_get_elf_phdr_upper_bound and
- bfd_get_elf_phdrs in from bfd-in2.h, correcting patch of
- 1999-11-29.
- * bfd-in2.h: Rebuild.
-
-2000-02-10 Timothy Wall <twall@cygnus.com>
-
- * coffswap.h (coff_swap_sym_in): Add hook SWAP_SYM_IN_POST to
- allow final modifications of swapped-in symbol.
- (coff_swap_sym_out): Ditto with SWAP_SYM_OUT_POST.
- * coffcode.h (coff_write_relocs): Use macro
- SECTION_RELATIVE_ABSOLUTE_SYMBOL_P if defined to determine whether
- symbol index should be set to -1.
-
-Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com)
-
- * coff-sh.c (USES1_REG, USES2_REG, SETS1_REG, SETS2_REG,
- USESF1_REG, USESF2_REG, SETSF1_REG, SETSF2_REG): New macros.
- * (sh_insn_sets_reg, sh_insn_sets_freg): New prototypes.
- * (sh_insn_sets_reg, sh_insn_uses_or_sets_reg, sh_insns_sets_freg,
- sh_insns_uses_or_sets_freg): New functions.
- * (sh_insn_uses_reg, sh_insn_uses_freg): Use new macros.
- * (sh_insns_conflict): Use new functions and new macros to
- detect conflicts when two instructions both set same integer registers,
- both set same fp register, and both set special register.
-
-2000-02-09 Timothy Wall <twall@cygnus.com>
-
- * coffgen.c (coff_real_object_p): Set arch/mach info prior to
- swapping in sections, so that the swapping routines have access to
- the arch/mach info.
-
-2000-02-08 Mark Elbrecht <snowball3@bigfoot.com>
-
- * coff-go32.c: Update comment. Update copyright.
-
-2000-01-27 Thomas de Lellis <tdel@windriver.com>
-
- * syms.c (bfd_decode_symclass)
- Two new class characters were added - 'V' and 'v'. The
- meaning of 'W' is now restricted to just weak non-object
- symbols. This allows differentiation between, for example,
- weak functions vs weak objects. nm for example now dumps:
- 'W' = weak global
- 'w' = weak unresolved
- 'V' = weak global object
- 'v' = weak unresolved object
-
- (bfd_is_undefined_symclass): New function. Return true if the
- given symbol class represents and undefined/unresolved symbol.
-
- (bfd_symbol_info): Use bfd_is_undefined_symclass to check for
- unresolved symbols.
-
- * bfd-in2.h: Add prototype for bfd_is_undefined_symbol().
-
- * elf32-arm.h (elf32_arm_get_symbol_type): If a symbol has the
- STT_ARM_16BIT flag set, but it is not attached to a data object
- return STT_ARM_16BIT so that it will be treated as code by the
- disassembler.
-
-2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
-
- * coff-i386.c (i3coff_object_p): Remove prototype.
- Update copyright.
-
- * elflink.c (_bfd_elf_link_record_dynamic_symbol): Add const
- to name. Update copyright.
-
- * trad-core.c (trad_unix_core_file_p): Cast core_regsec
- assignment to avoid warning. Update copyright.
-
-2000-01-24 Robert Lipe (robertl@sco.com)
-
- * coffcode.h (coff_write_object_contents): Get buff via bfd_malloc
- instead of using GNU C extension.
-
-2000-01-21 Nick Clifton <nickc@cygnus.com>
-
- * libbfd.c (bfd_read): Do not attempt to get a negativly sized
- amount from a bfd_in_memory structure.
- (bfd_seek): Do not allow seeks past the end of a bfd_in_memory
- structure.
-
-2000-01-14 Nick Clifton <nickc@cygnus.com>
-
- * linker.c (default_indirect_link_order): oops - fix incorrectly
- applied patch from Tim Wall.
-
-2000-01-13 Timothy Wall (twall@tiac.net>
-
- * coffcode.h: Use bfd_coff_xxx instead of the macro XXX (where xxx
- = scnhsz, filhsz, relsz, aoutsz, etc)
-
- * coffswap.h: Ditto.
-
-2000-01-13 Nick Clifton <nickc@cygnus.com>
-
- * elf32-arm.h (elf32_thumb_to_arm_stub): Fix offset in branch to
- interwork thumb to arm stub.
-
-2000-01-13 Timothy Wall (twall@tiac.net>
-
- * archures.c (bfd_octets_per_byte): New function: Return
- target byte size.
- (bfd_arch_mach_octets_per_byte): New function: Return target
- byte size.
-
- * section.c: Distinguish between octets and bytes for usage of
- _cooked_size, _raw_size, and output_offset. Clarify
- description of bfd_set_section_contents.
-
- * bfd-in2.h: Regenerate.
-
- * coffgen.c: Indicate that the offset parameter is in bytes, not
- octets.
-
- * cofflink.c (bfd_coff_link_input_bfd): Use bfd_octets_per_byte
- where appropriate to get the octet offset when calling
- bfd_set_section_contents.
- (bfd_coff_reloc_link_order): Ditto.
-
- * linker.c (bfd_generic_reloc_link_order): Ditto.
- (_bfd_default_link_order): Ditto.
-
- * reloc.c (bfd_perform_relocation): Distinguish between octets
- and bytes. Use octets when indexing into octet data; use bytes
- when calculating target addresses.
- (bfd_install_relocation): Ditto.
-
- * srec.c (srec_write_section): Ditto.
-
-2000-01-13 Nick Clifton <nickc@cygnus.com>
-
- * coff-mcore.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Change from
- 3 to 2. This allows 4 byte sized sections, which is necessary for
- dlltool to build functioning DLLs.
-
-2000-01-10 Philip Blundell <pb@futuretv.com>
-
- * config.bfd (arm*-*-linux-gnu*): Match instead of arm*-*-linux-gnu.
- (arm*-*-conix*): New target.
-
-2000-01-10 Egor Duda <deo@logos-m.ru>
-
- * config.bfd: Include elf32_i386 vector to target list for cygwin
- and mingw.
-
- * config.in: Undefine HAVE_WIN32_PSTATUS_T.
- * configure.in: Test for structure win32_pstatus_t in
- <sys/procfs.h>
- * configure: Regenerate.
-
- * elf.c (elfcore_grok_win32pstatus): New function: process
- win32_pstatus_t notes in elf core file.
- (elfcore_grok_note): Detect win32_pstatus notes.
-
-2000-01-03 Martin v. Loewis <loewis@informatik.hu-berlin.de>
-
- * elflink.c (_bfd_elf_link_record_dynamic_symbol): Process symbol
- visibility.
- * elflink.h (elf_link_add_object_symbols): Combine visibilities.
- * elf.c (bfd_elf_print_symbol): Interpret st_other as visibility.
-
-For older changes see ChangeLog-9899
-
-Local Variables:
-mode: change-log
-left-margin: 8
-fill-column: 74
-version-control: never
-End:
+ +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. + +2001-08-11 Nick Clifton <nickc@cambridge.redhat.com> + + * elf-bfd.h (struct elf_backend_data): Add new fields + 'elf_backend_sprintf_vma' and 'elf_backend_fprintf_vma'. + (bfd_elf_sprintf_vma): Rename function prototype to + '_bfd_elf_sprintf_vma'. + (bfd_elf_fprintf_vma): Rename function prototype to + '_bfd_elf_fprintf_vma'. + * bfd.c (bfd_sprintf_vma): Do not invoke bfd_elf_sprintf_vma + directly, instead indirect via the elf_backend_data structure. + (bfd_fprintf_vma): Do not invoke bfd_elf_fprintf_vma directly, + instead indirect via the elf_backend_data structure. + * elf.c (bfd_elf_sprintf_vma): Rename to _bfd_elf_sprintf_vma. + (bfd_elf_fprintf_vma): Rename to _bfd_elf_fprintf_vma. + * elfxx-target.h (elf_backend_sprintf_vma): Initialise if not + already defined. + (elf_backend_fprintf_vma): Initialise if not already defined. + (struct elf_backend_data): Initialise the + elf_backend_sprintf_vma and elf_backend_fprintf_vma fields. + +2001-08-10 Andreas Jaeger <aj@suse.de> + + * elf64-sparc.c: Add missing prototypes. + * elf32-cris.c: Likewise. + * elf32-i370.c: Likewise. + * elf64-hppa.c: Likewise. + * elf64-s390.c: Likewise. + +2001-08-10 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_elf_object_p): Make static. + Add prototypes where needed. + +2001-08-10 H.J. Lu <hjl@gnu.org> + + * bfd.c (bfd_sprintf_vma): Fix a typo in the last change. + (bfd_fprintf_vma): Likewise. + +2001-08-10 H.J. Lu <hjl@gnu.org> + + * bfd.c (bfd_sprintf_vma): Don't return void. + (bfd_fprintf_vma): Likewise. + +2001-08-10 Andreas Jaeger <aj@suse.de> + + * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes + to build warnings. + * configure: Regenerate. + +2001-08-10 Alan Modra <amodra@bigpond.net.au> + + * elf.c (bfd_elf_sprintf_vma): Add ATTRIBUTE_UNUSED to quiet + warning if not BFD64. Add braces so emacs auto format works. + (bfd_elf_fprintf_vma): Likewise. + + * libxcoff.h (struct xcoff_backend_data_rec): Constify src param + of _xcoff_swap_ld*. + * coff-rs6000.c (xcoff_swap_ldhdr_in): Modify type of external + param to agree with libxcoff.h. + (xcoff_swap_ldhdr_out): Likewise. + (xcoff_swap_ldsym_in): Likewise. + (xcoff_swap_ldsym_out): Likewise. + (xcoff_swap_ldrel_in): Likewise. + (xcoff_swap_ldrel_out): Likewise. + (xcoff_create_csect_from_smclas): Likewise. + * coff64-rs6000.c: Add missing prototypes. + (xcoff64_swap_ldhdr_in): Modify type of external param to agree + with libxcoff.h. + (xcoff64_swap_ldhdr_out): Likewise. + (xcoff64_swap_ldsym_in): Likewise. + (xcoff64_swap_ldsym_out): Likewise. + (xcoff64_swap_ldrel_in): Likewise. + (xcoff64_swap_ldrel_out): Likewise. + (xcoff64_ppc_relocate_section): Make static. + (xcoff64_slurp_armap): Likewise. + (xcoff64_archive_p): Likewise. + (xcoff64_openr_next_archived_file): Likewise. + (xcoff64_sizeof_headers): Likewise. + (xcoff64_is_lineno_count_overflow): Likewise. + (xcoff64_is_reloc_count_overflow): Likewise. + (xcoff64_loader_symbol_offset): Likewise. + (xcoff64_loader_reloc_offset): Likewise. + * elf64-gen.c: Add missing prototypes. + +2001-08-09 H.J. Lu <hjl@gnu.org> + + * elf.c (bfd_elf_sprintf_vma): Check ELFCLASS64 only in BFD64. + (bfd_elf_fprintf_vma): Likewise. + +2001-08-09 H.J. Lu <hjl@gnu.org> + + * bfd-in.h (bfd_elf_sprintf_vma, bfd_elf_fprintf_vma): Moved + to ... + * elf-bfd.h: Here. + * bfd-in2.h: Regenerated. + +2001-08-09 H.J. Lu <hjl@gnu.org> + + * bfd-in.h (bfd_sprintf_vma): New prototype. + (bfd_fprintf_vma): Likewise. + (bfd_elf_sprintf_vma): Likewise. + (bfd_elf_fprintf_vma): Likewise. + (bfd_printf_vma): New. Defined with bfd_fprintf_vma. + * bfd-in2.h: Regenerated. + + * bfd.c (bfd_sprintf_vma): New. Defined. + (bfd_fprintf_vma): Likewise. + + * elf.c (bfd_elf_sprintf_vma): New. Defined. + (bfd_elf_fprintf_vma): Likewise. + +2001-08-09 Alan Modra <amodra@bigpond.net.au> + + * coff-rs6000.c: Add missing prototypes. + (xcoff_ppc_relocate_section, xcoff_is_lineno_count_overflow, + xcoff_is_reloc_count_overflow, xcoff_loader_symbol_offset, + xcoff_loader_reloc_offset): Make static. + * dwarf1.c: Add missing prototypes. + * dwarf2.c: Add missing prototypes. + (struct abbrev_info): Move definition. + (struct attr_abbrev, ABBREV_HASH_SIZE, ATTR_ALLOC_CHUNK): Likewise. + * elf.c: Add missing prototypes. + * elf32-gen.c: Likewise. + * elf32-i386.c: Likewise. + * elf32-ppc.c: Likewise. + (ppc_elf_sort_rela): Use PTR instead of "void *". + * elflink.h: Add missing prototypes. Formatting fixes. + * merge.c: Add missing prototypes. + (last4_eq): Use PTR instead of "void *". + (last_eq): Likewise. + * syms.c: Add missing prototypes. + +2001-08-09 Nick Clifton <nickc@cambridge.redhat.com> + + * bfd.c: Fix formatting. + * bfd-in2.h: Regenerate. + +2001-08-09 Nick Clifton <nickc@cambridge.redhat.com> + + * elf32-arc.c (R_ARC_B22_PCREL): Change 'partial_inplace' to + true (this target uses REL relocations) and 'pcrel_offset' to + false (the PC is implied, not stored in the offset). + +2001-08-08 Alan Modra <amodra@bigpond.net.au> + + 1999-10-19 Linus Nordberg <linus@swox.se> + * elf-bfd.h (struct elf_backend_data): Add want_got_sym. + * elfxx-target.h (elf_backend_want_got_sym): Define. + (elfNN_bed): Add elf_backend_want_got_sym. + * elflink.c (_bfd_elf_create_got_section): Define + _GLOBAL_OFFSET_TABLE_ only if bed->want_got_sym. + +2001-08-08 Alexandre Oliva <aoliva@redhat.com> + + * dwarf2.c (struct dwarf2_debug): Add sec, sec_info_ptr and syms. + (find_rela_addend): New function. + (parse_comp_unit): Call it to find the abbrev offset addend. + (_bfd_dwarf2_find_nearest_line): Initialize and maintain the new + members of dwarf2_debug as debugging information is read. + +2001-08-07 Nick Clifton <nickc@cambridge.redhat.com> + + * coff-sh.c (sh_coff_reloc_type_lookup): Provide for sh-coff + targets as well as sh-pe. + +2001-08-03 Ben Harris <bjh21@netbsd.org> + + * elf32-arm.h (elf32_arm_final_link_relocate): Include offset of + reloc from start of section when computing value for R_ARM_REL32 + reloc. + +2001-08-03 Alan Modra <amodra@bigpond.net.au> + + From H.J. Lu <hjl@gnu.org> + * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Don't + keep relocs for undefined syms if there are no dynamic sections in + executable. + * elf32-hppa.c (allocate_plt_and_got_and_discard_relocs): Likewise. + +2001-08-02 Paul Sokolovsky <paul.sokolovsky@technologist.com> + + * cofflink.c (coff_link_check_ar_symbols): also search for + __imp__symbol as well as _symbol. + * linker.c (_bfd_generic_link_add_archive_symbols): also + search for __imp__symbol as well as _symbol. + +2001-08-01 Adam Nemet <anemet@lnxw.com> + + * elf.c (elf_sort_sections): Return zero only as the last step. + +2001-08-01 Nick Clifton <nickc@cambridge.redhat.com> + + * config.bfd (arm-vxworks): Change name of define from VXWORKS to + ARM_COFF_BUGFIX. + (arm-epoc-pe): Define ARM_COFF_BUGFIX. + coff-arm.c (coff_arm_relocate_section): Replace VXWORKS with + ARM_COFF_BUGFIX. + +2001-07-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> + + * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Changed return type + to match corresponding bfd_coff_backend data member. + +2001-07-24 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Update dependencies with "make dep-am". + * Makefile.in: Regenerate + +2001-07-15 H.J. Lu <hjl@gnu.org> + + * Makefile.am (po/SRC-POTFILES.in): Use tmp.src instead of tmp. + (po/BLD-POTFILES.in): Use tmp.bld instead of tmp. + * Makefile.in: Regenerate. + +2001-07-11 H.J. Lu <hjl@gnu.org> + + * elf64-alpha.c (elf64_alpha_check_relocs): Set the ALLOC|LOAD + flags when creating the reloc section if the ALLOC flag in the + source section is set. + +2001-07-11 Steve Ellcey <sje@cup.hp.com> + + * reloc.c (bfd_reloc_code_type): Add IA64 relocs + BFD_RELOC_IA64_LTOFF_FPTR32MSB and BFD_RELOC_IA64_LTOFF_FPTR32LSB + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * elfxx-ia64.c (ia64_howto_table): Define how to handle + new relocations. + (elfNN_ia64_reloc_type_lookup): Handle new relocations. + (elfNN_ia64_check_relocs): Likewise. + (elfNN_ia64_install_value): Likewise. + (elfNN_ia64_relocate_section): Likewise. + +2001-07-11 Jakub Jelinek <jakub@redhat.com> + + * elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove support for + R_SPARC_UA64. + (elf32_sparc_check_relocs): Likewise. + Only create .rela section for alloced sections in shared libraries. + (elf32_sparc_relocate_section): Likewise. + Remove redundant check. + Optimize unaligned reloc usage. + * elf64-sparc.c (sparc64_elf_relocate_section): Remove redundant + check. + +2001-07-11 H.J. Lu <hjl@gnu.org> + + * elf64-alpha.c (elf64_alpha_check_relocs): Only use the same + ALLOC|LOAD flags as the source section for debugging sections + when creating the reloc section. + +2001-07-05 Jim Wilson <wilson@redhat.com> + + * linker.c (_bfd_generic_link_add_one_symbol, case BIG): Use + the section of the bigger symbol. + + * syms.c (bfd_is_local_label): Return false if BSF_SECTION_SYM. + +2001-07-05 Nick Clifton <nickc@cambridge.redhat.com> + + * peicode.h (coff_swap_scnhdr_in): For sections containing + uninitialised data, only set their size to s_paddr if this does + not reset their size to zero. MS's latest compilers will set + s_paddr to zero. + +2001-07-04 H.J. Lu <hjl@gnu.org> + + * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing): + Handle bfd_mach_mips4400, bfd_mach_mips4600 and + bfd_mach_mips5000. + +2001-07-03 Mark Elbrecht <snowball3@softhome.net> + + * bfd.c (bfd_get_sign_extend_vma): Support DJGPP COFF targets. + + * cofflink.c (_bfd_coff_link_input_bfd): Skip section symbols from + sections being discarded. + +2001-06-30 Alan Modra <amodra@bigpond.net.au> + + * elfcore.h (elf_core_file_p): Call bfd_section_from_phdr directly + instead of _bfd_elfcore_section_from_phdr. + * elf-bfd.h (_bfd_elfcore_section_from_phdr): Remove. + * elf.c (_bfd_elfcore_section_from_phdr): Remove. + (_bfd_elfcore_make_pseudosection): Expedite tail-call. + (elfcore_grok_prstatus): Likewise. + (elfcore_grok_lwpstatus): Likewise. + (bfd_get_elf_phdr_upper_bound): Likewise. + (elfcore_make_note_pseudosection): Formatting. + (_bfd_elfcore_strndup): Formatting. + * elf32-mips.c (mips_elf_sym_is_global): Formatting. + (_bfd_elf32_mips_grok_prstatus): Expedite tail-call. + +2001-06-29 Daniel Jacobowitz <drow@mvista.com> + + * elf-bfd.h: Add prototypes for _bfd_elfcore_make_pseudosection + and _bfd_elfcore_strndup. + (struct elf_backend_data): Add elf_backend_grok_prstatus + and elf_backend_grok_psinfo. + * elf.c (_bfd_elfcore_make_pseudosection): New function. + (elfcore_grok_prstatus): Use it. + (elfcore_make_note_pseudosection): Likewise. + (elfcore_strndup): Rename to... + (_bfd_elfcore_strndup): Here, and make global. + (elfcore_grok_psinfo): Use _bfd_elfcore_strndup. + (elfcore_grok_note): Call elf_backend_grok_prstatus + and elf_backend_grok_psinfo if available. + * elf32-mips.c (_bfd_elf32_mips_grok_prstatus): New function. + (_bfd_elf32_mips_grok_psinfo): New function. + (elf_backend_grok_prstatus): Define. + (elf_backend_grok_psinfo): Define. + * elfxx-target.h (elf_backend_grok_prstatus): Default to NULL. + (elf_backend_grok_psinfo): Likewise. + (elfNN_bed): Include elf_backend_grok_prstatus and + elf_backend_grok_psinfo. + +2001-06-29 H.J. Lu <hjl@gnu.org> + + * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Check if + hplink->sgot is NULL before filling GOT. Check if hplink->splt + is NULL before filling PLT. + +2001-06-29 Alan Modra <amodra@bigpond.net.au> + + * elflink.h (elf_link_output_extsym): Revert 1999-04-10. + +2001-06-27 Alan Modra <amodra@bigpond.net.au> + + * elf32-hppa.c (elf32_hppa_check_relocs): Don't make syms dynamic + here.. + (elf32_hppa_adjust_dynamic_symbol): ..nor here.. + (allocate_plt_and_got_and_discard_relocs): .. instead do so here + after gc has run. + + * elf32-hppa.c (RELATIVE_DYNAMIC_RELOCS): Delete. + (IS_ABSOLUTE_RELOC): Define. + (elf32_hppa_link_hash_entry): Always include reloc_entries field. + (hppa_link_hash_newfunc): Always init it. + (elf32_hppa_check_relocs): Mark symbols as ELF_LINK_NON_GOT_REF to + create COPY relocs only when the reloc is in a read-only section. + Instead, allocate space for a dynamic reloc to reference the + library symbol directly. Keep track of space we allocate using + relocs_entries. + (hppa_discard_copies): Delete, and move code to.. + (allocate_plt_and_got): ..here. Rename to + allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic + relocs for non-shared link. + (elf32_hppa_size_dynamic_sections): Update calls to above. + (elf32_hppa_relocate_section): Write out the dynamic relocs used + in lieu of COPY relocs. + + * elf32-i386.c (elf_i386_check_relocs): Don't make syms dynamic + here.. + (elf_i386_adjust_dynamic_symbol): ..nor here.. + (allocate_plt_and_got_and_discard_relocs): .. instead do so here + after gc has run. + (elf_i386_size_dynamic_sections): Fix a comment. + (elf_i386_relocate_section <R_386_32, R_386_PC32>): Rearrange code + involved in writing reloc out. + +2001-06-25 Alan Modra <amodra@bigpond.net.au> + + * elf32-i386.c (elf_i386_check_relocs <R_386_32, R_386_PC32>): + Ensure syms are dynamic if we might be emitting a reloc. + (allocate_plt_and_got_and_discard_relocs): Don't discard relocs + for undefweak or undefined syms.. + (elf_i386_relocate_section <R_386_32, R_386_PC32>): .. and emit. + + * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Discard + relocs without ELF_LINK_HASH_DEF_DYNAMIC set. + (elf_i386_relocate_section <R_386_32, R_386_PC32>): Remove + redundant bfd_link_hash_defined, bfd_link_hash_defweak test. + +2001-06-24 H.J. Lu <hjl@gnu.org> + + * cpu-i960.c (scan_960_mach): Don't modify const char *. Use + strncasecmp/strcasecmp instead of strncmp/strcmp. + +2001-06-23 H.J. Lu <hjl@gnu.org> + + * elf32-i386.c (elf_i386_relocate_section <R_386_32, R_386_PC32>): + Check ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined + in the regular object file and treat the weak definition as + the normal one. + +2001-06-23 Alan Modra <amodra@bigpond.net.au> + + * elf32-i386.c (elf_i386_relocate_section <R_386_GOT32>): Tighten + unresolved_reloc test to exclude cases where we use "relocation" + before setting it to point into the .got. Reinstate fudge for + unresolved relocs in debugging sections. + + * elf32-i386.c (elf_i386_relocate_section): Replace ugly + complicated tests for unresolvable relocs with a simple direct + scheme using "unresolved_reloc" var. + + * elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Rename to + elf_i386_dyn_relocs. Update comment. + (struct elf_i386_link_hash_entry): Rename pcrel_relocs_copied to + dyn_relocs. + (elf_i386_adjust_dynamic_symbol): Remove a BFD_ASSERT, change + others to aborts. + (allocate_plt_and_got_and_discard_relocs): Replace BFD_ASSERT with + abort. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_finish_dynamic_symbol): Likewise. + (elf_i386_finish_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. Tidy R_386_GOT32 and error + handling code. + + Avoid creating COPY relocs if possible. + * elf32-i386.c (elf_i386_check_relocs): Tweak condition under + which .got created. Mark symbols used by R_386_32 and R_386_PC32 + relocs as ELF_LINK_NON_GOT_REF to create COPY relocs only when the + reloc is in a read-only section. Instead, allocate space for a + dynamic reloc to reference the library symbol directly. Keep + track of space we allocate using pcrel_relocs_copied. + (discard_copies): Delete, and move code to .. + (allocate_plt_and_got): ..here. Rename to + allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic + relocs for non-shared link. + (elf_i386_size_dynamic_sections): Update calls to above functions. + (elf_i386_relocate_section): Write out the dynamic relocs. Add + more ugly logic to avoid "unresolvable relocation" error. Use + htab shortcut in place of elf_hash_table macro. + (elf_i386_finish_dynamic_sections): Allow that dynamic .got may + not always be created now. + +2001-06-20 Bo Thorsen <bo@suse.co.uk> + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix linking of + shared libraries. + +2001-06-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * configure.host (mips64-*-linux): Reformat. + +2001-06-21 Alan Modra <amodra@bigpond.net.au> + + * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Always + allocate local .got space. Use shortcuts from hash table for .got + and .plt rather than comparing section names. + (elf32_hppa_check_relocs): Use local_plt_refcounts var rather than + adjusting index into local_got_refcounts to document what we are + really doing. + (elf32_hppa_relocate_section): Similarly for local_plt_offsets. + Tidy .got and .plt error checking. + +2001-06-20 Catherine Moore <clm@redhat.com> + + * elf-bfd.h (struct elf_backend_data): + elf_backend_emit_relocs: New field: Function for emitting + relocs. + elf_backend_count_relocs: New field: Function for determining + the number of relocs to be emitted. + * elfxx-target.h: Provide default (NULL) values for + elf_backend_emit_relocs and elf_backend_count_relocs. + * elflink.h (elf_link_size_reloc_section): Make the hash table + big enough to hold the relocs counted by either reloc_count or + o->reloc_count. + (elf_bfd_final_link) emit_relocs: New boolean, set if relocs + should be emitted, either because of a command line option + stored in the info structure or because the target provides a + special reloc emitting function. + If the target provides a reloc counting function use it, + unless performing a relocatable link or emitting all relocs. + Also set the SEC_RELOC flag on any output section which will + contain relocs. + (elf_link_input_bfd): emit_relocs: New boolean, set if relocs + should be emitted, either because of a command line option + stored in the info structure or because the target provides a + special reloc emitting function. + If the target provides a reloc emitting function, use it, + unless performing a relocatable link or emitting all relocs. + +2001-06-20 H.J. Lu <hjl@gnu.org> + + * elf32-i386.c (elf_i386_size_dynamic_sections): Always + allocate local .got space. + +2001-06-19 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix creation of + dynamic symbols. + +2001-06-18 Hans-Peter Nilsson <hp@axis.com> + + * elflink.h (struct elf_assign_sym_version_info): Remove member + export_dynamic. All users changed to use info member. + NAME(bfd_elf,size_dynamic_sections)): Remove parameter + export_dynamic, instead use member in parameter info. + * bfd-in.h (bfd_elf32_size_dynamic_sections, + bfd_elf64_size_dynamic_sections): Update prototype. + * bfd-in2.h: Regenerate. + +2001-06-18 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_info_failed): Add a new field, verdefs. + (NAME(bfd_elf,size_dynamic_sections): Pass verdefs to + elf_export_symbol. + (elf_export_symbol): Check eif->verdefs to decide if a symbol + should be exported. + +2001-06-17 H.J. Lu <hjl@gnu.org> + + * elf32-mips.c (mips_elf_link_hash_entry): Add a new field, + readonly_reloc, to record if a relocation in the .rel.dyn + section is against a read-only section. + (mips_elf_link_hash_newfunc): Initialize the readonly_reloc + field to false. + (_bfd_mips_elf_check_relocs): Record if there is a relocation + in the .rel.dyn section against a read-only section by setting + DF_TEXTREL or readonly_reloc. + (_bfd_mips_elf_copy_indirect_symbol): Copy readonly_reloc if + it is true. + (_bfd_mips_elf_adjust_dynamic_symbol): Record DF_TEXTREL if + there is a relocation in the .rel.dyn section against a + read-only section. + (_bfd_mips_elf_size_dynamic_sections): Set DT_TEXTREL if + DF_TEXTREL is set. + +2001-06-12 Nick Clifton <nickc@cambridge.redhat.com> + + * coffcode.h (styp_flags_to_sec_flags): Change to a boolean + function. Move flagword result into parameter list. Remove + comment about setting bfd_error_handler to intercept failure + results. + * coffgen.c (make_a_section_from_file): Examine result of + calling bfd_coff_styp_to_sec_flags and pass a failure back to + caller. + * ecoff.h (styp_flags_to_sec_flags): Change to a boolean + function. Move flagword result into parameter list. + * libcoff.h: Regenerate. + * libecoff.h: Regenerate. + +2001-06-13 Nick Clifton <nickc@cambridge.redhat.com> + + * aoutx.h (adjust_z_magic): Only pad the tesxt section if the data + section is going to follow it. + +2001-06-12 Catherine Moore <clm@redhat.com> + + * elflink.h (elf_gc_propagate_vtable_entries): Replace FILE_ALIGN + with the file_align entry from elf_backend_data. + (elf_gc_smash_unused_vtentry_relocs): Likewise. + (elf_gc_record_vtentry): Likewise. + +2001-06-10 Alan Modra <amodra@bigpond.net.au> + + * elflink.h: Whitespace changes. + (elf_link_read_relocs_from_section): Use "unsigned int" iterator + rather than "unsigned char". + (elf_link_output_relocs): Likewise. + (elf_link_input_bfd): Likewise. + (elf_reloc_link_order): LIkewise. + * elf.c: s/CONST/const/. Whitespace changes. + * elf32-mips.c: Formatting fix. + + * Makefile.am (SOURCE_HFILES): Include xcoff-target.h, remove xcoff.h. + * Makefile.in: Regenerate. + * po/Make-in: Remove trailing tab. + +2001-06-09 Philip Blundell <philb@gnu.org> + + * elf32-arm.h (elf32_arm_plt0_entry): Correct error in last + change. + (elf32_arm_plt_entry): Likewise. + +2001-06-08 H.J. Lu <hjl@gnu.org> + + * elf.c (swap_out_syms): Keep names for global section symbols. + +2001-06-07 H.J. Lu <hjl@gnu.org> + + * config.bfd: Put back ecoff for Linux/mips. Firmwares on some + MIPS-based machines need it. + +2001-06-07 H.J. Lu <hjl@gnu.org> + + * elf32-mips.c (_bfd_mips_elf_object_p): Set the bad symtab + for SGI only. + + * config.bfd: Remove ecoff from Linux/mips. + +2001-06-07 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Add an + assertion. + (elf64_x86_64_check_relocs): Fix VTENTRY relocation; set an + alignment of 8 for .rela sections; handle further relocations. + +2001-06-06 Christian Groessler <cpg@aladdin.de> + + * coff-z8k.c: Fix formatting. + Fix howtos: howto->size was always 1. + +2001-06-05 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * configure.host (mips64*-*-linux*): Define. + +2001-06-05 Alan Modra <amodra@bigpond.net.au> + + * elf32-i386.c (elf_i386_discard_copies): Rename to + discard_copies, and use elf_link_hash_entry arg rather than + elf_i386_link_hash_entry. + (elf_i386_link_hash_traverse): Delete. + (elf_i386_size_dynamic_sections): Adjust call to discard_copies. + Tidy sizing of dynamic sections. + (elf_i386_check_relocs <R_386_32, R_386_PC32>): Reference count + possible .plt entries. + (elf_i386_gc_sweep_hook): Likewise. + (elf_i386_adjust_dynamic_symbol): Discard .plt entries for + everything with plt.refcount <= 0. + + * elf32-i386.c (elf_i386_check_relocs): Don't allocate .got and + .relgot space here. + (elf_i386_gc_sweep_hook): ..and no need to deallocate here.. + (elf_i386_adjust_dynamic_symbol): ..and don't allocate .plt and + .rel.plt here.. + (allocate_plt_and_got): ..instead do it all here. New function. + (elf_i386_size_dynamic_sections): Allocate local .got space and + call allocate_plt_and_got. No need to zap .relgot if not dynamic. + (bfd_elf32_bfd_final_link): Delete. (ie. use regular final link + rather than gc variety). + (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. + (elf_i386_relocate_section): Use it here and correct handling of + R_386_GOT32. Provide section and offset for "unresolvable + relocation" error message. + (elf_i386_finish_dynamic_symbol): Correct handling of R_386_GOT32. + + * elf32-i386.c (struct elf_i386_link_hash_table): Add sgot, + sgotplt, srelgot, splt, srelplt, sdynbss, srelbss fields. + (elf_i386_link_hash_table_create): Init them. + (create_got_section): New function. + (elf_i386_create_dynamic_sections): New function. + (elf_backend_create_dynamic_sections): Set to above. + (elf_i386_check_relocs): Use shortcuts from hash table rather than + calling bfd_get_section_by_name. + (elf_i386_gc_sweep_hook): Likewise. + (elf_i386_adjust_dynamic_symbol): Likewise. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. + (elf_i386_finish_dynamic_sections): Likewise. + + * elf32-hppa.c (allocate_plt_and_got): Skip indirect and warning syms. + +2001-06-02 H.J. Lu <hjl@gnu.org> + + * elf32-hppa.c (elf32_hppa_object_p): Check ELFOSABI_LINUX + and ELFOSABI_HPUX. + * elf64-hppa.c (elf64_hppa_object_p): Likewise. + +2001-06-02 H.J. Lu <hjl@gnu.org> + + * aout-cris.c (MACHTYPE_OK): New. Defined. + +2001-06-02 Hans-Peter Nilsson <hp@axis.com> + + * section.c (_bfd_strip_section_from_output): Handle NULL + output_section. + +2001-06-02 H.J. Lu <hjl@gnu.org> + + * config.bfd (powerpc-*-aix*, powerpc-*-beos*, rs6000-*-*): Add + rs6000coff64_vec only if BFD64 is defined. + (powerpc64-*-aix*): Enable only if BFD64 is defined. + +2001-06-02 H.J. Lu <hjl@gnu.org> + + * coff-ia64.c (ia64coff_object_p): Rewrite with + external_PEI_DOS_hdr and external_PEI_IMAGE_hdr. + +2001-06-01 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Add PC8 + relocation, small reformatting. + +2001-05-29 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_check_relocs): Handle R_X86_64_64. + (elf64_x86_64_relocate_section): Likewise. + +2001-05-30 Alan Modra <amodra@one.net.au> + + * elf32-hppa.c (elf32_hppa_check_relocs): Don't NEED_PLT for + millicode. Don't allocate .got and .rela.got space here.. + (elf32_hppa_gc_sweep_hook): ..and no need to deallocate here.. + (elf32_hppa_adjust_dynamic_symbol): ..and don't allocate .plt and + .rela.plt here.. + (hppa_handle_PIC_calls): ..nor here.. + (allocate_plt_and_got): ..instead do it all here. New function. + (elf32_hppa_size_dynamic_sections): Allocate local .got space and + call allocate_plt_and_got. No need to zap .got if not dynamic. + (elf32_hppa_final_link): Call regular bfd_final_link instead of + gc_common_final_link. + (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. + (elf32_hppa_relocate_section): Use it here. + (elf32_hppa_finish_dynamic_symbol): Remove superfluous test of + dynamic_sections_created. + (hppa_type_of_stub): Don't LONG_BRANCH_VIA_PLT if millicode sym. + +2001-05-28 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_86_64_size_info): Remove, we can use the + generic version since we want a hashsize of 4. + (elf_backend_size_info): Likewise. + +2001-05-28 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * elflink.h (elf_link_size_reloc_section): Use bfd_zmalloc instead of + a zeroing loop. + (elf_link_output_relocs): Handle MIPS ELF64 relocations correctly. + (elf_link_input_bfd): Likewise. + (elf_reloc_link_order): Likewise. + (elf_finish_pointer_linker_section): Typo. Handle MIPS ELF64 + relocations correctly. + +2001-05-28 Nicolas Pitre <nico@cam.org> + + * elf32-arm.h: fix PLT generation for big endian ARM + +2001-05-28 Alan Modra <amodra@one.net.au> + + * elf32-hppa.c (elf32_hppa_relocate_section): Set up .plt entries + for symbols forced local that need plabels. + (elf32_hppa_adjust_dynamic_symbol): Don't allocate space in + .plt.rela for local syms if non-shared. + (hppa_build_one_stub): Mask lsb of plt.offset. + (elf32_hppa_finish_dynamic_symbol): Abort if lsb of plt.offset set. + (clobber_millicode_symbols): Correct comment. + (elf32_hppa_relocate_section): Likewise. + (elf32_hppa_finish_dynamic_symbol): Likewise. + +2001-05-28 Jeff Sturm <jsturm@one-point.com> + + * reloc.c: Add BFD_RELOC_SPARC_UA16 and BFD_RELOC_SPARC_UA64. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * elf32-sparc.c: Enable BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32 + and BFD_RELOC_SPARC_UA64 mapping + * elf64-sparc.c: Likewise. + +2001-05-25 H.J. Lu <hjl@gnu.org> + + * Makefile.am (BFD32_BACKENDS): Remove coff-pmac.lo. + (BFD32_BACKENDS_CFILES): Remove coff-pmac.c. + (coff-rs6000.lo): Remove the old dependency. + * Makefile.in: Rebuild. + + * configure.in (pmac_xcoff_vec): Replace coff-pmac.lo with + coff-rs6000.lo. + +2001-05-25 H.J. Lu <hjl@gnu.org> + + * coff-rs6000.c (rs6000coff_vec): Use rs6000coff_core_p, + rs6000coff_core_file_matches_executable_p, + rs6000coff_core_file_failing_command and + rs6000coff_core_file_failing_signal only if AIX_CORE is + defined. + (pmac_xcoff_vec): Likewise. + * coff64-rs6000.c (rs6000coff64_vec): Likewise. + +2001-05-25 Timothy Wall <twall@redhat.com> + + * elfxx-ia64.c (allocate_dynrel_entries): Don't allocate an entry + for __GLOB_DATA_PTR on AIX5. Clean up some relocation bugs. + +2001-05-25 H.J. Lu <hjl@gnu.org> + + * bfd-in2.h: Regenerated. + * libcoff.h: Likewise. + +2001-05-25 Alan Modra <amodra@one.net.au> + + * elf32-hppa.c (elf32_hppa_relocate_section): Don't allow + undefined millicode syms in shared libs. + (hppa_build_one_stub): Turn BFD_ASSERTs into aborts. + (elf32_hppa_check_relocs): Likewise. + (elf32_hppa_adjust_dynamic_symbol): Likewise. + (elf32_hppa_size_dynamic_sections): Likewise. + (elf32_hppa_relocate_section): Likewise. + (elf32_hppa_finish_dynamic_symbol): Likewise. + (elf32_hppa_finish_dynamic_sections): Likewise. + +2001-05-24 Tom Rix <trix@redhat.com> + + * Makefile.am coff-pmac bfd now defined in coff-rs6000.c + xcoff-target.h not used to define rs6000 or ppc bfd. + * Makefile.in same + + * bfd-in.h : (struct lineno_cache_entry) promote element "offset" + to 64 bit. + + * coff-rs6000.c : Many changes for 64 bit support. Move common + 32/64 code to xcofflink.c. Explictly define the rs6000coff_vec + and pmac_xcoff_vec + + * coff64-rs6000.c : Many changes for 64 bit support. 64 bit + linker now supported. Explictly define the rs6000coff64_vec. + + * coffcode.h : (coff_set_arch_mach_hook) xcoff 64 bit support + (coff_print_aux) same + (coff_write_object_contents) same + (coff_slurp_line_table) same + + * coffgen.c : (coff_fix_symbol_name) formatting + (coff_mangle_symbols) xcoff 64 bit support + (coff_write_symbol) same + (coff_write_alien_symbol) same + (coff_write_native_symbol) same + (coff_write_symbols) same + (coff_get_symbol_info) same + (bfd_coff_get_syment) same + (coff_print_symbol) same + + * config.bfd : add powerpc64-*-aix* target + + * libcoff-in.h : formatting + + * libcoff.h : move xcoff extern declarations to libxcoff.h + + * libxcoff.h : New file + + * xcofflink.c : Many changes for xcoff64 support. Move common + structures to include/coff/xcoff.h. Move specific structure to + backends coff-rs6000.c and coff64-rs6000.c. Use new backend + functions, defined in libxcoff.h, to isolate 32/64 dependencies. + + (bfd_xcoff_size_dynamic_sections) : special __rtinit symbol for + aix4.2+ -binitfini. + + (xcoff_build_ldsyms) : handle special __rtinit symbol. + +2001-05-23 Alexandre Oliva <aoliva@redhat.com> + + * elf64-sparc.c (sparc64_elf_slurp_reloc_table): Fix typo + s/ENTIRES/ENTRIES/. + +2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * reloc.c (bfd_reloc_code_real): Add MIPS ELF64 relocations. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + + * aoutx.h (aout_@var{size}_machine_type): Add MIPS r12k support. + * archures.c (bfd_mach_mips12000): Define. + * cpu-mips.c (arch_info_struct): Add MIPS r12k support. + * elf32-mips.c (_bfd_mips_elf_final_write_processing): Add MIPS r12k + support. + (_bfd_mips_elf_size_dynamic_sections): Use official bfd typedef. + * bfd-in2.h: Regenerate. + * elfxx-target.h: Do not redefine bfd_elfNN_bfd_make_debug_symbol. + +2001-05-23 kaz Kojima <kkojima@rr.iij4u.or.jp> + + * elf32-sh.c (elf_sh_plt0_entry_be, elf_sh_plt0_entry, + elf_sh_plt_entry_be, elf_sh_plt_entry, elf_sh_pic_plt_entry_be, + elf_sh_pic_plt_entry): New PLT code, that does not use r2, since + that is used by GCC. + +2001-05-23 Nick Clifton <nickc@cambridge.redhat.com> + + * elf-bfd.h (NUM_SHDR_ENTRIES): New macro: compute the number + of entries in a structured section. + * elf.c: Use new macro. + * elf32-i386.c: Use new macro. + * elf32-mips.c: Use new macro. + * elf64-alpha.c: Use new macro. + * elf64-sparc.c: Use new macro. + * elfcode.h: Use new macro. + * elflink.h: Use new macro. + +2001-05-23 Nick Clifton <nickc@cambridge.redhat.com> + + * bfdint.texi: Replace -oformat with --oformat. + +2001-05-21 Andreas Jaeger <aj@suse.de> + + * dwarf2.c (decode_line_info): Fix error message. + (read_abbrevs): Fix test for offset as suggested by Alan Modra and + adjust error message. + +2001-05-18 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_link_add_object_symbols): Revert the last + change. + +2001-05-17 Alan Modra <amodra@one.net.au> + + * elf32-hppa.c (clobber_millicode_symbols): Temporarily set + ELF_LINK_FORCED_LOCAL to suit 2001-04-30 change. + (hppa_build_one_stub): Add an assert to check plt.offset. + +2001-05-17 H.J. Lu <hjl@gnu.org> + + * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the + version definition to basename of the output filename. + +2001-05-17 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_link_add_object_symbols): Set DT_NEEDED to + basename of the bfd filename. + +2001-05-16 Alan Modra <amodra@one.net.au> + + * section.c (asection): Add linker_has_input field. + (STD_SECTION): Adjust initialization to suit. + * ecoff.c (bfd_debug_section): Likewise. + * bfd-in2.h: Regenerate. + +2001-05-15 Alexandre Oliva <aoliva@redhat.com> + + * elf-m10300.c (mn10300_elf_relax_section): Don't relax + negative 32-bit operands to 16 operands when the operand is + going to be zero-extended by the modified opcode. + +2001-05-12 Peter Targett <peter.targett@arccores.com> + + * cpu-arc.c (arch_info_struct): Add entry 'base' representing old + name for 'arc5' core versions. + (bfd_arc_arch): Make bfd_mach_arc_6 default. + + * elf32-arc.c (arc_elf_object_p): Make E_ARC_MACH_ARC6 default + architecture. + (arc_elf_final_write_processing): Make bfd_mach_arc_6 default. + +2001-05-11 Jakub Jelinek <jakub@redhat.com> + + * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind + sections as well. + (elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO + to .gnu.linkonce.t.FOO text section. + +2001-05-11 Jakub Jelinek <jakub@redhat.com> + + * merge.c (struct sec_merge_hash_entry): Add u.entsize and u.suffix + fields, change sec into secinfo. + (struct sec_merge_info): Add chain, remove last fields. + (struct sec_merge_sec_info): Add next, sec, psecinfo fields. + (sec_merge_hash_lookup): If lookup could not use a string only + because it has bad alignment, mark the old string for deletion. + (sec_merge_add): Add secinfo argument. Don't compute entry's + position, instead record the section. + (sec_merge_emit): Update for the sec into secinfo change in + struct sec_merge_hash_entry. + (_bfd_merge_section): Only record the section for merging, defer + putting strings into the hash table. + (cmplengthentry, last4_eq, last_eq, record_section, merge_strings, + _bfd_merge_sections): New functions. + (_bfd_merged_section_offset): Update for the sec_merge_hash_entry + changes. + * libbfd-in.h (_bfd_merge_sections): Add prototype. + (_bfd_nolink_bfd_merge_sections): Define. + * libbfd.h: Likewise. + (bfd_generic_merge_sections): Add prototype. + * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_merge_sections. + (struct bfd_target): Likewise. + * bfd.c (bfd_merge_sections): Define. + * bfd-in2.h: Rebuilt. + * elf.c (_bfd_elf_merge_sections): New function. + * elf-bfd.h (_bfd_elf_merge_sections): Add prototype. + * elfxx-target.h (bfd_elfNN_bfd_merge_sections): Define. + * reloc.c (bfd_generic_merge_sections): New function. + * vms.c (vms_bfd_merge_sections): New function. + * aout-adobe.c (aout_32_bfd_merge_sections): Define. + * aout-target.h (MY_bfd_merge_sections): Define. + * aout-tic30.c (MY_bfd_merge_sections): Define. + * binary.c (binary_bfd_merge_sections): Define. + * bout.c (b_out_bfd_merge_sections): Define. + * coff-alpha.c (_bfd_ecoff_bfd_merge_sections): Define. + * coffcode.c (coff_bfd_merge_sections): Define. + * coff-mips.c (_bfd_ecoff_bfd_merge_sections): Define. + * i386msdos.c (msdos_bfd_merge_sections): Define. + * i386os9k.c (os9k_bfd_merge_sections): Define. + * ieee.c (ieee_bfd_merge_sections): Define. + * ihex.c (ihex_bfd_merge_sections): Define. + * nlm-target.h (nlm_bfd_merge_sections): Define. + * oasys.c (oasys_bfd_merge_sections): Define. + * ppcboot.c (ppcboot_bfd_merge_sections): Define. + * som.c (som_bfd_merge_sections): Define. + * srec.c (srec_bfd_merge_sections): Define. + * tekhex.c (tekhex_bfd_merge_sections): Define. + * versados.c (versados_bfd_merge_sections): Define. + * xcoff-target.h (_bfd_xcoff_bfd_merge_sections): Define. + +2001-05-11 Nick Clifton <nickc@cambridge.redhat.com> + + * dwarf1.c (_bfd_dwarf1_find_nearest_line): Change type of 'addr' + to be unsigned long, in order to match its use. + +2001-05-10 H.J. Lu <hjl@gnu.org> + + * linker.c (_bfd_generic_link_add_one_symbol): Check loop on + indirect symbols. + +2001-05-09 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_link_add_object_symbols): Fix a typo. Allocate + versymhdr->sh_size bytes for extversym instead of hdr->sh_size. + Remove the unused veriable `dynver'. + +2001-05-08 Ian Lance Taylor <ian@zembu.com> + + * coff-i386.c (coff_i386_reloc): Don't dump core if output_bfd is + NULL or is not COFF. + (coff_i386_rtype_to_howto): Don't dump core if output section + owner is not COFF. + +2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * ecoff.c (bfd_debug_section): Fix initialization. + * elf.c (_bfd_elf_slurp_version_tables): Change maxidx to unsigned, it + is always a positive integer. Cast away sign mismatch. + * elf32-mips.c: Fix misleading comment and typo. + (_bfd_mips_elf_section_from_bfd_section): Remove unused attribute, use + correct data type. + * elflink.c: Fix typo. + (_bfd_elf_create_dynamic_sections): Remove superfluous initialization. + * ecoffswap.h (ecoff_swap_fdr_in): Cast away sign mismatch. + +2001-05-04 Richard Henderson <rth@redhat.com> + + * elf64-alpha.c (SREL16, SREL32, SREL64): Set pcrel_offset true. + +2001-05-04 Nick Clifton <nickc@cambridge.redhat.com> + + * elf32-arm.h (elf32_arm_final_link_relocate): Set + EF_ARM_HASENTRY if the start address is set. + +2001-05-03 Nick Clifton <nickc@cambridge.redhat.com> + + * targets.c (_bfd_target_vector_entries): Compute value based on + the size of the _bfd_target_vector and not bfd_target_vector. + +2001-05-03 H.J. Lu <hjl@gnu.org> + + * elfcode.h: Include "libiberty.h". + + * elflink.h (elf_link_add_object_symbols): Set + elf_dt_name (abfd) to basename of the bfd filename. + (NAME(bfd_elf,size_dynamic_sections)): Set vn_file to basename + of the bfd filename. + +2001-05-03 Andreas Jaeger <aj@suse.de> + + * elf64-gen.c (elf_generic_info_to_howto): Add unused attribute. + (elf_generic_info_to_howto_rel): Likewise. + * coff-alpha.c (reloc_nil): Likewise. + (alpha_ecoff_bad_format_hook): Likewise. + (alpha_adjust_reloc_out): Likewise. + (alpha_bfd_reloc_type_lookup): Likewise. + (alpha_convert_external_reloc): Likewise. + * elf64-alpha.c (elf64_alpha_reloc_nil): Likewise. + (elf64_alpha_reloc_bad): Likewise. + (elf64_alpha_reloc_gpdisp): Likewise. + (elf64_alpha_bfd_reloc_type_lookup): Likewise. + (elf64_alpha_info_to_howto): Likewise. + (elf64_alpha_add_symbol_hook): Likewise. + (elf64_alpha_create_got_section): Likewise. + (elf64_alpha_is_local_label_name): Likewise. + (elf64_alpha_merge_ind_symbols): Likewise. + * elf64-mips.c (mips_elf64_reloc_type_lookup): Likewise. + (mips_elf64_get_reloc_upper_bound): Likewise. + * nlm32-alpha.c (nlm_alpha_mangle_relocs): Likewise. + (nlm_alpha_get_public_offset): Likewise. + +2001-05-02 Johan Rydberg <jrydberg@opencores.org> + + * elf32-openrisc.c (openrisc_elf_howto_table): Do not complain + about overflow in R_OPENRISC_LO_16_IN_INSN and + R_OPENRISC_HI_16_IN_INSN.Index: bfd/elf32-openrisc.c + +2001-04-30 H.J. Lu <hjl@gnu.org> + + * elf.c (_bfd_elf_link_hash_hide_symbol): Set dynindx to -1 + only for ELF_LINK_FORCED_LOCAL. + * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise. + * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise. + * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise. + + * elflink.h (elf_fix_symbol_flags): Set ELF_LINK_FORCED_LOCAL + if the symbol has hidden or internal visibility. + +2001-04-30 Alan Modra <amodra@one.net.au> + + * elf32-hppa.c (final_link_relocate): Branch to .+8 for + calls to undefined weak symbols. + +2001-04-30 Andreas Jaeger <aj@suse.de>, Andreas Schwab <schwab@suse.de> + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Correct test for + R_X86_64_GOTPCREL, don't use assignments instead of comparisons. + +2001-04-27 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Only swap + out handled entries. + (elf64_x86_64_finish_dynamic_symbol): Set up GOT entries. + (elf64_x86_64_relocate_section): Fix GOTPCREL calculation. + (elf64_x86_64_relocate_section): Merge entries for GOTPCREL and + GOT32. + +2001-04-27 Sean McNeil <sean@mcneil.com> + + * config.bfd: Add arm-vxworks target. + * coff-arm (coff_arm_relocate_section): Add in symbol value to + addend (fro VXworks targets). + +2001-04-26 H.J. Lu <hjl@gnu.org> + + * elf32-i386.c (elf_i386_check_relocs): Verify if r_symndx is + valid. + +2001-04-25 Frank Ch. Eigler <fche@redhat.com> + + * bfd-in.h (bfd_cache_close): Declare newly exported function. + * bfd-in2.h: Regenerated. + +2001-04-24 Jakub Jelinek <jakub@redhat.com> + + * merge.c (struct sec_merge_hash_entry): Add alignment field. + (struct sec_merge_hash): Remove alignment_power. + (sec_merge_hash_newfunc): Clear alignment. + (sec_merge_hash_lookup): Pass alignment as argument. + Use hashp->root.next, not hashp->next to walk the hash chain. + If a string already in the hashtable does not have required + alignment, create a new hashtable entry. + (sec_merge_init): Remove alignment_power argument. + (sec_merge_add): Add alignment argument. + (sec_merge_emit): Alignment is now a per-entity thing, not per + section. + (_bfd_merge_section): Sanity check even non-SEC_STRINGS sections + for proper alignment. + Pass alignment information to sec_merge_add. + +2001-04-24 Christian Groessler <cpg@aladdin.de> + + * coff-z8k.c (extra_case): added handler for R_DISP7, R_CALLR + and R_REL16 reloc types; accept odd values for R_REL16 type + +2001-04-24 Johan Rydberg <jrydberg@opencores.org> + + * cpu-openrisc.c: New file. + * elf32-openrisc.c: Likewise. + + * Makefile.am (ALL_MACHINES): Add cpu-openrisc.lo. + (ALL_MACHINES_CFILES): Add cpu-openrisc.c. + (BFD32_BACKENDS): Add elf32-openrisc.lo. + (BFD32_BACKENDS_CFILES): Add elf32-openrisc.c. + (cpu-openrisc.lo, elf32-openrisc.lo): New rules. + * Makefile.in: Regenerated. + * config.bfd: (openrisc-*-elf): New target. + * configure.in (bfd_elf32_openrisc_vec): New vector. + * configure: Regenerated. + * libbfd.h: Regenerated. + * bfd-in2.h: Regenerated. + * reloc.c: Add OpenRISC relocations. + * targets.c (bfd_elf32_openrisc_vec): Declare. + (bfd_target_vect): Add bfd_elf32_openrisc_vec. + * archures.c (enum bfd_architecture): Add bfd_arch_openrisc. + (bfd_openrisc_arch): Declare. + (bfd_archures_list): Add bfd_openrisc_arch. + * elf.c (prep_headers): Add bfd_arch_openrisc. + +2001-04-23 Bo Thorsen <bo@suse.de> + + * elf64-x86-64.c: Add c++ vtable hack. + Small whitespace and comment changes. + +2001-04-19 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_plt0_entry): Fix instructions. + (elf64_x86_64_plt_entry): Likewise. + (elf64_x86_64_finish_dynamic_sections): Fix PLT0 generation. + (elf64_x86_64_finish_dynamic_symbol): Fix PLT generation. + +2001-04-17 Hans-Peter Nilsson <hp@axis.com> + + * elf32-cris.c: Tweak comments related to dynamic linking. + (cris_elf_relocate_section): When not creating shared object, fill + in the .got table for any symbol not in the dynamic symbol table. + (elf_cris_finish_dynamic_symbol): When not creating shared object, + only emit a .got.rela reloc if the symbol is in the dynamic symbol + table. + (cris_elf_check_relocs): Use variable r_type in all places rather + than the original expression. Add default case in switch for + reloc types. + (elf_cris_size_dynamic_sections): Iterate over + elf_cris_discard_excess_program_dynamics when not creating shared + library. + (elf_cris_discard_excess_dso_dynamics): Renamed from + elf_cris_discard_copies. Correct typo, s/Rel/Rela/. + (elf_cris_discard_excess_program_dynamics): New. + +2001-04-14 Mark Elbrecht <snowball3@bigfoot.com> + + * coffcode.h (coff_write_object_contents): Use + bfd_coff_swap_filehdr_out instead of coff_swap_filehdr_out. + +2001-04-14 H.J. Lu <hjl@gnu.org> + + * bfd-in2.h: Regenerate. + +2001-04-14 Jakub Jelinek <jakub@redhat.com> + + * section.c (STD_SECTION): Add entsize. + +2001-04-13 H.J. Lu <hjl@gnu.org> + + * section.c (SEC_MERGE): Define new flag for merging. + (SEC_STRINGS): Likewise. + (entsize): New field. + +2001-04-13 Roger Sayle <roger@metaphorics.com> + + * coff-i386.c (TARGET_SYM): SEC_READONLY is an applicable section + flag on pe-i386 targets. + +2001-04-13 Jakub Jelinek <jakub@redhat.com> + + * libbfd-in.h (_bfd_merge_section): New. + (_bfd_write_merged_section): New. + (_bfd_merged_section_offset): New. + * libbfd.h: Rebuilt. + * linker.c (_bfd_generic_link_output_symbols): Handle + discard_sec_merge. + * aoutx.h (aout_link_write_symbols): Likewise. + * pdp11.c (aout_link_write_symbols): Likewise. + * elflink.h (elf_link_add_object_symbols): Call _bfd_merge_section. + (elf_bfd_final_link): Adjust global symbols pointing into SEC_MERGE + sections. + (elf_link_sec_merge_syms): New. + (elf_link_input_bfd): Call _bfd_merged_section_offset + and _bfd_write_merged_section. + Handle discard_sec_merge. + * elf-bfd.h (struct elf_link_hash_table): Add merge_info + field. + (struct bfd_elf_section_data): Likewise. + * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_MERGE and + SEC_STRINGS section flags and entsize from their ELF counterparts. + (_bfd_elf_link_hash_table_init): Initialize merge_info. + (elf_fake_sections): Set SHF_MERGE, SHF_STRINGS and sh_entsize + from their BFD counterparts. + * merge.c: New file. + * Makefile.am: Add strtab.lo. + * Makefile.in: Rebuilt. + +2001-04-09 Hans-Peter Nilsson <hp@axis.com> + + * elflink.h (elf_fix_symbol_flags): For non-default visibilities, + only hide symbols marked STV_INTERNAL or STV_HIDDEN. + +2001-04-05 Steven J. Hill <sjhill@cotw.com> + + * config.bfd (mips*el*-*-linux-gnu*): Use traditional little + endian MIPS ELF target. + * config.bfd (mips*-*-linux-gnu*): Use traditional big endian + MIPS ELF target. + + * configure.in (bfd_elf64_tradbigmips_vec): New. Traditional + 64bit big endian MIPS ELF target. + (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little + endian MIPS ELF target. + * configure: Regenerated. + + * elf32-mips.c (IRIX_COMPAT): Handle traditional 64bit and + little endian targets. + (mips_elf_sym_is_global): Handle traditional targets. + + * elf64-mips.c (bfd_elf64_tradbigmips_vec): New. Traditional + 64bit big endian MIPS ELF target. + (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little + endian MIPS ELF target. + + * targets.c: (_bfd_target_vector): Add bfd_elf64_tradbigmips_vec + and bfd_elf64_tradlittlemips_vec. + +2001-04-05 David Mosberger <davidm@hpl.hp.com> + + * elf32-i386.c (elf_i386_fake_sections): Treat ".reloc" as an + ordinary "progbits" section. + +2001-04-04 Alan Modra <alan@linuxcare.com.au> + + * elflink.h (elf_fix_symbol_flags): Call elf_backend_hide_symbol + when -Bsymbolic causes a symbol to no longer need a .plt entry. + +2001-04-03 David Mosberger <davidm@hpl.hp.com> + + * efi-app-ia32.c (ALIGN_SECTIONS_IN_FILE): Deleted. + +2001-03-30 H.J. Lu <hjl@gnu.org> + + * efi-app-ia32.c (PEI_TARGET_SUBSYSTEM): Rename from ... + (PEI_DEFAULT_TARGET_SUBSYSTEM): This. + +2001-03-26 H.J. Lu <hjl@gnu.org> + + * elf32-gen.c (elf32_generic_link_add_symbols): New. Check + if there are any relocations for generic ELF. + (bfd_elf32_bfd_link_add_symbols): Defined to + elf32_generic_link_add_symbols. + * elf64-gen.c (elf64_generic_link_add_symbols): New. Check + if there are any relocations for generic ELF. + (bfd_elf64_bfd_link_add_symbols): Defined to + elf64_generic_link_add_symbols. + +2001-03-23 Nick Clifton <nickc@redhat.com> + + * Makefile.am (BUILD_CFILES): New variable: List of C source + files created in build directory. + (BUILD_HFILES): New variable: List of header files created in + build directory. + (POTFILES): Delete. + (po/POTFILES.in): Replace rule with empty entry. + (po/SRC-POTFILES.in): New rule: Create a list of source files + in the source directory. + (po/BLD-POTFILES.in): New rule: Create a list of source files + in the build directory. + (MOSTLYCLEAN): Do not delete source files created in build + directory. + * Makefile.in: Regenerate. + * configure.in: Insert SRC-POTFILES.in and BLD-POTFILES.in + into po/Makefile. + * configure: Regenerate. + + * po/Make-in: Replace occurrences of POTFILES with SRC-POTFILES + and BLD_POTFILES. + Add .. to the search path when building bfd.pot. + Delete POTFILES when performing distclean. + Add comment describing why distclean is broken in maintainer mode. + * po/POTFILES.in: Delete. + * po/SRC-POTFILES.in: New file. + * po/BLD-POTFILES.in: New file. + * po/bfd.pot: Regenerate. + +2001-03-22 Hans-Peter Nilsson <hp@axis.com> + + * elf32-cris.c: Shlib and PIC support. PCREL tweaks. + (elf_cris_discard_copies, elf_cris_adjust_gotplt_to_got, + elf_cris_try_fold_plt_to_got, elf_cris_link_hash_newfunc, + elf_cris_link_hash_table_create, elf_cris_adjust_dynamic_symbol, + elf_cris_size_dynamic_sections, elf_cris_finish_dynamic_symbol, + elf_cris_finish_dynamic_sections,elf_cris_hide_symbol): New + functions. + (cris_elf_howto_table) <R_CRIS_8_PCREL, R_CRIS_16_PCREL, + R_CRIS_32_PCREL>: Correct comments. Set pcrel_offset to false. + <R_CRIS_COPY, R_CRIS_GLOB_DAT, R_CRIS_JUMP_SLOT, R_CRIS_RELATIVE, + R_CRIS_16_GOT, R_CRIS_32_GOT, R_CRIS_16_GOTPLT, R_CRIS_32_GOTPLT, + R_CRIS_32_GOTREL, R_CRIS_32_PLT_GOTREL, R_CRIS_32_PLT_PCREL>: + New HOWTO members for new relocs. + (cris_reloc_map): Map new relocs. + (ELF_DYNAMIC_INTERPRETER): Define. + (PLT_ENTRY_SIZE): Define. + (elf_cris_plt0_entry, elf_cris_plt_entry, elf_cris_pic_plt0_entry, + elf_cris_pic_plt_entry): New, PLT templates. + (struct elf_cris_pcrel_relocs_copied, struct + elf_cris_link_hash_entry, struct elf_cris_link_hash_table): New. + (elf_cris_link_hash_traverse, elf_cris_hash_table): Define. + (cris_final_link_relocate): Check that 16-bit GOT relocs have + positive values. Adjust PCREL relocs to be relative to location + after relocation. + (cris_elf_relocate_section): Handle relocations to dynamic + objects. Handle new relocations. Call error handler when seeing + non-PIC relocation for read-only sections while generating shared + object. + (cris_elf_check_relocs): Set reference counts for GOT and PLT + entries. + (bfd_elf32_bfd_link_hash_table_create, + elf_backend_adjust_dynamic_symbol, + elf_backend_size_dynamic_sections, + elf_backend_finish_dynamic_symbol, + elf_backend_finish_dynamic_sections, + elf_backend_create_dynamic_sections, bfd_elf32_bfd_final_link, + elf_backend_hide_symbol, elf_backend_want_got_plt, + elf_backend_plt_readonly, elf_backend_want_plt_sym, + elf_backend_got_header_size, elf_backend_plt_header_size): + Define. + + * reloc.c: (BFD_RELOC_CRIS_COPY, BFD_RELOC_CRIS_GLOB_DAT, + BFD_RELOC_CRIS_JUMP_SLOT, BFD_RELOC_CRIS_RELATIVE, + BFD_RELOC_CRIS_32_GOT, BFD_RELOC_CRIS_16_GOT, + BFD_RELOC_CRIS_32_GOTPLT, BFD_RELOC_CRIS_16_GOTPLT, + BFD_RELOC_CRIS_32_GOTREL, BFD_RELOC_CRIS_32_PLT_GOTREL, + BFD_RELOC_CRIS_32_PLT_PCREL): New relocs. + * bfd-in2.h, libbfd.h: Regenerate. + +2001-03-21 Diego Novillo <dnovillo@redhat.com> + + (_bfd_mips_elf_relocate_section): Give a better error message when + a relocation is not recognized. + +2001-03-21 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c (elf32_hppa_set_gp): Check sec->output_section + non-NULL before attempting to dereference. + +2001-03-20 H.J. Lu <hjl@gnu.org> + + * configure.in: Remove the redundent AC_ARG_PROGRAM. + * configure: Rebuild. + +2001-03-20 Andreas Schwab <schwab@suse.de> + + * elf32-m68k.c (elf_m68k_relocate_section): Don't need the + relocation value when resolving a reference from a debugging + section. + +2001-03-16 Scott Thomason <SThomaso@hii.com> + + * coff64-rs6000.c (xcoff64_swap_sym_out): Fix syntax errors. + (xcoff64_swap_sym_out): Fix syntax errors. + +2001-03-16 Richard Sandiford <rsandifo@redhat.com> + + * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix warning. + +2001-03-15 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c (elf32_hppa_link_hash_entry): Add maybe_pic_call. + (hppa_link_hash_newfunc): Init it. + (hppa_type_of_stub): Only use non-PIC to PIC call stub if caller + section appears to be non-PIC. + (final_link_relocate): Likewise. + (elf32_hppa_adjust_dynamic_symbol): Set maybe_pic_call for any + possible candidate function, and set pic_call for those that will + only have a .plt entry for the PIC call stub. + (hppa_handle_PIC_calls): Set maybe_pic_call. + +2001-03-12 DJ Delorie <dj@redhat.com> + + * elf32-sh.c (sh_elf_relocate_section): Only relocation + R_SH_DIR8WP* relocs if they're against external symbols, else + they're just for relaxing. Validate the reloc values. + +2001-03-12 Stefan Geuken <mail@stefan-geuken.de> + + * binary.c (bfd_external_binary_architecture): Declare. + (binary_object_p): If bfd_external_binary_architecture is defined, + set the architecture to this string. + +2001-03-11 Philip Blundell <philb@gnu.org> + + * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make PLT + entries that could serve as a definition for a weak symbol. + +2001-03-08 Nick Clifton <nickc@redhat.com> + + * Most files: Update copyright notices using Perl script created + by Kevin Buettner <kevinb@redhat.com>. + +2001-03-07 Nick Clifton <nickc@redhat.com> + + * elf32-arm.h (elf32_arm_final_link_relocate): Conditionalise + prior patch on ! defined OLD_ARM_ABI. + +2001-03-07 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix handling of + some relocation values. + +2001-03-06 Nick Clifton <nickc@redhat.com> + + * elf32-arm.h (elf32_arm_final_link_relocate): Clear bit zero + of offset in BLX(1) instruction. + * coff-arm.c (coff_arm_relocate_section): Clear bit zero of + offset in BLX(1) instruction. + Fix formatting. + +2001-03-06 Nick Clifton <nickc@redhat.com> + + * coff-arm.c (coff_arm_reloc_type_lookup): Add + BFD_RELOC_THUMB_PCREL_BLX. + +2001-03-06 Igor Shevlyakov <igor@windriver.com> + + * archures.c (bfd_default_scan): Add Coldfire CPUs. + * bfd-in2.h: Regenerate. + * cpu-m68k.c: Add Coldfire CPUs for arch table. + * ieee.c (ieee_write_processor): Set proper id for + Coldfire CPUs. + +2001-03-01 D.J. Barrow <djbarrow@de.ibm.com,barrow_dj@yahoo.com> + + * configure.in: Add s390 target. + * configure: Regenerate. + +2001-02-28 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Add relocation + to addend. + +2001-02-28 Philip Blundell <pb@futuretv.com> + + * elf32-arm.h: Update mentions of renamed EF_xx constants. + (elf32_arm_print_private_bfd_data): Handle ARM EABI version 2. + +2001-02-27 H.J. Lu <hjl@gnu.org> + + * aoutx.h (NAME(aout,bfd_free_cached_info)): Return true if + abfd->tdata.aout_data == NULL. + +2001-02-27 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c: Correct field selector in stub comments. + (clobber_millicode_symbols): Formatting fix. + + * configure.in: Bump version to 2.11.90. + * configure: Regenerate. + * Makefile.am (CFILES): Rename to SOURCE_CFILES. + (CFILES): $SOURCE_CFILES + generated C files. + (POTFILES): Include $HFILES not $SOURCE_HFILES. + Run "make dep-am" + * Makefile.in: Regenerate. + * doc/Makefile.in: This too. + +2001-02-26 Timothy Wall <twall@cygnus.com> + + * elfxx-ia64.c (elfNN_ia64_aix_add_symbol_hook): Remove obsolete + comments. + +2001-02-26 Nick Clifton <nickc@redhat.com> + + * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Tidy + up, replacing multiple if statements with a switch. + (handle_COMDAT): New function. + +2001-02-26 H.J. Lu <hjl@gnu.org> + + * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Issue + a warning for section flags we do not handle instead of + aborting. + +2001-02-26 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (x86_64_elf_howto_table): Fix order of entries. + +2001-02-22 Timothy Wall <twall@cygnus.com> + + * config.bfd (targ_cpu): Add vectors for ia64-*-aix* (aka Monterey). + * configure.in: Add objects for elf64_ia64_aix vectors. + * configure: Regenerated. + * configure.host: Recognize ia64-*-aix*. + * elfxx-ia64.c: Add hooks for ELF64 on AIX5. Define new vectors + for AIX. AIX5 requires most relocations to be dynamic (*all* + binaries are somewhat similar to shared libraries). + * targets.c: Add elf64_ia64_aix vectors. + +2001-02-21 David Mosberger <davidm@hpl.hp.com> + + * cpu-ia64-opc.c (elf64_ia64_operands}: Fix typo: error string for + C8 said "1" instead of "8". Clarify error string for IMM22: + "signed integer" instead of just "integer". + +2001-02-20 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Don't make + PLT entries that could serve as a definition for a weak symbol. + +2001-02-19 Jakub Jelinek <jakub@redhat.com> + + * elf32-sparc.c (elf32_sparc_finish_dynamic_symbol): Don't make PLT + entries that could serve as a definition for a weak symbol. + * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Likewise. + +2001-02-18 David O'Brien <obrien@FreeBSD> + + * configure.in: Recognize FreeBSD/arm, FreeBSD/PowerPC, and treat + FreeBSD/i386-CURRENT differently until I can figure out the needed + corefile changes. + * configure: Regenerate. + * config.bfd: Recognize FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/arm, + FreeBSD/PowerPC, and FreeBSD/sparc64. + +2001-02-18 lars brinkhoff <lars@nocrew.org> + + * Makefile.am: Add PDP-11 a.out target. + * config.bfd: Likewise. + * configure.in: Likewise. + * targets.c: Likewise. + * archures.c: Likewise. + * bfd-in2.h: Likewise. Add PDP-11 relocations. + * libbfd.h: Add PDP-11 relocations. + * reloc.c: Likewise. + * cpu-pdp11.c: New file. + * pdp11.c: New file. + + * libaout.h (GET_WORD) [ARCH_SIZE==16]: Define. + (GET_SWORD) [ARCH_SIZE==16]: Likewise. + (GET_SWORD) [ARCH_SIZE==16]: Likewise. + (PUT_WORD) [ARCH_SIZE==16]: Likewise. + (GET_MAGIC): New macro. + (PUT_MAGIC): Likewise. + * aout-target.h (MY(object_p)): Use GET_MAGIC to read magic word. + +2001-02-18 Jim Kingdon <jkingdon@engr.sgi.com> + + * irix-core.c (irix_core_core_file_p): Set the architecture (GDB + multiarch needs it). + +2001-02-18 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_link_input_bfd): Ignore invalid section symbol + index. + +2001-02-18 Kazu Hirata <kazu@hxi.com> + + * vms-misc.c: Fix formatting. + +2001-02-16 Kazu Hirata <kazu@hxi.com> + + * vms.c: Fix formatting. + +2001-02-14 H.J. Lu <hjl@gnu.org> + + * elf.c (elf_find_function): New function. + (_bfd_elf_find_nearest_line): Call elf_find_function () to find + the file name and function name. + +2001-02-14 Nick Clifton <nickc@redhat.com> + + * ecoff.c (bfd_debug_section): Update to initialise new fields in + asection structure. + + * Makefile.am (BFD32_BACKENDS_CFILES): Remove peigen.c + (BFD64_BACKENDS): Add pepigen.c + Add rules to create peigen.c and pepigen.c from peXXigen.c. + + * Makefile.in: Regenerate. + * configure: Regenerate. + * po/POTFILES.in: Regenerate. + * po/bfd.pot: Regenerate. + +2001-02-14 H.J. Lu <hjl@gnu.org> + + * libcoff-in.h (pe_tdata): Add members target_subsystem and + force_minimum_alignment. + +2001-02-14 Bo Thorsen <bo@suse.de> + + * elf64-x86-64.c: Small formatting fixes and rearrangements of code. + (elf64_86_64_size_info): Struct added to fix a problem + with the hashtable string entries. + (elf64_x86_64_adjust_dynamic_symbol): Add generation of .got.plt. + (elf64_x86_64_size_dynamic_sections): A FIXME removed. + (elf64_x86_64_size_dynamic_sections): Fix a dynamic entry and + remove the FIXME for this. + (elf64_x86_64_adjust_dynamic_symbol): Fix check for unneeded .plt + section. Also removed the FIXME for it. + (x86_64_elf_howto_table): Use bfd_elf_generic_reloc. + (ELF_DYNAMIC_INTERPRETER): Fix the name of the dynamic linker. + (elf64_x86_64_finish_dynamic_sections): Enable .got.plt writing. + +2001-02-13 Richard Henderson <rth@redhat.com> + + * elfxx-ia64.c (elfNN_ia64_final_link): Set __gp if required + and not user provided. + +2001-02-13 Kazu Hirata <kazu@hxi.com> + + * vms.c (vms_print_symbol): Remove unreachable code. + + * rs6000-core.c: Fix formatting. + +2001-02-13 David Mosberger <davidm@hpl.hp.com> + + * peicode.h (coff_swap_filehdr_out) [COFF_IMAGE_WITH_PE]: Define + as _bfd_XXi_only_swap_filehdr_out. + (pe_mkobject) [PEI_FORCE_MINIMUM_ALIGNMENT]: Set + pe->force_minimum_alignment to TRUE. + (pe_mkobject) [PEI_TARGET_SUBSYSTEM]: Set pe->target_subsystem to + PEI_TARGET_SUBSYSTEM. + (pe_print_private_bfd_data): Call + _bfd_XX_print_private_bfd_data_common() instead of + _bfd_pe_print_private_bfd_data_common(). + (pe_bfd_copy_private_bfd_data): Call + _bfd_XX_bfd_copy_private_bfd_data_common() instead of + _bfd_pe_bfd_copy_private_bfd_data_common(). + (coff_bfd_copy_private_section_data): Define as + _bfd_XX_bfd_copy_private_section_data instead of + _bfd_pe_bfd_copy_private_section_data. + (coff_get_symbol_info): Define as _bfd_XX_get_symbol_info instead + of a _bfd_pe_get_symbol_info. + + * peigen.c: Delete. + + * peXXigen.c: Renamed from peigen.c. + (COFF_WITH_XX): Define this macro (will get expanded into + COFF_WITH_pep or COFF_WITH_pe, depending on whether this is being + compiled as peigen.c or pepigen.c. + [COFF_WITH_pep]: Include "coff/ia64.h" instead of "coff/i386.h" to + define the canonical PEP structures and definitions. + (_bfd_XXi_swap_aouthdr_out): If pe->force_minimum_alignment is in + effect, enforce minimum file and section alignments. If + extra->Subsystem is IMAGE_SUBSYSTEM_UNKNOWN, set it to + pe->target_subsystem (this defaults to IMAGE_SUBSYSTEM_UNKNOWN, + so, by default, this is a no-op). + + * libpei.h: Rename COFF_WITH_PEP to COFF_WITH_pep. + (_bfd_XX_bfd_copy_private_bfd_data_common): Add macros to map + _bfd_XXfoo to _bfd_pepfoo if COFF_WIT_PEP is defined and to + _bfd_pefoo if it's not defined. Use these macros to define + coff swap macros. + + * libcoff.h (pe_tdata): Add members target_subsystem and + force_minimum_alignment. + + * efi-app-ia64.c (COFF_WITH_pep): Rename COFF_WITH_PEP to + COFF_WITH_pep. + (PEI_TARGET_SUBSYSTEM): Rename from PEI_DEFAULT_TARGET_SUBSYSTEM. + + * configure.in (bfd_efi_app_ia64_vec): Use pepigen.lo instead of + peigen.lo. + + * coff-ia64.c: Rename COFF_WITH_PEP to COFF_WITH_pep. + (AOUTSZ): Rename PEP64AOUTSZ and PEP64AOUTHDR to PEPAOUTSZ and + PEPAOUTHDR. + + * Makefile.in (BFD64_BACKENDS): Mention pepigen.lo. + (BFD64_BACKENDS_CFILES): Mention pepigen.c + (peigen.c): Add rule to generate from peXXigen.c. + (pepigen.c): Ditto. + (pepigen.lo): List dependencies for pepigen.lo. + +2001-02-13 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c (elf32_hppa_set_gp): Handle weak $global$. If + $global$ referenced but not defined, set its value here. + +2001-02-09 Bo Thorsen <bo@suse.de> + + * elf64-x86-64.c (elf64_x86_64_check_relocs): Set .rela.got section + alignment to 3. + (elf64_x86_64_check_relocs): Write R_X86_64_GOTPCREL GOT entry + and relocation. + (elf64_x86_64_relocate_section): Fix formatting. + (elf64_x86_64_relocate_section): Fix addend for relocation of + R_X86_64_(8|16|32|PC8|PC16|PC32). + +2001-02-12 Jan Hubicka <jh@suse.cz> + + * elf64-x86-64.c (x86_64_elf_howto): Fix name of R_X86_64_GOTPCREL. + +2001-02-11 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_bfd_final_link): Use file_align for SYMTAB + alignment. + +2001-02-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * elf32-mips.c (mips_elf_create_dynamic_relocation): Undo patch + from 2000-10-13. Do not add the symbol's value for R_MIPS_REL32 + relocations against dynsym symbols. + + * elf32-mips.c (elf_mips_howto_table): Fix the comment on + the R_MIPS_26 relocation. + (mips_elf_calculate_relocation): Use (p + 4) instead of p for + the R_MIPS_26 relocation. + (mips_elf_perform_relocation): Fix the comment on the R_MIPS16_26 + relocation. + * elf64-mips.c (mips_elf64_howto_table_rel): Fix the comment on + the R_MIPS_26 relocation. + (mips_elf64_howto_table_rela): Likewise. + + * elf32-mips.c (struct mips_elf_link_hash_entry): Added no_fn_stub + member to mark symbols that have non-CALL relocations against + them. + (mips_elf_link_hash_newfunc): Initialize no_fn_stub. + (mips_elf_calculate_relocation): Handle R_MIPS_CALL16 like + R_MIPS_GOT16. + (_bfd_mips_elf_check_relocs): Set no_fn_stub for a symbol if a + non-CALL relocation against it is encountered. + (_bfd_mips_elf_copy_indirect_symbol): Merge no_fn_stub as well. + (_bfd_mips_elf_adjust_dynamic_symbol): Only create a stub if + no_fn_stub is not set. + + * elf32-mips.c (mips_elf_output_extsym): Get the output section + information from the real symbol for indirect ones. + Check no_fn_stub to find out if a symbol has a function stub + indeed. + +2001-02-11 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * Makefile.am (stamp-lib): ranlib the libbfd.a in the build directory. + * Makefile.in: Regenerate. + +2001-02-09 David Mosberger <davidm@hpl.hp.com> + + * elfxx-ia64.c (is_unwind_section_name): New function. Returns + true if section name is an unwind table section name. + (elfNN_ia64_additional_program_headers): Count each unwind section + separately. + (elfNN_ia64_modify_segment_map): Install one unwind program header + for each unwind separate section. Note: normally the linker + script merges the unwind sections that go into a single segment, + so this still generates at most one unwind program header per + segment. + + * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Accept any section + name for SHT_IA_64_UNWIND, not just .IA_64.unwind. + (elfNN_ia64_fake_sections): Mark sections with names that start + with .IA_64.unwind but not with .IA_64.unwind_info as an IA-64 + unwind section. + + * elfxx-ia64.c (elfNN_ia64_final_write_processing): New function. + Use it to make sh_info in unwind section point to the text section + it applies to. + +2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * Makefile.am: Add linux target for S/390. + * archures.c: Likewise. + * bfd-in2.h: Likewise. + * config.bfd: Likewise. + * configure.in: Likewise. + * elf.c: Likewise. + * libbfd.h: Likewise. + * targets.c: Likewise. + * cpu-s390.c: New file. + * elf32-s390.c: New file. + * elf64-s390.c: New file. + +2001-02-09 Nick Clifton <nickc@redhat.com> + + * peigen.c (_bfd_pe_get_symbol_info): Suppress addition of + ImageBase. This has already been done by coff_swap_hdr_in. + +2001-02-09 Jakub Jelinek <jakub@redhat.com> + + * elf64-sparc.c (sparc64_elf_copy_private_bfd_data): New function. + +2001-02-09 Jakub Jelinek <jakub@redhat.com> + + * elf64-sparc.c (sparc64_elf_check_relocs): Don't trust reloc_count. + (sparc64_elf_relocate_section): Likewise. + +2001-02-09 Mark Kettenis <kettenis@gnu.org> + + * elf32-sparc.c (_bfd_sparc_elf_howto_table): Treat R_SPARC_UA32 + similar to R_SPARC_32. + * elf64-sparc.c (sparc64_elf_howto_table): Likewise. + +2001-02-08 H.J. Lu <hjl@gnu.org> + + * elf32-i386.c (elf_i386_check_relocs): Reserve R_386_PC32 + relocation entries for weak definitions when building DSO with + -Bsymbolic. + +2001-02-08 Richard Henderson <rth@redhat.com> + + * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Respect weakness + before visibility. Locally defined protected symbols are not + dynamic. + +2001-02-08 Geoffrey Keating <geoffk@redhat.com> + + * config.bfd: Enable coff64 for rs6000-*. Patch from + <hzoli@austin.ibm.com>. + +2001-02-07 Mark Elbrecht <snowball3@bigfoot.com> + + * coffgen.c (coff_find_nearest_line): If stabs info is successfully + found, do not attempt to find dwarf2 info before returning. + +2001-02-07 Jakub Jelinek <jakub@redhat.com> + + * elflink.h (is_global_symbol_definition): Rename to + is_global_data_symbol_definition and have it reject function + symbols. + (elf_link_is_defined_archive_symbol): Use renamed function. + +2001-02-07 Todd Vierling <tv@wasabisystems.com> + + * libbfd-in.h (bfd_target_vector): Change extern array to pointer. + * libbfd.h (bfd_target_vector): Likewise. + * targets.c (bfd_target_vector): Rename to _bfd_target_vector and + make static; create pointer reference named bfd_target_vector. + (_bfd_target_vector_entries): Calculate this based on the array + typed _bfd_target_vector. + +2001-02-06 H.J. Lu <hjl@gnu.org> + + * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Only hidden and + internal symbols are not dynamic. + * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise. + +2001-02-06 Nick Clifton <nickc@redhat.com> + + * Makefile.am (BFD64_BACKENDS_CFILES): Remove elf64-ia64.c, so + that it will not be pulled into the list of files that make up + po/POTFILES.in. + * Makefile.in: Regenerate. + * po/bfd.pot: Regenerate. + +2001-02-06 H.J. Lu <hjl@gnu.org> + + * peicode.h (coff_swap_filehdr_in): Remove the e_magic + checking. + (pe_bfd_object_p): Rewrite with external_PEI_DOS_hdr and + external_PEI_IMAGE_hdr. + +2001-02-06 Kazu Hirata <kazu@hxi.com> + + * elf-m10200.c: Fix formatting. + +2001-02-04 Nick Clifton <nickc@redhat.com> + + * elf32-v850.c (v850_elf_reloc): Do not convert reloc addend to PC + rel, it will be handled later on. + +2001-02-02 Fred Fish <fnf@ninemoons.com> + + * Makefile.in: Fix typo. + +2001-02-01 Kazu Hirata <kazu@hxi.com> + + * elf-m10300.c: Fix formatting. + +2001-01-30 Alan Modra <alan@linuxcare.com.au> + + * elf64-hppa.c (elf64_hppa_elf_get_symbol_type): New function. + (elf_backend_get_symbol_type): Define. + (elf64_hppa_object_p): Set architecture and machine from elf + header flags. + +2001-01-30 Curtis L. Janssen <cljanss@ca.sandia.gov> + + * elf64-alpha.c (elf64_alpha_find_nearest_line): Query dwarf2 + before mdebug. + +2001-01-26 Richard Henderson <rth@redhat.com> + + * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Return false + for non-default visibility. + * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise, but + delete ugly macro and replace with pretty function. + +2001-01-25 Mark Elbrecht <snowball3@bigfoot.com> + + * coff-go32.c: Update copyright. + * coff-stgo32.c: Likewise. + * coff-go32.c (COFF_LONG_FILENAMES): Define. + * coff-stgo32.c (COFF_LONG_FILENAMES): Likewise. + * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Remove .bss entry. + * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. + +2001-01-25 Kazu Hirata <kazu@hxi.com> + + * bfd-in2.h: Rebuild. + * libbfd.h: Likewise. + +2001-01-23 H.J. Lu <hjl@gnu.org> + + * bfd-in2.h: Rebuild. + +2001-01-23 H.J. Lu <hjl@gnu.org> + + * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_buf) + is NULL or PRIV(vms_rec) is outside of the buffer. + +2001-01-23 Kazu Hirata <kazu@hxi.com> + + * coff64-rs6000.c: Fix formatting. + * coff-arm.c: Likewise. + * coffgen.c: Likewise. + * cofflink.c: Likewise. + * coff-mcore.c: Likewise. + * coff-mips.c: Likewise. + * coff-pmac.c: Likewise. + * coff-ppc.c: Likewise. + * coff-rs6000.c: Likewise. + * elf32.c: Likewise. + * elf32-fr30.c: Likewise. + * elf32-i370.c: Likewise. + * elf32-i860.c: Likewise. + * elf32-m32r.c: Likewise. + * elf32-m68k.c: Likewise. + * elf32-mcore.c: Likewise. + * elf32-ppc.c: Likewise. + * elf32-sh.c: Likewise. + * elf32-v850.c: Likewise. + * elf64-alpha.c: Likewise. + * elf64-sparc.c: Likewise. + * elflink.c: Likewise. + * elflink.h: Likewise. + * elf-m10200.c: Likewise. + * elf-m10300.c: Likewise. + * elfxx-ia64.c: Likewise. + + * aoutx.h: Fix formatting. + * bfd.c: Likewise. + * bfd-in2.h: Likewise. + * bfd-in.h: Likewise. + * cpu-i386.c: Likewise. + * cpu-m68hc11.c: Likewise. + * dwarf2.c: Likewise. + * elf64-x86-64.c: Likewise. + * format.c: Likewise. + * freebsd.h: Likewise. + * hash.c: Likewise. + * hp300hpux.c: Likewise. + * hppabsd-core.c: Likewise. + * hpux-core.c: Likewise. + +2001-01-22 Bo Thorsen <bo@suse.de> + + * elf64-x86-64.c: Added PIC support for X86-64. + (elf64_x86_64_link_hash_newfunc): Function added. + (elf64_x86_64_link_hash_table_create): Likewise. + (elf64_x86_64_check_relocs): Likewise. + (elf64_x86_64_gc_mark_hook): Likewise. + (elf64_x86_64_gc_sweep_hook): Likewise. + (elf64_x86_64_adjust_dynamic_symbol): Likewise. + (elf64_x86_64_size_dynamic_sections): Likewise. + (elf64_x86_64_discard_copies): Likewise. + (elf64_x86_64_finish_dynamic_symbol): Likewise. + (elf64_x86_64_finish_dynamic_sections): Likewise. + (elf64_x86_64_relocate_section): Add relocation of PIC sections. + +2001-01-21 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * Makefile.am (install-data-local): Make use of $(DESTDIR). + * Makefile.in: Regenerate. + +2001-01-21 Kazu Hirata <kazu@hxi.com> + + * coff-a29k.c: Fix formatting. + +2001-01-19 H.J. Lu <hjl@gnu.org> + + * elf32-i386.c (elf_i386_check_relocs): Report files with bad + relocation section names. + (elf_i386_relocate_section): Report files with bad relocation + section names and return false. + +2001-01-17 Bo Thorsen <bo@suse.de> + + * targets.c: Alphabetize list of xvecs. + +2001-01-14 Alan Modra <alan@linuxcare.com.au> + + * config.bfd: Add linux target variant for elfxx-hppa. + * configure.in: Recognize bfd_elf32_hppa_linux_vec and + bfd_elf64_hppa_linux_vec. + * configure: Regenerate. + * elf64-hppa.c: Include elf64-target.h again to support linux + target variant. + (elf64_hppa_post_process_headers): Set ELFOSABI_LINUX for linux. + * elf32-hppa.c: Include elf32-target.h again to support linux + target variant. + (elf32_hppa_post_process_headers): New function. + (elf_backend_post_process_headers): Define. + * targets.c (bfd_target_vector): Add bfd_elf64_hppa_linux_vec and + bfd_elf32_hppa_linux_vec. + + * elf32-hppa.c (elf32_hppa_link_hash_table): Add text_segment_base, + and data_segment_base fields. + (elf32_hppa_link_hash_table_create ): Init them. + (elf32_hppa_check_relocs): Update comments. + (hppa_record_segment_addr): New function. + (elf32_hppa_relocate_section): Call it. + (final_link_relocate): Handle R_PARISC_SEGREL32. + (elf32_hppa_final_link): New function. + (bfd_elf32_bfd_final_link): Define to call it. + (hppa_unwind_entry_compare): New function. + * cache.c (bfd_open_file): Create files in write+read mode. + + * elf-hppa.h (elf_hppa_howto_table): Set bitsize value for + SEGREL32 and numerous other relocs. Change duplicate + R_PARISC_NONE relocs to R_PARISC_UNIMPLEMENTED. + + * opncls.c (bfd_fdopenr): Add parens like the comment says around + O_ACCMODE. + + * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Don't create + .plt entries for DT_INIT and DT_FINI. + (elf32_hppa_finish_dynamic_sections): Remove special handling of + DT_INIT and DT_FINI. + + * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Use 16-bit + offsets for stub .plt access if wide mode. Check offset in range. + +2001-01-13 Nick Clifton <nickc@redhat.com> + + * elf32-fr30.c (fr30_elf_howto_table): Remove spurious blank + line. + + * coffcode.h (coff_canonicalize_reloc): Remove spurious blank + line. + +2001-01-12 Alan Modra <alan@linuxcare.com.au> + + * configure.in ([bfd_elf64_x86_64_vec]): Set target64. + * configure: Regenerate. + +2001-01-11 Peter Targett <peter.targett@arccores.com> + + * bfd-in2.h (bfd_architecture): Add bfd_mach_arc_5, + bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8 for ARC variants. + * cpu-arc.c (arch_info_struct): Add entries for variants. + (bfd_arc_arch) Set default to bfd_mach_arc_5. + (arc_get_mach) Don't assume machine names prefixed arc- before + testing. + * elf32-arc.c (arc_elf_object_p): Set machine number based on new + selections. + (arc_elf_final_write_processing) Likewise. + (ELF_MACHINE_CODE) Use EM_ARC. + +2001-01-10 Nick Clifton <nickc@redhat.com> + + * coff-arm.c (LOCAL_LABEL_PREFIX): Change definition to "". + +2001-01-07 Philip Blundell <philb@gnu.org> + + * README: Replace `bug-gnu-utils@gnu.org' with + `bug-binutils@gnu.org'. + +2001-01-04 Kazu Hirata <kazu@hxi.com> + + * som.c: Fix formatting. + +2001-01-03 Kazu Hirata <kazu@hxi.com> + + * ecoffswap.h: Fix formatting. + * elf-bfd.h: Likewise. + * elfarm-nabi.c: Likewise. + * elfarm-oabi.c: Likewise. + * elfcode.h: Likewise. + * elfcore.h: Likewise. + * elflink.c: Likewise. + * elflink.h: Likewise. + * elfxx-ia64.c: Likewise. + * elfxx-target.h: Likewise. + * libbfd.c: Likewise + * linker.c: Likewise. + * lynx-core.c: Likewise. + +2001-01-02 Kazu Hirata <kazu@hxi.com> + + * pc532-mach.c: Fix formatting. + * pe-arm.c: Likewise. + * pe-i386.c: Likewise. + * pe-mips.c: Likewise. + * pe-ppc.c: Likewise. + * pe-sh.c: Likewise. + * pei-mips.c: Likewise. + * pei-sh.c: Likewise. + * peicode.h: Likewise. + * ppcboot.c: Likewise. + * ptrace-core.c: Likewise. + +2001-01-01 Kazu Hirata <kazu@hxi.com> + + * reloc.c: Fix formatting. + * riscix.c: Likewise. + * rs6000-core.c: Likewise. + * xcoff-target.h: Likewise. + +2000-12-29 Hans-Peter Nilsson <hp@bitrange.com> + + * elfcode.h (elf_object_p): Also restore the bfd mach field on + error, by calling bfd_default_set_arch_mach with incoming + values. + +2000-12-26 Kazu Hirata <kazu@hxi.com> + + * vaxnetbsd.c: Fix formatting. + * versados.c: Likewise. + * vms-gsd.c: Likewise. + * vms-hdr.c: Likewise. + * vms-misc.c: Likewise. + +2000-12-25 Alexandre Oliva <aoliva@redhat.com> + + * archive.c (coff_write_armap): Don't write more than symbol_count + `archive_member_file_ptr's. + +2000-12-25 Kazu Hirata <kazu@hxi.com> + + * vms-tir.c: Fix formatting. + +2000-12-23 Kazu Hirata <kazu@hxi.com> + + * vms.c: Fix formatting. + * vms.h: Likewise. + +2000-12-21 Santeri Paavolainen <santtu@ssh.com> + + * vms-hdr.c: Include alloca.h if HAVE_ALLOCA_H is defined. + + * peicode.h (pe_ILF_object_p): Add const to import of TARGET_LITTLE_SYM. + + * elf32-m32r.c (m32r_elf_generic_reloc): Add cast to avoid (void *) + arithmetic. + + * elf32-fr30.c: Add casts to avoid (void *) arithmetic. + + * coffcode.h (styp_to_sec_flags): Add empty statement after label. + +2000-12-21 Richard Sandiford <rsandifo@redhat.com> + + * libbfd.c (bfd_get_bits): Added + (bfd_put_bits): Likewise + * bfd-in.h: Declared the above. + * bfd-in2.h: Regenerated. + +2000-12-20 Kazu Hirata <kazu@hxi.com> + + * targets.c: Fix formatting. + * tekhex.c: Likewise. + * trad-core.c: Likewise. + +2000-12-19 Kazu Hirata <kazu@hxi.com> + + * sco5-core.c: Fix formatting. + * section.c: Likewise. + * sparclinux.c: Likewise. + * sparclynx.c: Likewise. + * sparcnetbsd.c: Likewise. + * srec.c: Likewise. + * stabs.c: Likewise. + * stab-syms.c: Likewise. + * sunos.c: Likewise. + * syms.c: Likewise. + * sysdep.h: Likewise. + +2000-12-18 Nick Clifton <nickc@redhat.com> + + * coff-arm.c (EXTRA_S_FLAGS): Only define if not already + defined. + * epoc-pe-arm.c (EXTRA_S_FLAGS): Define. + * epoc-pei-arm.c (EXTRA_S_FLAGS): Define. + +2000-12-18 Nick Clifton <nickc@redhat.com> + + * vms-misc.c (_bfd_vms_get_record): Add default case to + file_format switch. + +2000-12-15 Miloslav Trmac <mitr@volny.cz> + + * elfcore.h (elf_core_file_p): Move to the start of the program + headers before attempting to read them. + +2000-12-14 Kazu Hirata <kazu@hxi.com> + + * peigen.c: Fix formatting. + * som.c: Likewise. + * som.h: Likewise. + +2000-12-13 Kazu Hirata <kazu@hxi.com> + + * peigen.c: Fix formatting. + +2000-12-12 Jim Wilson <wilson@redhat.com> + + * elfxx-ia64.c (get_dyn_sym_info): Cast %p argument to void *. + +2000-12-08 Mark Salter <msalter@redhat.com> + + * binary.c (binary_set_section_contents): Ignore sections + with zero size. + +2000-12-12 Kazu Hirata <kazu@hxi.com> + + * m68klinux.c: Fix formatting. + * m68knetbsd.c: Likewise. + * mipsbsd.c: Likewise. + * netbsd-core.c: Likewise. + * netbsd.h: Likewise. + * newsos3.c: Likewise. + * nlm32-alpha.c: Likewise. + * nlm32-i386.c: Likewise. + * nlm32-ppc.c: Likewise. + * nlm32-sparc.c: Likewise. + * nlmcode.h: Likewise. + * nlmswap.h: Likewise. + * nlm-target.h: Likewise. + * ns32knetbsd.c: Likewise. + +2000-12-10 Fred Fish <fnf@be.com> + + * elflink.h (elf_link_output_extsym): Don't complain about undefined + symbols in shared objects if allow_shlib_undefined is true. + +2000-12-12 Nick Clifton <nickc@redhat.com> + + * cpu-sh.c: Fix formattng. + * elf.c: Fix formattng. + * elf32-mips.c: Fix formattng. + * elf32-sh.c: Fix formattng. + * elf64-alpha.c: Fix formattng. + +2000-12-09 Nick Clifton <nickc@redhat.com> + + * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Pass + dwarf2_find_line_info as last parameter to invocation of + _bfd_dwarf2_find_nearest_line. + * elf32-arm.h (elf32_arm_find_nearest_line): Pass + dwarf2_find_line_info as last parameter to invocation of + _bfd_dwarf2_find_nearest_line. + +2000-12-08 Mark Elbrecht <snowball3@bigfoot.com> + + * Makefile.am (BFD32_BACKENDS): Move dwarf2.lo from here... + (BFD_LIBS): ...to here. + (BFD32_BACKENDS_CFILES): Move dwarf2.c from here... + (BFD_LIBS_CFILES): ...to here. + * Makefile.in: Regenerate. + * configure.in: Remove dwarf.lo from the elf shell variable. + * configure: Regenerate. + * libcoff-in.h (coff_tdata): Add pointer dwarf2_find_line_info. + * libcoff.h: Regenerate. + * coffgen.c (coff_find_nearest_line): Call + _bfd_dwarf2_find_nearest_line. + * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add parameter. Update + accordingly. + (read_abbrevs): Likewise + (decode_line_info): Likewise. + (parse_comp_unit): Likewise. + (comp_unit_find_nearest_line): Likewise. + * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype. + * libbfd.h: Regenerate. + * elf.c (_bfd_elf_find_nearest_line): Update call. + * elf-bfd.h (elf_obj_tdata): Change dwarf2_find_line_info to type PTR. + * dwarf2.c (concat_filename): Use IS_ABSOLUTE_PATH. + * coffcode.h (STYP_XCOFF_DEBUG, STYP_DEBUG_INFO): New macros. + (sec_to_styp_flags): Use them. Handle DWARF2 sections. + (styp_to_sec_flags): Handle DWARF2 sections. + * elf32-arm.h (elf32_arm_find_nearest_line): Add parameter to call + to _bfd_find_nearest_line. + * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Add parameter to + call to _bfd_find_nearest_line. + +2000-12-08 Kazu Hirata <kazu@hxi.com> + + * coffgen.c: Fix formatting. + * elf-m10300.c: Likewise. + * elf32-i386.c: Likewise. + * elf32-i960.c: Likewise. + * elf32-m68k.c: Likewise. + * elf32-mcore.c: Likewise. + * elf32-ppc.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-sparc.c: Likewise. + +2000-12-07 Kazu Hirata <kazu@hxi.com> + + * elf32-ppc.c: Fix formatting. + * elf64-x86-64.c: Likewise. + +2000-12-06 Ulf Carlsson <ulfc@engr.sgi.com> + + From Ralf Baechle <ralf@gnu.org> + + * elf32-mips.c (elf32_mips_merge_private_bfd_data): Always permit + BFDs containing no sections or empty .text, .data or .bss sections + to be merged, regardless of their flags. + +2000-12-06 Kazu Hirata <kazu@hxi.com> + + * elf32-m32r.c: Fix formatting. + * elf32-m68hc11.c: Likewise. + * elf32-m68hc12.c: Likewise. + * elf32-m68k.c: Likewise. + * elf32-mcore.c: Likewise. + * elf32-pj.c: Likewise. + * elf32-ppc.c: Likewise. + +2000-12-05 Kazu Hirata <kazu@hxi.com> + + * elf32-fr30.c: Fix formatting. + * elf32-hppa.c: Likewise. + * elf32-i370.c: Likewise. + * elf32-i386.c: Likewise. + * elf32-i860.c: Likewise. + * elf32-i960.c: Likewise. + +2000-12-03 Kazu Hirata <kazu@hxi.com> + + * elf32-arm.h: Fix formatting. + * elf32-avr.c: Likewise. + * elf32-cris.c: Likewise. + * elf32-d10v.c: Likewise. + * elf32-d30v.c: Likewise. + * elf-hppa.h: Likewise. + * elf-m10200.c: Likewise. + * elf-m10300.c: Likewise. + +2000-12-01 Chris Demetriou <cgd@sibyte.com> + + * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mips32 and + bfd_mach_mips32_4k. Update FIXME comment. + * archures.c (bfd_mach_mips32): New constant. + (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to + the latter, renumber it. + * bfd-in2.h (bfd_mach_mips32): New constant. + (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to + the latter, renumber it. + * cpu-mips.c (I_mips32): New constant. + (I_mips4K, I_mips32_4k): Rename the former to the latter. + (arch_info_struct): Add bfd_mach_mips32 entry, replace + bfd_mach_mips4K entry with bfd_mach_mips32_4k entry. + * elf32-mips.c (elf_mips_isa): Add E_MIPS_ARCH_32 case. + (elf_mips_mach): Likewise. Also, replace E_MIPS_MACH_MIPS32 + with E_MIPS_MACH_MIPS32_4K. + (_bfd_mips_elf_final_write_processing): Replace + bfd_mach_mips4K with bfd_mach_mips32_4k case, add + bfd_mach_mips32 case. + (_bfd_mips_elf_merge_private_bfd_data): Generalize ISA mixing + comparison with support for MIPS32. + (_bfd_mips_elf_print_private_bfd_data): Print ISA name for + MIPS32. + + * aoutx.h (NAME(aout,machine_type)): Add cases for + bfd_mach_mips5 and bfd_mach_mips64. + * archures.c (bfd_mach_mips5, bfd_mach_mips64): New constants. + * bfd-in2.h (bfd_mach_mips5, bfd_mach_mips64): Likewise. + * cpu_mips.c (I_mips5, I_mips64): New definitions. + (arch_info_struct): Add entries for bfd_mach_mips5 and + bfd_mach_mips64. + * elf32-mips.c (elf_mips_isa, elf_mips_mach, + _bfd_mips_elf_print_private_bfd_data): Add cases for + E_MIPS_ARCH_5 and E_MIPS_ARCH_64. + (_bfd_mips_elf_final_write_processing): Add cases for + bfd_mach_mips5 and bfd_mach_mips64. + + * aoutx.h (NAME(aout,machine_type)): Add a + bfd_mach_mips_sb1 case. + * archures.c (bfd_mach_mips_sb1): New constant. + * bfd-in2.h (bfd_mach_mips_sb1): New constant. + * cpu-mips.c (I_sb1): New constant. + (arch_info_struct): Add entry for bfd_mach_mips_sb1. + * elf32-mips.c (elf_mips_mach): Add case for + E_MIPS_MACH_SB1. + (_bfd_mips_elf_final_write_processing): Add case for + bfd_mach_mips_sb1. + +2000-12-01 Joel Sherrill <joel@OARcorp.com> + + * config.bfd (arm-*-rtems*, a29k-*rtems*): New targets. + (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets. + (sparc*-*-rtems*): Switched from a.out to ELF. + +2000-11-30 Jan Hubicka <jh@suse.cz> + + * Makefile.am (BFD64_BACKENDS): Add elf64-x86-64.lo + BFD64_BACKENDS_CFILES): Add elf64-x86-64.c + (elf64-x86-64.lo): Add dependencies. + * archures.c (DESCRIPTION): Add bfd_mach_x86_64, + bfd_mach_x86_64_intel_syntax. + * elf.c (prep_headers): Use EM_x86_64 for 64bit output. + * config.bfd (x86_64): Add. + * configure.in: Add support for bfd_elf64_x86_64_vec. + * cpu-i386.c (bfd_x86_64_arch_intel_syntax, bfd_x86_64_arch): Add. + (bfd_i386_arch, i8086_ar): Link in. + * elf64-x86-64.c: New file. + * reloc.c (ENUMDOC): Add BFD_RELOC_X86_64*. + * targets.c (bfd_elf64_x86_64_vec): Add. + (bfd_target_vect): Add bfd_elf64_x86_64_vec. + +2000-11-30 Kazu Hirata <kazu@hxi.com> + + * xcofflink.c: Fix formatting. + +2000-11-28 Kazu Hirata <kazu@hxi.com> + + * aoutx.h: Fix formatting. + * bfd-in.h: Likewise. + * bfd-in2.h: Likewise. + * cache.c: Likewise. + * cisco-core.c: Likewise. + * coff64-rs6000.c: Likewise. + * coffcode.h: Likewise. + * coffswap.h: Likewise. + * corefile.c: Likewise. + * elf32-mips.c: Likewise. + +2000-11-27 Kazu Hirata <kazu@hxi.com> + + * aout-adobe.c: Fix formatting. + * coff64-rs6000.c: Likewise. + * coffgen.c: Likewise. + * cofflink.c: Likewise. + +2000-11-27 Philip Blundell <pb@futuretv.com> + + * libcoff-in.h (coff_tdata): Add `strings_written' flag. + (obj_coff_strings_written): New accessor macro for above. + * libcoff.h: Regenerate. + * cofflink.c (_bfd_coff_final_link): Say that we wrote the + strings. + * coffcode.h (coff_write_object_contents): No need to write out + the string table if it's already been done. + +2000-11-22 Philip Blundell <pb@futuretv.com> + + * cofflink.c (_bfd_coff_generic_relocate_section): Don't object to + weak undefined symbols. + +2000-11-24 Nick Clifton <nickc@redhat.com> + + * archures.c (bfd_mach_arm_5TE): Define. + (bfd_mach_arm+XScale): Define. + * bfd-in2.h: Regenerate. + + * coff-arm.c (coff_arm_reloc_type_lookup): Accept + BFD_RELOC_ARM_PCREL_BLX. + + * coffcode.h (coff_set_flags): Set flags for 5t, 5te and + XScale machine numbers. + + * config.bfd (xscale-elf): Add target. + (xscale-coff): Add target. + + * cpu-arm.c: Add xscale machine name. + Add v5t, v5te and XScale machine numbers. + +2000-11-23 Kazu Hirata <kazu@hxi.com> + + * aix386-core.c: Fix formatting. + +2000-11-22 Jim Wilson <wilson@redhat.com> + + * coff-ia64.c (howto_table): Use EMPTY_HOWTO. + (in_reloc_p): Add ATTRIBUTE_UNUSED to unused parameters. + * cpu-ia64-opc.c (ins_rsvd, ext_rsvd, ins_const, ext_const): Likewise. + (ins_imms_scaled): Initialize sign_bit at function entry. + (elf64_ia64_operands): Add missing initializers. + * elfxx-ia64.c (elfNN_ia64_reloc, elfNN_ia64_reloc_type_lookup, + elfNN_ia64_info_to_howto, elfNN_ia64_fake_sections, + elfNN_ia64_add_symbol_hook, elfNN_ia64_is_local_label_name, + elfNN_ia64_local_hash_table_init, get_fptr, get_pltoff, + elfNN_ia64_adjust_dynamic_symbol): Add ATTRIBUTE_UNUSED for unused + parameters. + (elfNN_ia64_info_to_howto): Initialize free_relocs, free_contents, + and free_extsyms at function entry. + (elfNN_add_symbol_hook): Add unsigned cast to bfd_get_gp_size result. + (elfNN_ia64_create_dynamic_sections): Delete unused local h. + (get_got): Delete unused local srel. + (elfNN_ia64_check_relocs): Initialize dynrel_type when declared. + (elfNN_ia64_relocate_section): Delete unused local dynindx. + +2000-11-21 Kazu Hirata <kazu@hxi.com> + + * coff-a29k.c: Fix formatting. + * coff-h8500.c: Likewise. + * coff-i960.c: Likewise. + * coff-ppc.c: Likewise. + * coff-rs6000.c: Likewise. + * coff-stgo32.c: Likewise. + * coff-tic54x.c: Likewise. + * coff-w65.c: Likewise. + * cpu-h8500.c: Likewise. + * cpu-hppa.c: Likewise. + * cpu-ns32k.c: Likewise. + * ecoff.c: Likewise. + * ecofflink.c: Likewise. + +2000-11-21 Nick Clifton <nickc@redhat.com> + + * elf32-sh.c (sh_elf_reloc_loop): Fix compile time warning, and + remove possibility of infinite loop. + +2000-11-20 Kazu Hirata <kazu@hxi.com> + + * aix386-core.c: Fix formatting. + * aout-adobe.c: Likewise. + * aout-arm.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. + * bfd-in.h: Likewise. + * bfd-in2.h: Likewise. + * bfd.c: Likewise. + * bout.c: Likewise. + +2000-11-17 H.J. Lu <hjl@gnu.org> + + * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Don't create + pltoff entries for DT_INIT and DT_FINI. + (elfNN_ia64_final_link): Don't set DT_INIT/FINI entries. + (elfNN_ia64_finish_dynamic_sections): Don't fill in DT_INIT/FINI + entries. + +2000-11-16 Richard Henderson <rth@redhat.com> + + * elfxx-ia64.c (elfNN_ia64_check_relocs): Handle IPLT relocs. + (allocate_dynrel_entries): Likewise. + (elfNN_ia64_relocate_section): Likewise. Set REL addends correctly. + (set_pltoff_entry): Likewise. + (ia64_howto_table): Remove R_IA64_SEGBASE, and R_IA64_EPLT[ML]SB + (elfNN_ia64_reloc_type_lookup): Likewise. + (elfNN_ia64_install_value): Likewise. + (elfNN_ia64_relocate_section): Likewise. + * reloc.c (BFD_RELOC_IA64_SEGBASE): Remove. + (BFD_RELOC_IA64_EPLTMSB, BFD_RELOC_IA64_EPLTLSB): Remove. + +2000-11-16 Kazu Hirata <kazu@hxi.com> + + * cpu-a29k.c: Fix formatting. + * cpu-alpha.c: Likewise. + * cpu-arm.c: Likewise. + * cpu-avr.c: Likewise. + * cpu-d10v.c: Likewise. + * cpu-h8500.c: Likewise. + * cpu-hppa.c: Likewise. + * cpu-i370.c: Likewise. + * cpu-i386.c: Likewise. + * cpu-i960.c: Likewise. + * cpu-ia64-opc.c: Likewise. + * cpu-ia64.c: Likewise. + * cpu-m32r.c: Likewise. + * cpu-m68hc11.c: Likewise. + * cpu-m68hc12.c: Likewise. + * cpu-m68k.c: Likewise. + * cpu-m88k.c: Likewise. + * cpu-mips.c: Likewise. + * cpu-ns32k.c: Likewise. + * cpu-pj.c: Likewise. + * cpu-powerpc.c: Likewise. + * cpu-sh.c: Likewise. + * cpu-sparc.c: Likewise. + * cpu-tic54x.c: Likewise. + * cpu-v850.c: Likewise. + * cpu-vax.c: Likewise. + * cpu-w65.c: Likewise. + * cpu-we32k.c: Likewise. + * cpu-z8k.c: Likewise. + * dwarf1.c: Likewise. + * dwarf2.c: Likewise. + +2000-11-15 Kazu Hirata <kazu@hxi.com> + + * coff-arm.c: Fix formatting. + * coff-ppc.c: Likewise. + * coff-rs6000.c: Likewise. + * coff-sh.c: Likewise. + * coff-sparc.c: Likewise. + * coff-tic30.c: Likewise. + * coff-tic54x.c: Likewise. + * coff-tic80.c: Likewise. + * coff-w65.c: Likewise. + * coff-we32k.c: Likewise. + * coff-z8k.c: Likewise. + +2000-11-15 Richard Henderson <rth@redhat.com> + + * elf64-alpha.c (elf64_alpha_check_relocs): Create the reloc + section with the same ALLOC|LOAD flags as the source section. + +2000-11-14 Jakub Jelinek <jakub@redhat.com> + + * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used + by STO_ALPHA constants. + +2000-11-14 Kazu Hirata <kazu@hxi.com> + + * coff-pmac.c: Fix formatting. + * coff-ppc.c: Likewise. + +2000-11-13 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_link_add_object_symbols): Also add indirect + symbols for common symbols with the default version. + +2000-11-09 Philip Blundell <pb@futuretv.com> + + * section.c (STD_SECTION): Set gc_mark flag. + +2000-11-11 Kazu Hirata <kazu@hxi.com> + + * coff-i960.c: Likewise. + * coff-m68k.c: Likewise. + * coff-m88k.c: Likewise. + * coff-mcore.c: Likewise. + * coff-mips.c: Likewise. + +2000-11-11 Bernd Schmidt <bernds@cygnus.co.uk> + + * elf32-sh.c (sh_elf_relocate_section): Ignore R_SH_NONE relocs. + +2000-11-10 Kazu Hirata <kazu@hxi.com> + + * coff-h8300.c: Fix formatting. + * coff-h8500.c: Likewise. + * coff-i386.c: Likewise. + * coff-i860.c: Likewise. + * coff-i960.c: Likewise. + * coff-ia64.c: Likewise. + +2000-11-09 Kazu Hirata <kazu@hxi.com> + + * archive.c: Fix formatting. + * archures.c: Likewise. + +2000-11-07 Richard Henderson <rth@redhat.com> + + * elfxx-ia64.c (elf64_ia64_final_link): New local unwind_output_sec. + Set it before bfd_elf64_bfd_final_link call. Use it after the call. + * section.c (bfd_set_section_contents): Call memcpy if + section->contents set and location not equal to contents plus offset. + +2000-11-08 Kazu Hirata <kazu@hxi.com> + + * bfd-in.h: Fix formatting. + * bfd-in2.h: Likewise. + * bfd.c: Likewise. + * binary.c: Likewise. + * bout.c: Likewise. + * coff-a29k.c: Likewise. + * coff-alpha.c: Likewise. + * coff-apollo.c: Likewise. + * coff-aux.c: Likewise. + +2000-11-07 Kazu Hirata <kazu@hxi.com> + + * aix386-core.c: Fix formatting. + * aoutf1.h: Likewise. + * aoutx.h: Likewise. + * archures.c: Likewise. + * armnetbsd.c: Likewise. + +2000-11-07 Alan Modra <alan@linuxcare.com.au> + + * coff-h8300.c (special): Adjust reloc address. + +2000-11-06 Steve Ellcey <sje@cup.hp.com> + + * archures.c (bfd_mach_ia64_elf64, bfd_mach_ia64_elf32): Add defines + to differentiate elf32 and elf64 on ia64. + * bfd-in2.h: Regenerate. + * config.bfd: Add target for "ia64*-*-hpux*". + * configure.in: Add bfd_elf32_ia64_big_vec to selvecs switch. + * configure: Regenerate. + * cpu-ia64.c (bfd_ia64_elf32_arch): Add elf32 arch info structure. + * targets.c: Add bfd_target bfd_elf32_ia64_big_vec. + + * Makefile.am: Make elf32-ia64.c and elf64-ia64.c derived objects + from elfxx-ia64.c. Add depenency rules for making elf32-ia64.lo. + * Makefile.in: Regnerate. + * elf64-ia64.c: Deleted. + * elfxx-ia64.c: New file, paramaterized version of elf64-ia64.c. + +2000-11-06 Kazu Hirata <kazu@hxi.com> + + * aout-adobe.c: Fix formatting. + * aout-arm.c: Likewise. + * aout-cris.c: Likewise. + * aout-encap.c: Likewise. + * aout-ns32k.c: Likewise. + * aout-target.h: Likewise. + * aout-tic30.c: Likewise. + +2000-11-05 Philip Blundell <philb@gnu.org> + + * elf32-arm.h (elf32_arm_merge_private_bfd_data): Always permit + BFDs containing no sections to be merged, regardless of their flags. + +2000-11-04 Philip Blundell <philb@gnu.org> + + * elf32-arm.h (elf32_arm_relocate_section): Suppress error message + if a relocation for an undefined symbol also results in an + overflow. + +2000-11-06 Christopher Faylor <cgf@cygnus.com> + + * config.bfd: Add support for Sun Chorus. + +2000-11-05 David O'Brien <obrien@FreeBSD.org> + + * configure.in: Recognize alpha-*-freebsd*. + * configure: Regenerate. + +2000-11-02 Luciano Gemme <ishitawa@yahoo.com> + + * srec.c (CHUNK): Rename to DEFAULT_CHUNK. + (Chunk): New global variable set by a parameter in objcopy.c. + (S3Forced): New global variable set by a parameter in + objcopy.c. + (srec_set_section_contents): If S3Forced is true, always generate + S3 records. + (srec_write_section): Use 'Chunk' to limit maximum length of S + records. + +2000-11-02 Per Lundberg <plundis@chaosdev.org> + + * config.bfd: Add support for i[3456]86-chaosdev-storm-chaos. + * Makefile.in: Regenerate. + * bfd-in2.h: Regenerate. + * po/bfd.pot: Regenerate. + +2000-10-31 Philip Blundell <philb@gnu.org> + + * elf32-arm.h (elf32_arm_merge_private_bfd_data): Only handle + EF_SOFT_FLOAT if it is defined. + +2000-10-27 Philip Blundell <philb@gnu.org> + + * elf32-arm.h (elf32_arm_copy_private_bfd_data): Don't refuse + attempts to mix PIC code with non-PIC, just mark the output as + being position dependent. + (elf32_arm_merge_private_bfd_data): Likewise. Print an error + message for EF_SOFT_FLOAT mismatches. Display diagnostics for + all mismatches, not just the first one. + +2000-10-25 Chris Demetriou <cgd@sibyte.com> + + * ieee.c (ieee_archive_p): Plug one of many possible + memory leaks in error handling. + +2000-10-20 Jakub Jelinek <jakub@redhat.com> + + * elf32-sparc.c (elf32_sparc_merge_private_bfd_data, + elf32_sparc_object_p, elf32_sparc_final_write_processing): + Support v8plusb. + * elf64-sparc.c (sparc64_elf_merge_private_bfd_data, + sparc64_elf_object_p): Support v9b. + * archures.c: Declare v8plusb and v9b machines. + * bfd-in2.h: Ditto. + * cpu-sparc.c: Ditto. + +2000-10-16 Geoffrey Keating <geoffk@shoggoth.cygnus.com> + + * elf64-sparc.c (sparc64_elf_relocate_section): Clear the location + of a GOT reloc. + + * elf32-ppc.c (SYMBOL_REFERENCES_LOCAL): New macro. + (SYMBOL_CALLS_LOCAL): New macro. + (ppc_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL. + (ppc_elf_check_relocs): Use SYMBOL_REFERENCES_LOCAL. + (ppc_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL. + (ppc_elf_relocate_section): Use flag variable to determine + whether the relocation refers to a local symbol. + Test whether a PLTREL24 reloc will produce a reloc by looking + to see whether a PLT entry was made. + +2000-10-14 Geoffrey Keating <geoffk@shoggoth.cygnus.com> + + * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make PLT + entries that could serve as a definition for a weak symbol. + +2000-10-13 Ulf Carlsson <ulfc@engr.sgi.com> + + From Ralf Baechle <ralf@gnu.org> + + * elf32-mips.c (mips_elf_create_dynamic_relocation): New argument + local_p. Add symbol value only for non-R_MIPS_REL32 relocations + against local symbols. + (_bfd_mips_elf_finish_dynamic_sections): Undo patch from 2000-10-01. + +2000-10-12 Alan Modra <alan@linuxcare.com.au> + + * section.c (struct sec): Add kept_section. + (struct bfd_comdat_info): Remove sec, we can use above. + (STD_SECTION): Add initializer. + (bfd_make_section_anyway): Init here too. + + * bfd-in2.h: Regenerate. + + * elflink.h (elf_link_add_object_symbols): Remove unnecessary + zeroing of `flags'. + (elf_link_input_bfd): Set all asection->symbol->value's here, and + fudge values for discarded link-once section symbols. + + * elf64-hppa.c: Include alloca-conf.h + +2000-10-11 Alan Modra <alan@linuxcare.com.au> + + * elf.c (swap_out_syms): Revert 2000-10-07 changes. + + * ieee.c (ieee_make_empty_symbol): Oops, bfd_zalloc needs another arg. + +2000-10-10 Alan Modra <alan@linuxcare.com.au> + + * ieee.c (ieee_make_empty_symbol): Use bfd_zalloc, not bfd_zmalloc. + +2000-10-10 Tom Rix <trix@redhat.com> + + * section.c (bfd_make_section_anyway): Release newsect ptr when + newsect->symbol fails to alloc. Use bfd_release instead of free. + +2000-10-09 Richard Henderson <rth@cygnus.com + + * elf64-ia64.c (elf64_ia64_unwind_entry_compare_bfd): New. + (elf64_ia64_unwind_entry_compare): New. + (elf64_ia64_final_link): Sort the .IA_64.unwind section. + +2000-10-07 Alan Modra <alan@linuxcare.com.au> + + * elflink.h (size_dynamic_sections): Don't create various tags if + .dynstr is excluded from the link. Don't set first dynsym entry + if dynsymcount is zero. + (elf_bfd_final_link): Don't try to swap out dynamic syms if + .dynsym excluded from the link. Don't try to write any dynamic + sections excluded from the link. + + * elf.c (swap_out_syms): Handle global section symbols. + +2000-10-05 DJ Delorie <dj@redhat.com> + + * peigen.c (_bfd_pei_swap_scnhdr_out): note extended relocs + * coffcode.h (coff_set_alignment_hook): read extended reloc count + (coff_write_relocs): write extended reloc count + (coff_write_object_contents): account for extended relocs + +2000-10-05 Jim Wilson <wilson@cygnus.com> + + * elf-bfd.h (struct elf_backend_data): Add elf_backend_section_flags + field. + * elf.c (_bfd_elf_make_section_from_shdr): Call the + elf_backend_section_flags function. + * elf64-ia64.c (elf64_ia64_section_from_shdr): Delete flag conversion + code. + (elf64_ia64_section_flags): New function containing flag conversion + code. + (elf_backend_section_flags): Define to elf64_ia64_section_flags. + * elfxx-target.h (elf_backend_section_flags): Define. + (elfNN_bed): Initialize elf_backend_section_flags field. + +2000-10-02 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c (elf32_hppa_check_relocs): Correct call to + _bfd_elf32_gc_record_vtable. Correct a comment. + +2000-10-01 Ulf Carlsson <ulfc@engr.sgi.com> + + From Ralf Baechle <ralf@gnu.org> + + * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Mark gld + produces binaries with got[1] = 0x80000001 to differenciate them + for the dynamic linker from the broken binaries produced by old + versions. + +2000-09-30 Petr Sorfa <petrs@sco.com> + + * elf.c (elfcore_grok_pstatus): Check for size of pxstatus_t. + (elfcore_grok_lwpstatus): Check for size of lwpxstatus_t. + * configure.in: Add check for pxstatus_t and lwpxstatus_t. + * configure: Regenerate. + +2000-09-27 Hans-Peter Nilsson <hp@axis.com> + + Define two bfd_targets for absence and presence of leading + underscore on symbols. Make sure to only link same kind. + * elf32-cris.c (cris_elf_object_p, + cris_elf_final_write_processing, cris_elf_print_private_bfd_data, + cris_elf_merge_private_bfd_data): New. + (elf_backend_object_p, elf_backend_final_write_processing, + bfd_elf32_bfd_print_private_bfd_data, + bfd_elf32_bfd_merge_private_bfd_data): Define. + <Target vector definition>: Include elf32-target.h twice with + different macro settings: + (TARGET_LITTLE_SYM): First as bfd_elf32_cris_vec, then as + bfd_elf32_us_cris_vec. + (TARGET_LITTLE_NAME): First as "elf32-cris", then "elf32-us-cris". + (elf_symbol_leading_char): First as 0, then '_'. + (INCLUDED_TARGET_FILE): Define for second include of elf32-target.h. + * config.bfd (cris-*-*): Add bfd_elf32_us_cris_vec to targ_selvecs. + * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vector. + * configure: Regenerate. + * targets.c: Declare bfd_elf32_us_cris_vec. + * po/bfd.pot: Regenerate. + +2000-09-29 Momchil Velikov <velco@fadata.bg> + + * elf32-arm.h (arm_add_to_rel): Correctly adjust the addend for + R_ARM_THM_PC22 relocations. + +2000-09-29 NIIBE Yutaka <gniibe@chroot.org> + + * elflink.h (elf_link_add_object_symbols): Don't bfd_release runpath. + +2000-09-29 Momchil Velikov <velco@fadata.bg> + + * elf.c (elf_fake_sections): Do not mark the section SHT_NOBITS if + is has the SEC_HAS_CONTENTS flag set. + +2000-09-28 Örjan Friberg <orjanf@axis.com> + Hans-Peter Nilsson <hp@axis.com> + + * aout-cris.c (N_TXTADDR): Define. + +2000-09-28 John David Anglin <dave@hiauly1.hia.nrc.ca> + + * som.c: Include alloca-conf.h. + * Makefile.am: "make dep-am" + * Makefile.in: Regenerate. + +2000-09-27 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c (plt_stub): New. + (PLT_STUB_ENTRY): Define. + (elf32_hppa_link_hash_table): Change multi_subspace to packed + boolean. Add need_plt_stub, has_12bit_branch and has_17bit_branch. + (elf32_hppa_link_hash_table_create): Init to suit. + (elf32_hppa_check_relocs): Set has_12bit_branch and + has_17bit_branch as appropriate. + (elf32_hppa_adjust_dynamic_symbol): Set need_plt_stub for + non-local functions. + (elf32_hppa_size_dynamic_sections): Correct setting of reltext. + Add space for plt_stub as needed. + (elf32_hppa_finish_dynamic_symbol): Point .plt entries for global + functions at plt_stub. + (elf32_hppa_finish_dynamic_sections): Write plt_stub. + (elf32_hppa_create_dynamic_sections): Leave .plt executable. + + * elf32-hppa.h (elf32_hppa_size_stubs): Add group_size param. + * elf32-hppa.c (elf32_hppa_size_stubs): Likewise. Use it instead + of fixed size, and if negative, disable handling of input sections + before stub section. Set up default stub group size depending + on detected branch relocs. + (hppa_build_one_stub): Use lrsel and rrsel for import stubs to + ensure different offsets from sym_value aren't rounded to + different 2k blocks. Use lrsel and rrsel for other stubs too for + consistency rather than necessity. + (elf32_hppa_check_relocs): Handle R_PARISC_DIR14F. + (final_link_relocate): Likewise. + (elf32_hppa_relocate_section): Likewise. + + * elf-hppa.h (elf_hppa_howto_table): Add R_PARISC_DIR14F reloc. + (_bfd_elf_hppa_gen_reloc_type): Generate them. + (elf_hppa_final_link_relocate): Handle them. + (elf_hppa_relocate_insn): Likewise. + (_bfd_elf_hppa_gen_reloc_type): Add missing e_ldsel and e_rdsel cases. + +2000-09-26 Hans-Peter Nilsson <hp@axis.com> + + * elfcode.h (elf_object_p): Preserve and clear abfd section + information. Restore at error. + +2000-09-26 Paul Sokolovsky <Paul.Sokolovsky@technologist.com> + + * peigen.c (_bfd_pei_swap_aouthdr_in): If some DataDirectory + is empty, make sure that its rva also 0. NT loader dislikes + having otherwise. + +2000-09-26 Steve Ellcey <sje@cup.hp.com> + + * som.c (som_bfd_derive_misc_symbol_info): Make weak symbols + global by default. + +2000-09-21 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c (elf32_hppa_check_relocs): Fix weak sym handling in + currently unused RELATIVE_DYNAMIC_RELOCS code. + (hppa_discard_copies): Likewise. + (elf32_hppa_size_stubs): Size `input_list' array correctly. Correct + comments. Don't check non-code output sections for stub grouping. + +2000-09-20 Alan Modra <alan@linuxcare.com.au> + + * section.c (bfd_get_unique_section_name): Return NULL if + bfd_malloc fails. + +2000-09-19 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * elf32-m68k.c (elf_cpu32_plt0_entry): Change the PLT entry 0 + instruction sequence to actually work. + (elf_m68k_finish_dynamic_sections): Change the patch-in offset + accordingly. + +2000-09-18 Alexandre Oliva <aoliva@redhat.com> + + * elf32-sh.c (sh_elf_relocate_section): Use + _bfd_final_link_relocate to apply the relocation against a section + symbol, when doing relocatable links. + +2000-09-18 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c (elf32_hppa_stub_hash_entry): Rename input_section + to id_sec. + (stub_hash_newfunc): Here too. + (hppa_add_stub): And here. + (elf32_hppa_link_hash_table): Remove stub_section_created, + reloc_section_created, first_init_sec and first_fini_sec. Add + stub_group. + (elf32_hppa_link_hash_table_create): Init to suit. + (hppa_get_stub_entry): Add support for grouping stub sections. + (hppa_add_stub): Likewise. Remove sec_count param and init/fini + section code. Index stub vars by section->id. + (elf32_hppa_size_stubs): Likewise. Remove duplicated function + exit paths. Zap allocation of above removed vars. Refine + link-once test. + + * elf32-hppa.h (elf32_hppa_size_stubs): Add output_bfd param. + * elf32-hppa.c (elf32_hppa_size_stubs): Likewise. + (hppa_get_stub_entry): Pass in pointer to elf32_hppa_link_hash_table + rather than pointer to bfd_link_info. + (hppa_add_stub): Likewise. + (final_link_relocate): Likewise. + +2000-09-17 David Huggins-Daines <dhd@linuxcare.com> + + (elf32_hppa_size_stubs): Don't try to build stubs for discarded + link-once sections. + +2000-09-16 Alexandre Oliva <aoliva@redhat.com> + + * elf32-sh.c (ELF_MAXPAGESIZE): Define to 128, to match + ld/emulparams/shelf.sh. + +2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): New function. + * bfd-in.h (bfd_m68k_elf32_create_embedded_relocs): Add declaration. + * bfd-in2.h: Regenerate. + +2000-09-15 Kenneth Block <Kenneth.Block@compaq.com> + + * elf64-alpha.c (elf64_alpha_relax_with_lituse): ld performs + LITUSE relocations incorrectly if -relax is specified on the ld + command line and the displacement field of the load or store + instruction is non-zero. (Patch by paul.winalski@compaq.com) + +2000-09-15 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c (hppa_add_stub): Dont set first_init_sec and + first_fini_sec here. + (elf32_hppa_size_stubs): Instead correctly find the first .init + and .fini section here. + +2000-09-15 David Huggins-Daines <dhd@linuxcare.com> + + * elf32-hppa.c (clobber_millicode_symbols): New function. + (elf32_hppa_size_dynamic_sections): Call it. + +2000-09-14 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.c (elf32_hppa_link_hash_entry): Make pic_call + packed. Add plabel, plt_abs packed booleans. + (hppa_link_hash_newfunc): Init new fields. + (PLABEL_PLT_ENTRY_SIZE): Define. + (hppa_stub_name): Use size_t len vars. + (hppa_add_stub): Likewise. + (elf32_hppa_build_stubs): Likewise. + (hppa_build_one_stub): Kill some compiler warnings. + (elf32_hppa_check_relocs): Always generate a plt entry for PLABELs + if dynamic linking. Munge the local plt offsets into + local_got_refcounts. Set h->plabel for all global PLABELs. Use + size_t len vars. Add assert for plabel addend. + (elf32_hppa_gc_sweep_hook): Sweep local plt entries too. + (elf32_hppa_hide_symbol): New function. + (elf_backend_hide_symbol): Define. + (elf32_hppa_adjust_dynamic_symbol): Don't throw away plt entries + with h->plabel set. Don't make plt entries to have dynamic syms + when they have been forced local. If plt entry is used by a + plabel, make it PLABEL_PLT_ENTRY_SIZE. + (elf32_hppa_size_dynamic_sections): Set plt_abs for init fns. + Set up .plt offsets for local syms. + (elf32_hppa_relocate_section): Initialise plt entries for local + syms. Leave weak undefined plabels zero. Make global plabel + relocs against function symbol, and leave the addend zero. + Use *ABS* DIR32 relocs instead of SEGREL32 for dynamic got relocs. + (elf32_hppa_finish_dynamic_symbol): Set up IPLT relocs for + non-dynamic syms. Init extra plt for plabels. Use *ABS* DIR32 + relocs instead of SEGREL32 for dynamic got relocs. + (elf32_hppa_finish_dynamic_sections): Reserve one more .got entry. + (elf_backend_got_header_size): Adjust. + (elf32_hppa_set_gp): Calculate an "ideal" LTP. + + * elf32-hppa.c (LONG_BRANCH_VIA_PLT): Define. + (hppa_type_of_stub): Use it instead of #if 0 + (hppa_discard_copies): Use it here too. + (elf32_hppa_size_dynamic_sections): And here. + + * elf32-hppa.c (elf32_hppa_link_hash_table): Remove `offset' field. + (elf32_hppa_link_hash_table_create): And here. + (hppa_build_one_stub): And here. Instead keep track of stub + offset using _raw_size. + (elf32_hppa_size_stubs): Likewise. + (elf32_hppa_build_stubs): Likewise. + (hppa_size_one_stub): Likewise. Resize reloc section too. + + * elf32-hppa.c (hppa_add_stub): Correct first_init_sec and + first_fini_sec handling. Don't search for reloc section or set + hplink->reloc_section_created here. + (elf32_hppa_size_stubs): Instead search for reloc sections, and + set reloc_section_created here. + (hppa_handle_PIC_calls): Set ELF_LINK_HASH_NEEDS_PLT. + (elf32_hppa_size_dynamic_sections): Make a .plt entry for DT_INIT + and DT_FINI. + (elf32_hppa_finish_dynamic_sections): Set DT_INIT and DT_FINI. + + * elf32-hppa.c (hppa_build_one_stub): Replace `elf_hash_table (info)' + with `hplink->root.'. + (elf32_hppa_check_relocs): Likewise. + (elf32_hppa_gc_sweep_hook): Likewise. + (elf32_hppa_adjust_dynamic_symbol): Likewise. + (hppa_handle_PIC_calls): Likewise. + (elf32_hppa_size_dynamic_sections): Likewise. + (elf32_hppa_set_gp): Likewise. + (elf32_hppa_relocate_section): Likewise. + (elf32_hppa_finish_dynamic_symbol): Likewise. + (elf32_hppa_finish_dynamic_sections): Likewise. + + From David Huggins-Daines <dhd@linuxcare.com> + * elf32-hppa.c (hppa_type_of_stub): Generate import stubs for + defined weak symbols in shared links. + (final_link_relocate): Calls to defined weak symbols in shared + objects must go via import stubs, as the target might not be known + at link time. + +2000-09-14 Alexandre Oliva <aoliva@redhat.com> + + * elf32-sh.c (sh_elf_howto_table): Moved R_SH_GOT32, R_SH_PLT32, + R_SH_COPY, R_SH_GLOB_DAT, R_SH_JMP_SLOT, R_SH_RELATIVE, + R_SH_GOTOFF, R_SH_GOTPC) to the range from 160 to 167. Replaced + the original entries with EMPTY_HOWTOs, and added new ones to fill + in the gap. + (sh_elf_info_to_howto): Make sure the new gap isn't used. + (sh_elf_relocate_section): Likewise. + +2000-09-13 Anders Norlander <anorland@acc.umu.se> + + * cpu-mips.c (arch_info_struct): Add mips:4K + * bfd-in2.h (bfd_mach_mips4K): New define. + * archures.c: Add bfd_mach_mips4K to comment. + * elf32-mips.c (_bfd_mips_elf_final_write_processing): Return + E_MIPS_ARCH_2 for bfd_mach_mips4K. + +2000-09-13 Marco Franzen <marcof@thyron.com> + + * som.c (som_write_symbol_strings): Do not used fixed buffers, + use size_t as a counter. + (som_write_space_strings): Similarly. + +2000-09-12 Jason Eckhardt <jle@cygnus.com> + + * elf32-i860.c (elf32_i860_relocate_pc26): New function + and prototype. + (elf32_i860_relocate_section): Invoke new function from here. + +2000-09-11 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * elf.c (_bfd_elf_make_section_from_shdr): Make debug_sec_names + static. + +2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Emit 8 NULs for + target section name instead of dumping core when the target symbol is + undefined. + +2000-09-09 Kazu Hirata <kazu@hxi.com> + + * riscix.c: Remove DEFUN. + +2000-09-08 Nick Clifton <nickc@redhat.com> + + * elf32-arm.h (elf32_arm_merge_private_bfd_data): Do not + initialise flags in output bfd if the input bfd is the default + architecture with the default flags. + +2000-09-08 Kazu Hirata <kazu@hxi.com> + + * archive.c: Fix formatting. + * coff-arm.c: Likewise. + * doc/chew.c: Likewise. + +2000-09-08 Alan Modra <alan@linuxcare.com.au> + + * section.c (bfd_get_unique_section_name): Put a dot before the + numeric suffix. + +2000-09-07 Kazu Hirata <kazu@hxi.com> + + * doc/chew.c: Remove all uses of DEFUN and DEFUN_VOID. + * elf.c: Fix formatting. + +2000-09-07 Alexandre Oliva <aoliva@redhat.com> + + * config.bfd (sh-*-linux*): Added. + * configure.in (bfd_elf32_shlin_vec, bfd_elf32_shblin_vec): New. + * targets.c: Declare them. + * elf32-sh-lin.c: New file. + * Makefile.am: Compile it. + * elf32-sh.c: Don't override defines from elf32-sh-lin.c. + * configure, Makefile.in: Rebuilt. + +2000-09-06 Geoffrey Keating <geoffk@cygnus.com> + + * xcofflink.c (xcoff_link_input_bfd): Include the .tocbss + pseduo-section when determining where the TOC ends. + + * coff-rs6000.c (_bfd_xcoff_swap_aux_out): Use bfd_h_put_16 to + output x_tvndx as it is only two bytes wide. + + * coff-rs6000.c (xcoff_howto_table): A modifiable branch-absolute + reloc is 26 or 32 bits wide. + + * coff-rs6000.c (_bfd_xcoff_rtype2howto): The bitsize is irrelevant + for relocs that don't change anything. Also look at the full + 6 bits of bitsize. + +2000-09-06 Philip Blundell <philb@gnu.org> + + * config.bfd (arm*-*-uclinux*): New target. + +2000-09-06 Alexandre Oliva <aoliva@redhat.com> + + * configure: Rebuilt with new libtool.m4. + +2000-09-06 Alan Modra <alan@linuxcare.com.au> + + * section.c (bfd_get_unique_section_name): Avoid c++ reserved + word for variable name. + * bfd-in2.h: Regenerate. + +2000-09-05 Nick Clifton <nickc@redhat.com> + + * config.in: Regenerate. + * libbfd.h: Regenerate. + * po/bfd.pot: Regenerate. + * doc/bfdint.texi: Remove CVS date string - it foils compares with + local versions. + +2000-09-05 Steven Johnson <sbjohnson@ozemail.com.au> + + * cpu-powerpc.c (arch_info_struct): Added MPC860 Family entry. + +2000-09-05 Alan Modra <alan@linuxcare.com.au> + + Shared library and PIC support. + * elf32-hppa.c (PLT_ENTRY_SIZE): New. + (GOT_ENTRY_SIZE): New. + (ELF_DYNAMIC_INTERPRETER): New. + (STUB_SUFFIX): Define. + (LONG_BRANCH_PIC_IN_SHLIB): Define. + (RELATIVE_DYNAMIC_RELOCS): Define. + (enum elf32_hppa_stub_type): New. + (struct elf32_hppa_stub_hash_entry): Rename offset to + stub_offset. Add a number of new fields. + (struct elf32_hppa_link_hash_entry): New. + (struct elf32_hppa_link_hash_table): Add numerous fields. Remove + global_value. + (elf32_hppa_hash_table): Rename to hppa_link_hash_table. + (elf32_hppa_stub_hash_lookup): Rename to hppa_stub_hash_lookup. + (elf32_hppa_stub_hash_newfunc): Rename to stub_hash_newfunc. Init + new fields. + (hppa_link_hash_newfunc): New function. + (elf32_hppa_link_hash_table_create): Use above function. Init new + fields. + (elf32_hppa_stub_name): Rename to hppa_stub_name. Pass in reloc + instead of addend, and remove sym_name from args. Don't use + symbol name for local syms, instead use sym index. + (elf32_hppa_size_of_stub): Rename to hppa_type_of_stub, and return + stub type rather than size. Pass in hash and handle import stub + case. Also pass in reloc instead of offset so we can calculate + PCREL22F and PCREL12F branches properly. + (elf32_hppa_build_one_stub): Rename to hppa_build_one_stub. Build + import and export stubs too. + (elf32_hppa_size_one_stub): Rename to hppa_size_one_stub. Handle + import and export stub sizing. + (elf32_hppa_check_relocs): New function. + (elf32_hppa_adjust_dynamic_symbol): New function. + (hppa_discard_copies): New function. + (elf32_hppa_size_dynamic_sections): New function. + (elf_backend_size_dynamic_sections): Define. + (elf32_hppa_finish_dynamic_symbol): New function. + (elf_backend_finish_dynamic_symbol): Define. + (elf32_hppa_size_stubs): Stash params in link hash table, and move + some local vars into the link hash table too. For shared links, + trundle over function syms, generating export stubs. Handle + PCREL22F branches. Break out stub creation code from here.. + (hppa_add_stub): .. to here. New function. + (elf32_hppa_final_link): Rename to elf32_hppa_set_gp, and don't + call the bfd linker. Use elf_gp to record global pointer. + Calculate a value from sections if $global$ is missing. + (bfd_elf32_bfd_final_link): Define as _bfd_elf32_gc_common_final_link. + (elf32_hppa_gc_mark_hook): New function. + (elf_backend_gc_mark_hook): Define. + (elf32_hppa_gc_sweep_hook): New function. + (elf_backend_gc_sweep_hook): Define. + (elf32_hppa_bfd_final_link_relocate): Rename to final_link_relocate. + Add rel to args, and remove howto, input_bfd, offset, addend, + sym_name as we can recalculate these locally. Handle calls to + dynamic objects, extra PIC relocs, PCREL22F branches. Change + handling of undefined weak syms. Check that stubs are in range. + Only look for import stubs on PCREL17F and PCREL22F relocs. Add + message on hitting a DPREL21L reloc that needs fixing. Subtract + off PC for PCREL14F. Break out code that does a stub lookup from + here.. + (hppa_get_stub_entry): ..to here. New function. + (elf32_hppa_relocate_insn): Merge into final_link_relocate. + (elf32_hppa_relocate_section): Handle got and plt relocs, dynamic + relocs, etc. etc. + (elf32_hppa_finish_dynamic_sections): New function. + (elf_backend_finish_dynamic_sections): Define. + (elf_backend_final_write_processing) Define. + (hppa_handle_PIC_calls): New function. + (elf32_hppa_build_stubs): Call it. Pass link_info to + hppa_build_one_stub. + (elf32_hppa_create_dynamic_sections): New function + to create .plt and .got then set .plt flags correctly. + (elf_backend_create_dynamic_sections): Define. + (elf32_hppa_object_p): New function. + (elf_backend_object_p): Define. + (elf32_hppa_elf_get_symbol_type): New function. + (elf_backend_get_symbol_type): Define. + (elf_backend_can_gc_sections): Define. + (elf_backend_want_got_plt): Define. + (elf_backend_plt_alignment): Set to 2. + (elf_backend_plt_readonly): Define. + (elf_backend_want_plt_sym): Define. + (elf_backend_got_header_size): Reserve one entry. + + * elf32-hppa.h (elf32_hppa_build_stubs): Don't pass stub bfd. + (elf32_hppa_size_stubs): Pass in multi_subspace. + (elf32_hppa_set_gp): Declare. + + * section.c (SEC_HAS_GOT_REF): Define new flag for asection. + (bfd_get_unique_section_name): New function. + * bfd-in2.h: Regenerate. + + * elf64-hppa.c (elf64_hppa_check_relocs): Handle R_PARISC_PCREL12F. + (elf64_hppa_size_dynamic_sections): Remove the FIXME at bfd_zalloc + comment. + + From David Huggins-Daines <dhd@linuxcare.com> + * elf64-hppa.c (elf64_hppa_check_relocs): Fix a warning. + (elf64_hppa_mark_exported_functions): Set dyn_h->st_shndx. + (elf64_hppa_link_output_symbol_hook): Test dyn_h->st_shndx has + been updated in finish_dynamic_symbol before modifying function + symbol. + + * elf-hppa.h (elf_hppa_howto_table): Restructure into groups of + eight entries. Replace NULL with bfd_elf_generic_reloc. Add + R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT and R_PARISC_PCREL12F. + (_bfd_elf_hppa_gen_reloc_type): Handle R_PARISC_GNU_VT*. Add some + comments. Handle format == 12 for R_HPPA_PCREL_CALL. + (elf_hppa_final_link_relocate): Handle R_PARISC_PCREL12F. + (elf_hppa_relocate_insn): Likewise. Reformat some comments. + (elf_hppa_final_write_processing): Expose it for ARCH_SIZE == 32. + + From David Huggins-Daines <dhd@linuxcare.com> + * elf-hppa.h (elf_hppa_is_local_label_name): Accept the SysV/ELF + style of local labels as well. + +2000-09-03 Philip Blundell <philb@gnu.org> + + * elf32-arm.h (elf32_arm_relocate_section): Don't try to relocate + references to undefined symbols in debugging sections. + +2000-09-02 H.J. Lu <hjl@gnu.org> + + * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT, + BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, + BFD_RELOC_SH_GOTPC): Move them from the MIPS section to the SH + section. + +2000-09-02 Jason Eckhardt <jle@cygnus.com> + + * elf32-i860.c (bfd_elf32_bfd_is_local_label_name): Define macro. + (elf32_i860_is_local_label_name): New function and prototype. + +2000-09-02 Nick Clifton <nickc@redhat.com> + + * configure.in: Increase version number to 2.10.91. + * configure: Regenerate. + * aclocal.m4: Regenerate. + * config.in: Regenerate. + * po/bfd.pot: Regenerate. + +2000-09-02 Daniel Berlin <dberlin@redhat.com> + + * elf.c (_bfd_elf_make_section_from_shdr): Add + .gnu.linkobce.wi. to the list of debug section names. + +2000-09-02 Nick Clifton <nickc@redhat.com> + + * dwarf2.c (find_debug_info): New function: Locate a section + containing dwarf2 debug information. + (bfd_dwarf2_find_nearest_line): Find all sections containing + debug information and include them in the stash. + +2000-09-01 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com> + + * elf32-sh.c (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT, + R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New. + (sh_reloc_map): Add new relocs. + (sh_elf_check_relocs, sh_elf_link_hash_newfunc, + sh_elf_link_hash_table_create, sh_elf_adjust_dynamic_symbol, + sh_elf_size_dynamic_sections, sh_elf_finish_dynamic_symbol, + sh_elf_finishe_dynamic_sections, sh_elf_discard_copies): New + functions. + (ELF_DYNAMIC_INTERPRETER, PLT_ENTRY_SIZE): Define. + (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le, + elf_sh_plt_entry_be, elf_sh_plt_entry_le, + elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le): + New array constants. + (elf_sh_plt0_entry, elf_sh_plt_entry, elf_sh_pic_plt_entry): + New variables. + (elf_sh_sizeof_plt, elf_sh_plt_plt0_offset, + elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset, + elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset, + elf_sh_plt_reloc_offset): Define. + (elf_sh_pcrel_relocs_copied, elf_sh_link_hash_entry, + elf_sh_link_hash_table): New structs. + (sh_elf_link_hash_traverse, sh_elf_hash_table): New macros. + (sh_elf_relocate_section, sh_elf_check_relocs): Handle new + relocation types. + (elf_backend_create_dynamic_sections, + bfd_elf32_bfd_link_hash_table_create, + elf_backend_adjust_dynamic_symbol, + elf_backend_size_dynamic_sections, + elf_backend_finish_dynamic_symbol, + elf_backend_finish_dynamic_sections, elf_backend_want_got_plt, + elf_backend_plt_readonly, elf_backend_want_plt_sym, + elf_backend_got_header_size, elf_backend_plt_header_size): + Define. + * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT, + BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC): + New relocs. + * bfd-in2.h, libbfd.h: Rebuilt. + +2000-09-01 Alan Modra <alan@linuxcare.com.au> + + * elf32-i386.c (elf_i386_finish_dynamic_symbol): Revert 2000-08-27 + change. + +2000-08-31 J"orn Rennecke <amylaar@cygnus.co.uk> + + * elf32-sh.c (sh_elf_merge_private_data): If ibfd's elf header flags + not initialized, set them to indicate the SH1 instruction set. + +2000-08-31 Alexandre Oliva <aoliva@redhat.com> + + * acinclude.m4: Include libtool and gettext macros from the + top level. + * aclocal.m4, configure: Rebuilt. + +2000-08-29 Michael Snyder <msnyder@seadog.cygnus.com> + + * elf.c: Eliminate references to __sparcv9 macro; replace with + autoconf variables HAVE_PSINFO32_T etc. + * configure.in: Auto-configure HAVE_PSINFO_32_T, HAVE_PRPSINFO32_T, + HAVE_PSTATUS32_T, HAVE_PRSTATUS32_T, HAVE_PRSTATUS32_T_PR_WHO. + * config.in: Ditto. + * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE) define _SYSCALL32 so it can + detect the above typedefs. (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Ditto. + * aclocal.m4: Ditto. + * configure: Regenerate. + +2000-08-27 Alan Modra <alan@linuxcare.com.au> + + * elf32-i386.c (elf_i386_check_relocs): Keep info on relocs copied + for any shared link, not just shared -Bsymbolic. + (elf_i386_size_dynamic_sections): Call elf_i386_discard_copies on + any shared link, and pass link info to it. + (elf_i386_size_dynamic_sections): Update comment. + (elf_i386_discard_copies): Modify to discard relocs for symbols + that have been forced local. + (elf_i386_finish_dynamic_symbol): Don't copy relocs for symbols + that have been forced local. + +2000-08-24 Denis Chertykov <denisc@overta.ru> & Nick Clifton <nickc@redhat.com> + + * elflink.h (elf_link_add_object_symbols): Allow common + symbols to have an alignment of 1 if explicitly requested, and + not overridden by other definitions. + +2000-08-22 Doug Kwan <dkwan@transmeta.com> + + * coff-w65.c (CREATE_LITTLE_COFF_TARGET): Fix typo. + * coffcode.h (coff_set_flags): Add detection of w65 architecture. + +2000-08-22 H.J. Lu <hjl@gnu.org> + + * elf-bfd.h (elf_link_hash_table): Add runpath. + + * bfd-in.h (bfd_elf_get_runpath_list): New prototype. + * bfd-in2.h: Rebuilt. + + * elf.c (_bfd_elf_link_hash_table_init): Initialize the + "runpath" field to NULL. + (bfd_elf_get_runpath_list): New function. + + * elflink.h (elf_link_add_object_symbols): Record DT_RPATH and + DT_RUNPATH entries. + +2000-08-22 Alexandre Oliva <aoliva@redhat.com> + + * elf32-sh.c (sh_elf_relocate_section) [R_SH_IND12W, + R_SH_DIR8WPN, R_SH_DIR8WPZ, R_SH_DIR8WPL]: Handle them + explicitly. Improve validation of r_type. + +2000-08-21 H.J. Lu <hjl@gnu.org> + + * elf32-i386.c (elf_i386_size_dynamic_sections): Zero out the + dynamic allocated content space. Add a comment to remind us that + one day this ought to be fixed. + * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. + * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. + * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. + +2000-08-21 Jason Eckhardt <jle@cygnus.com> + + * elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate + field with the newly relocated value instead of adding it to the + existing immediate field. + (elf32_i860_relocate_splitn): Likewise. + (elf32_i860_relocate_highadj): Likewise. + +2000-08-16 Jason Eckhardt <jle@cygnus.com> + + * elf32-i860.c (elf32_i860_relocate_pc16): Implemented function (it + was previously just a stub). + +2000-08-16 Alexandre Oliva <aoliva@redhat.com> + + * elflink.c (_bfd_elf_create_got_section): Don't abort(). + Formatting fixes. + (_bfd_elf_create_dynamic_sections): Likewise. + +2000-08-16 Andrew Macleod <amacleod@cygnus.com> + + * elf64-sparc.c (sparc64_elf_relocate_section): Set relocation address + for undefined symbols to be the beginning of the section. + + * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate + four extra entries at the beginning of the .rela.plt section. + (sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt + section to account for the four reserved entries in the .plt section. + +2000-08-15 Geoffrey Keating <geoffk@cygnus.com> + + * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0 + to the list of NOPs we recognize after a branch-and-link. + Use the ori NOP when one is needed. + + * coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation + for large archives. + +2000-08-14 Jim Wilson <wilson@cygnus.com> + + * elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle + EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP. + (elf64_ia64_print_private_bfd_data): Likewise. Also handle + EF_IA_64_ABSOLUTE. + +2000-08-11 Alexandre Oliva <aoliva@redhat.com> + + * elf32-sh.c (sh_elf_set_mach_from_flags): Make it static. + +2000-08-10 Jason Eckhardt <jle@cygnus.com> + + * elf32-i860.c (elf32_i860_relocate_section): New function. + (i860_final_link_relocate): New function. + (elf32_i860_relocate_splitn): New function. + (elf32_i860_relocate_pc16): New function. + (elf32_i860_relocate_highadj): New function. + (elf32_i860_howto): Minor adjustments to some relocations. + (elf_info_to_howto_rel): Define. + (elf_backend_relocate_section): Define. + +2000-08-10 Nick Clifton <nickc@cygnus.com> + + * elf32-arm.h: Fix formatting. + +2000-08-10 Bernd Schmidt <bernds@cygnus.co.uk> + + * elf32-sh.c (sh_elf_reloc_loop): Make LAST_SYMBOL_SECTION static. + +2000-08-08 Jason Eckhardt <jle@cygnus.com> + + * elf32-i860.c (elf32_i860_howto_table): Updated some fields. + +2000-08-07 Kazu Hirata <kazu@hxi.com> + + * ieee.c (ieee_write_debug_part): Rewrite a comment. + * elf64-ia64.c: Fix a typo. + +2000-08-05 Jason Eckhardt <jle@cygnus.com> + + * elf32-i860.c (elf32_i860_howto_table): New structure. + (lookup_howto): New function. + (elf32_i860_reloc_type_lookup): New function. + (elf32_i860_info_to_howto_rela): New function. + (elf_code_to_howto_index): New structure. + (elf_info_to_howto): Re-define as elf32_i860_info_to_howto_rela. + (bfd_elf32_bfd_reloc_type_lookup): Re-define as + elf32_i860_reloc_type_lookup. + +2000-08-04 Rodney Brown <RodneyBrown@pmsc.com> + + * som.c (struct fixup_format): Constify `format'. + (som_hppa_howto_table): Use SOM_HOWTO macro. + (try_prev_fixup, hppa_som_reloc): Decorate unused parameter. + (som_bfd_reloc_type_lookup): Likewise. + (compare_subspaces): Remove unused `count1', `count2'. + (som_begin_writing): Remove unused `total_reloc_size'. + (som_bfd_derive_misc_symbol_info): Decorate unused parameter. + (som_print_symbol, som_bfd_is_local_label_name): Likewise. + (som_set_reloc_info): Constify `cp'. Remove unused `addend'. + (som_find_nearest_line): Decorate unused parameter(s). + (som_sizeof_headers, som_get_symbol_info, som_write_armap): Likewise. + (som_bfd_link_split_section): Likewise. + +2000-08-03 Nick Clifton <nickc@cygnus.com> + + * section.c: Restore backed out code. + * elf.c: Restore backed out code. + (copy_private_bfd_data): Fix bug preventing stipped dynamic + binaries from working. + * bfd-in2.h: Regenerate. + +2000-08-03 H.J. Lu <hjl@gnu.org> + + * section.c: Back out the change made by Nick Clifton + <nickc@cygnus.com> on 2000-07-31. It breaks stripping dynamic + binaries. + * bfd-in2.h: Likewise. + * elf.c: Likewise. + +2000-08-03 Alexandre Oliva <aoliva@redhat.com> + + * elf32-sh.c (sh_elf_reloc_loop): Warning removal. + +2000-07-31 Jason Eckhardt <jle@cygnus.com> + + * reloc.c (BFD_RELOC_860_*): New bfd relocs for i860. + * bfd-in2.h, libbfd.h: Regenerate. + +2000-07-31 Nick Clifton <nickc@cygnus.com> + + * section.c (struct sec): Add new boolean field 'segment_mark'. + (STD_SECTION): Initialise new field to zero. + + * bfd-in2.h: Regenerate. + + * elf.c (copy_private_bfd_data): Reorganise section to segment + mapping to cope with moved sections requiring new segments, + and overlapping segments. + (SEGMENT_END): New macro: Return the end address of a segment. + (IS_CONTAINED_BY_VMA): New macro: Determine if a segment + contains a section by comparing their VMA addresses. + (IS_CONTAINED_BY_LMA): New macro: Determine if a segment + contains a section by comparing their LMA addresses. + (INCLUDE_SECTION_IN_SEGMENT): New macro: Determine if a + section should be included in a segment. + (SEGMENT_AFTER_SEGMENT): New macro: Determine if one segment + follows another in memory. + (SEGMENT_OVERLAPS_SEGMENT): New macro: Determine if two + segments overlap. + +2000-07-22 Jason Eckhardt <jle@cygnus.com> + + * cpu-i860.c: Added comments. + + * elf32-i860.c (TARGET_LITTLE_SYM): Defined to + bfd_elf32_i860_little_vec. + (TARGET_LITTLE_NAME): Defined to "elf32-i860-little". + (ELF_MAXPAGESIZE): Changed to 4096. + + * targets.c (bfd_elf32_i860_little_vec): Declaration of + new target. + (bfd_target_vector): Added bfd_elf32_i860_little_vec. + + * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added + config for little endian elf32 i860. + (targ_defvec): Define for the new config above + as "bfd_elf32_i860_little_vec". + (targ_selvecs): Define for the new config above + as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec" + + * configure.in (bfd_elf32_i860_little_vec): Added recognition + of new target vec. + + * configure: Regenerated. + +2000-07-27 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_merge_symbol): Take one more argument, + dt_needed, to indicate if the symbol comes from a DT_NEEDED + entry. Don't overide the existing weak definition if dt_needed + is true. + (elf_link_add_object_symbols): Pass dt_needed to + elf_merge_symbol (). + +2000-07-27 Nick Clifton <nickc@cygnus.com> + + * elflink.h (elf_link_size_reloc_section): Zeroes the section's + allocated contents. + +2000-07-25 Geoffrey Keating <geoffk@cygnus.com> + + * configure.host (*-*-aix*): AIX has 'long long' always. + + * coff-rs6000.c (xcoff_write_one_armap_big): New procedure. + (xcoff_write_armap_big): Write both 32-bit and 64-bit armaps. + (xcoff_write_archive_contents_big): Don't update the offset + of the symbol table, xcoff_write_armap will do it. + +2000-07-23 Ulf Carlsson <ulfc@engr.sgi.com> + + * elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead + of dynobj for SGI_COMPAT checks. + +2000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): New function. + * bfd-in.h (bfd_m68k_coff_create_embedded_relocs): Add declaration. + * bfd-in2.h: Regenerate. + +2000-07-21 Nick Clifton <nickc@cygnus.com> + + * elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of + range symbol indices in relocs and issue an error message. + +2000-07-20 H.J. Lu <hjl@gnu.org> + + * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check + info->new_dtags when setting DT_FLAGS_1. It will only be set + by the new linker options. It shouldn't break anything. + +2000-07-20 H.J. Lu <hjl@gnu.org> + + * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1 + only if info->new_dtags is true. + +2000-07-20 H.J. Lu <hjl@gnu.org> + + * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set + DT_RUNPATH and DT_FLAGS only if info->new_dtags is true. + +2000-07-20 Hans-Peter Nilsson <hp@axis.com> + + * Makefile.am (ALL_MACHINES): Add cpu-cris.lo. + (ALL_MACHINES_CFILES): Add cpu-cris.c. + (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo. + (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c. + (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules. + * Makefile.in: Rebuild. + * aclocal.m4: Rebuild. + * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris. + * archures.c (enum bfd_architecture): Add bfd_arch_cris. + (bfd_cris_arch): Declare. + (bfd_archures_list): Add bfd_cris_arch. + * bfd-in2.h: Rebuild. + * config.bfd: (cris-*-*): New target. + * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors. + * configure: Rebuild. + * elf.c (prep_headers): Add bfd_arch_cris. + * libbfd.h: Rebuild. + * libaout.h (enum machine_type): Add M_CRIS. + * reloc.c: Add CRIS relocations. + * targets.c (bfd_elf32_cris_vec, cris_aout_vec): Declare. + (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec. + * cpu-cris.c, aout-cris.c, elf32-cris.c: New files. + * po/POTFILES.in, po/bfd.pot: Regenerate. + +2000-07-19 H.J. Lu <hjl@gnu.org> + + * elf32-arm.h (elf32_arm_size_dynamic_sections): Also set + DF_TEXTREL if DT_TEXTREL is set. + * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise. + * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise. + * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. + * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise. + * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. + * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. + * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. + * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. + * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise. + * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. + + * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also + set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if + DT_RPATH is set. + Set the DT_FLAGS and DT_FLAGS_1 entries if necessary. + +2000-07-19 H.J. Lu <hjl@gnu.org> + + * bfd-in.h (bfd_elf_set_dt_needed_soname): New. + * bfd-in2.h: Rebuild. + + * elf-bfd.h (elf_obj_tdata): Add dt_soname. + (elf_dt_soname): New. + + * elf.c (bfd_elf_set_dt_needed_soname): New. + + * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED + entry if the shared object loaded by DT_NEEDED is used to + resolve the reference in a regular object. + +2000-07-19 H.J. Lu <hjl@gnu.org> + + * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG, + DT_DEPAUDIT and DT_AUDIT as strings. + +2000-07-19 Nick Clifton <nickc@cygnus.com> + + * format.c: Fix formatting. + +2000-07-19 H.J. Lu <hjl@gnu.org> + + * elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM. + +2000-07-19 H.J. Lu <hjl@gnu.org> + + * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW, + DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ, + DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ, + DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1, + DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT, + DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT, + DT_FLAGS_1, DT_USED and DT_CHECKSUM. + +2000-07-18 Andrew Cagney <cagney@b1.cygnus.com> + + * elf.c (bfd_elf_get_sign_extend_vma, bfd_elf_get_arch_size): Move + renamed functions from here... + (assign_section_numbers): Use renamed functions. + (prep_headers): Use renamed functions. + + * bfd.c (bfd_get_sign_extend_vma, bfd_get_arch_size): ...To here. + * bfd-in.h (bfd_get_sign_extend_vma, bfd_get_arch_size): Update. + * bfd-in2.h: Regenerate. + +2000-07-18 Ulf Carlsson <ulfc@engr.sgi.com> + + * elf32-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Add + parenthesis in if statement. + +2000-07-17 Koundinya K <kk@ddeorg.soft.net> + + Enable the support for Traditional MIPS. + * elf32-mips.c (IRIX_COMPAT): Recognize bfd_elf32_tradbigmips_vecand + return ict_none appropriately for traditional mips targets. + (STUB_LW): Change 0x8f998000 to 0x8f998010 for traditional mips. + (STUB_MOVE): Conditionalize for traditonal mips. + (STUB_LI16): Likewise. + (_bfd_mips_elf_modify_segment_map): Conditionalize to avoid making + room for RTPROC header. + (_bfd_mips_elf_modify_segment_map): For a normal mips executable set + the permission for the PT_DYNAMIC as read, write and execute. + (mips_elf_calculate_relocation): Check for the symbol _DYNAMIC_LINKING + for traditonal mips. + (_bfd_mips_elf_create_dynamic_sections): Add the symbol + _DYNAMIC_LINKING for traditonal mips. + (_bfd_mips_elf_create_dynamic_sections): Add the symbol __RLD_MAP + in case of traditonal mips. + (_bfd_mips_elf_adjust_dynamic_symbol): Create a stub only if a PLT + entry is required. For a function if PLT is not required then set the + corresponding hash table entry to 0. + (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG entry for + traditonal mips. + (_bfd_mips_elf_finish_dynamic_symbol): for a undefined symbol in a + shared object set the value to 0. + (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol + _DYNAMIC_LINKING for traditonal mips. + (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol __RLD_MAP + for traditonal mips. + +2000-07-15 H.J. Lu <hjl@gnu.org> + + * aoutx.h (translate_to_native_sym_flags): Handle BSF_LOCAL. + +2000-07-12 Charles Wilson <cwilson@ece.gatech.edu> + + * libbfd.c (bfd_seek): fix 'seek beyond EOF' error when writing + out a structure that is BFD_IN_MEMORY. + +2000-07-11 Alan Modra <alan@linuxcare.com.au> + + * elf64-hppa.c (get_dyn_name): Pass in section pointer instead of + bfd pointer. Print section id instead of bfd pointer for local + syms. Prefix addend with `+' for global syms as well as local. + Correct calculation of name component lengths. + (elf64_hppa_check_relocs): Update call to get_dyn_name. + + From David Huggins-Daines <dhd@linuxcare.com> + * elf-hppa.h (elf_hppa_relocate_section): Update calls here too. + * elf64-hppa.c (elf64_hppa_check_relocs): Fix some warnings. + (elf64_hppa_modify_segment_map): Likewise. + +2000-07-11 Andrew Cagney <cagney@b1.cygnus.com> + + * elf.c (bfd_elf_get_sign_extend_vma): Return tendency of VMA + addresses to be "naturally" sign extended. Return -1 if unknown. + * bfd-in.h (bfd_elf_get_sign_extend_vma): Add declaration. + * bfd-in2.h: Regenerate. + +2000-07-11 Andrew Cagney <cagney@b1.cygnus.com> + + * ecoffswap.h (ecoff_get_off, ecoff_put_off): Add ECOFF_SIGNED_32 + and ECOF_SIGNED_64 to list ways to extract an offset. + (ecoff_swap_fdr_in, ecoff_swap_fdr_out, ecoff_swap_pdr_in, + ecoff_swap_pdr_out, ecoff_swap_ext_in, ecoff_swap_ext_out): + Update. + * elf64-mips.c (ECOFF_SIGNED_64): Define instead of ECOFF_64. + * elf32-mips.c (ECOFF_SIGNED_32): Define instead of ECOFF_32. + +2000-07-11 Andrew Cagney <cagney@b1.cygnus.com> + + * elfcode.h (elf_object_p): Use bfd_set_start_address and not + bfd_get_start_address. + (elf_swap_ehdr_in): Sign extend e_entry when applicable. + (elf_swap_ehdr_out): Ditto. + +2000-07-10 Alexander Aganichev <AAganichev@hypercom.com> + + * archures.c (bfd_default_scan): Add set of bfd_mach_ cases for + compatibility with older binutils. + +2000-07-10 Alan Modra <alan@linuxcare.com.au> + + * section.c (bfd_make_section_anyway): Start section_id at 0x10. + (STD_SECTION): Avoid negative ids, instead use 0 to 3. + + From Ryan Bradetich <rbradetich@uswest.net> + * dwarf1.c (parse_die): Cure signed/unsigned char warnings. + (parse_line_table): Ditto. + (_bfd_dwarf1_find_nearest_line): Ditto. + * syms.c (cmpindexentry): Remove extra `*' from params. + +2000-07-09 Koundinya K <kk@ddeorg.soft.net> + + * elf32-mips.c (sort_dynamic_relocs): New Function. + (_bfd_mips_elf_finish_dynamic_sections): Call sort_dynamic_relocs + via qsort to sort the dynamic relocations in increasing r_symndx + value. + +2000-07-09 Alan Modra <alan@linuxcare.com.au> + + * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add + ATTRIBUTE_UNUSED to unused args. + (get_opd): Likewise. + (get_plt): Likewise. + (get_dlt): Likewise. + (get_stub): Likewise. + (elf64_hppa_adjust_dynamic_symbol): Likewise. + (elf64_hppa_link_output_symbol_hook): Likewise. + (elf64_hppa_check_relocs): Delete unused var. + (elf64_hppa_size_dynamic_sections): Likewise. + (elf64_hppa_finalize_opd): Likewise. + (elf64_hppa_finalize_dynreloc): Likewise. + (elf64_hppa_modify_segment_map): Likewise. + (elf64_hppa_finish_dynamic_sections): Likewise. + + * elf-hppa.h (elf_hppa_final_write_processing): Add + ATTRIBUTE_UNUSED to unused args. + (elf_hppa_final_link_relocate): Likewise. + (elf_hppa_record_segment_addrs): Add paretheses. + (elf_hppa_relocate_section): Constify dyn_name. + + From David Huggins-Daines <dhd@linuxcare.com> + * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and + rearrange case statement so that it gets preferred to 32-bit ones. + + * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use + asection->id instead of address of asection structure. + (elf32_hppa_size_stubs): Likewise. + + * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section + for .init* and .fini*. + + * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers + and addends used in stub names to 32 bits. + (elf32_hppa_size_stubs): Likewise. + + * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend + twice for R_PARISC_GPREL64. Use bfd_put_32 for R_PARISC_PCREL32, + not bfd_put_64. Fix minor comment typo and formatting. + + Changes to create multiple linker stubs, positioned immediately + before the section where they are required. + * elf32-hppa.c: Don't include hppa_stubs.h. + (elf32_hppa_stub_hash_entry): Add a pointer to the stub section. + (elf32_hppa_stub_hash_table): Delete. + (elf32_hppa_link_hash_entry): Delete. + (elf32_hppa_link_hash_table): Use plain bfd_hash_table for + stub_hash_table, and store the struct here rather than a pointer. + Delete output_symbol_count. Add offset array. Change + global_value to a bfd_vma. + (elf32_hppa_stub_hash_lookup): Use table instead of table->root. + (elf32_hppa_stub_hash_traverse): Delete. + (elf32_hppa_name_of_stub): Delete. + (elf32_hppa_link_hash_lookup): Delete. + (elf32_hppa_link_hash_traverse): Delete. + (elf32_hppa_stub_hash_table_init): Delete. + (elf32_hppa_size_of_stub): Pass input section and offset rather + than location and calculate location here. Don't pass name as all + stubs are now the same size. + (elf32_hppa_stub_hash_newfunc): Init new fields. + (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table + too. + (elf32_hppa_bfd_final_link_relocate): Cast enums to int before + comparing against ints. Rewrite stub handling code. + (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned. + Case enums to int before comparing against ints. Remove + bfd_reloc_dangerous case. + (elf32_hppa_build_one_stub): Rewrite. + (elf32_hppa_size_one_stub): New function. + (elf32_hppa_build_stubs): Rewrite. + (elf32_hppa_size_stubs): Pass in linker call-back functions. + Rewrite stub-handling specific code. + + * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype. + + * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo. + + * hppa_stubs.h: Delete. + * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h + (elf32-hppa.lo): Remove hppa_stubs.h from dependencies. + * Makefile.in: Regenerate. + + * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and + e_nlrsel. + + * libhppa.h (hppa_field_adjust): Correct e_nsel case. + + * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset + and section name for bfd_reloc_notsupported error message. + (elf32_hppa_bfd_final_link_relocate): Print reasons for returning + bfd_reloc_notsupported. + (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd. + + * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle + undefined weak symbols for all relocs. + (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch + offsets are relative to one past the delay slot. + (elf32_hppa_size_stubs): Account for reloc addend when calculating + branch destination. Put addend into stub name too. + (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and + adjust by 8 when deciding whether a linker stub is needed. Put + addend into stub name as for above. + + * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on + various args and vars. + (elf32_hppa_bfd_final_link_relocate): Here too. + (elf32_hppa_size_stubs): Rename index -> indx. Use e_indx for + inner block var to avoid shadowing. + + * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Make `field' arg + unsigned. + * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto. + * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto. + (elf_hppa_fake_sections): Rename local var to avoid shadowing. + + * libhppa.h: Change practically all unsigned ints to plain ints. + Remove tests on gcc version. Instead use ATTRIBUTE_UNUSED for + prototypes. + + From Ryan Bradetich <rbradetich@uswest.net> + * libhppa.h (hppa_opcode_type): New enum to replace #define's. + * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to + suit above. + From David Huggins-Daines <dhd@linuxcare.com> + * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants + to the new OP_* ones. + + * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on + error exit. Bail out earlier on plabel relocs that we aren't + interested in. Don't tell elf32_hppa_stub_hash_lookup to copy + string, and then don't free our copy. + (elf32_hppa_build_one_stub): Make insn unsigned int. + + * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only + available with BL, not BE and BLE. + + * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example + code for elf arg relocs. + (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local + argument with elf_link_hash_entry h. Handle undefined weak + symbols. Move $global$ lookup from here... + (elf32_hppa_relocate_section): ...to here. Return correct error + message for non-handled relocs. + (elf32_hppa_size_of_stub): Correctly test branch range. Previous + wrong test was -0x3ffff to +0x40000. + + * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R, + R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches; + Handle them as such. + (elf_hppa_relocate_insn): Fix a typo. + + * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete. + (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a, + assemble_17, assemble_21): Delete. + Supply defines for all 64 possible opcodes. + (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode + formats. Handle COMICLR. + (hppa_rebuild_insn): Delete bfd argument. Handle formats 10, -11, + -10, -16, 16, 22. + + * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite. + (elf32_hppa_bfd_final_link_relocate): Major rewrite. + (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls + to suit. + (elf32_hppa_size_stubs): Don't free stub_name twice. Read in all + the local syms - did this code get deleted accidentally? Ignore + undefined and undefweak syms. + + * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost + block. Use it instead of elf64_hppa_hash_table (info). + (elf_hppa_final_link_relocate): Use hppa_info instead of + elf64_hppa_hash_table (info). + + * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16, + re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn. + (hppa_rebuild_insn): Mask immediate bits here instead. + * elf-hppa.h (elf_hppa_relocate_insn): Mask here too. + +2000-07-08 Alan Modra <alan@linuxcare.com.au> + + * section.c (struct sec): Add id field. Tidy comment formatting. + (bfd_make_section_anyway): Set id. + (STD_SECTION): Init id too. + Change CONST to const throughout. + * archures.c (bfd_arch_info): Tidy comment. + (bfd_arch_list): Change a CONST to const. + * libbfd-in.h: Tidy comments and replace CONST with const. + * elf-bfd.h: Likewise. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + * libcoff.h: Regenerate. + +2000-07-07 DJ Delorie <dj@redhat.com> + + * archive.c (_bfd_write_archive_contents): Add an informative + comment. + +2000-07-06 Kazu Hirata <kazu@hxi.com> + + * srec.c: Fix formatting. + +2000-06-05 DJ Delorie <dj@redhat.com> + + * MAINTAINERS: new + +2000-07-04 Alexandre Oliva <aoliva@redhat.com> + + * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol + value of PC-relative offsets. + +2000-07-03 Jim Wilson <wilson@cygnus.com> + + * elf64-alpha.c (alpha_elf_size_info): New. + (elf_backend_size_info): Define to alpha_elf_size_info. + * elfcode.h (elf_size_info): Change hash bucket size to 4. + +2000-07-03 Ulf Carlsson <ulfc@engr.sgi.com> + + * elf32-mips.c: Include elf32-target.h again for the traditional + MIPS targets. + +2000-07-03 Marek Michalkiewicz <marekm@linux.org.pl> + + * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup): + Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings. + (avr_info_to_howto_rela): Likewise. + (elf32_avr_gc_mark_hook): Likewise. + (elf32_avr_gc_sweep_hook): Likewise. + (elf32_avr_relocate_section): Likewise. + +2000-07-03 Mark Elbrecht <snowball3@bigfoot.com> + + * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into + an external symbol for a non-shared, non-relocatable link. + +2000-07-03 Nick Clifton <nickc@redhat.com> + + * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol + is an external symbol. + (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak + external symbol. + +2000-07-03 Kazu Hirata <kazu@hxi.com> + + * reloc16.c: Fix formatting. + +2000-07-01 Koundinya K <kk@ddeorg.soft.net> + + * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4* + to add a new target for traditional mips i.e + bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec. + * configure.in: Likewise. + * configure: Rebuild. + * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in + bfd_target_vector. + (bfd_elf32_tradlittlemips_vec): Likewise. + * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test + to see that elfNN_bed does not get redefined even if the target file + is included twice for a chip. See elf32-mips.c. + +2000-07-01 Alan Modra <alan@linuxcare.com.au> + + * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed + (CLEANFILES): Add DEPA. + * Makefile.in: Regenerate. + +2000-06-30 DJ Delorie <dj@cygnus.com> + + * peicode.h (coff_swap_filehdr_in): can't use e_magic because we + can't assume the PE header is at 0x80. + +2000-06-29 Mark Elbrecht <snowball3@bigfoot.com> + + * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH. + +2000-06-28 Mark Elbrecht <snowball3@bigfoot.com> + + * go32stub.h: Update stub. + +2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl> + + * archures.c (bfd_mach_avr5): Define. + * bfd-in2.h (bfd_mach_avr5): Define. + * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to + bfd_mach_avr5, add bfd_mach_avr4. Update comments. + (compatible): Update comment. Add missing test. + * elf32-avr.c (avr_final_link_relocate): Support 8K wrap + for avr2 and avr4. Simplify 8K wrap code. + (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5. + (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5. + +2000-06-26 Kazu Hirata <kazu@hxi.com> + + * coff-h8300.c: Fix formatting. + * cpu-h8300.c: Likewise. + +2000-06-24 Alexandre Oliva <aoliva@redhat.com> + + * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)' + for local symbols whose names are unknown. + +2000-06-22 Alan Modra <alan@linuxcare.com.au> + + * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we + find one. + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2000-06-20 H.J. Lu <hjl@gnu.org> + + * Makefile.am: Rebuild dependency. + * Makefile.in: Rebuild. + +2000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function. + (elf_backend_copy_indirect_symbol): Map to the new function. + +2000-06-20 Alan Modra <alan@linuxcare.com.au> + + * archive.c (normalize): Correct pointer comparison when checking + for backslashes. + (bfd_bsd_truncate_arname): Likewise. + (bfd_gnu_truncate_arname): Likewise. + +2000-06-20 Ulf Carlsson <ulfc@engr.sgi.com> + + * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual + sections elf_{text,data}_{section,symbol}. + * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove. + (_bfd_mips_elf_hide_symbol): New function. + (elf_backend_hide_symbol): Map to the new function. + (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD + definitions of mips_elf_{text,data}_{section,symbol}. + (mips_elf_local_relocation_p): Try to find the direct symbol + based on new check_forced argument. + (mips_elf_calculate_relocation): Use new version of + mips_elf_local_relocation_p. + (mips_elf_relocate_section): Likewise. + (_bfd_mips_elf_relocate_section): Likewise. + (mips_elf_sort_hash_table): Only assert that have enough GOT + space. + (mips_elf_got16_entry): Match all 32 bits to the existing GOT + entry if the relocation based on the new external argument. + (mips_elf_create_dynamic_relocation): Assert that we have a + section contents allocated where we can swap out the dynamic + relocations. + (mips_elf_calculate_relocation): Find the real hash-table entry + correctly by using h->root.root.type. Only create a dynamic + relocation entry if the symbol is defined in a shared library. + Create an external GOT entry for the GOT16 relocation if the + symbol was forced local. + (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a + dynamic index if the symbol was forced local. + +2000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * elf32-mips.c: Fix typos in comments. + +2000-06-19 Mark Kettenis <kettenis@gnu.org> + + * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef + CORE_VERSION_1. + +2000-06-18 Stephane Carrez <stcarrez@worldnet.fr> + + * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild. + * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS, + BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files. + * configure.in (bfd_elf32_m68hc12_vec): Recognize. + (bfd_elf32_m68hc11_vec): Likewise. + * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11. + Supports 68hc11 & 68hc12 at the same time. + * targets.c (bfd_elf32_m68hc12_vec): Declare and put in + bfd_target_vector. + (bfd_elf32_m68hc11_vec): Likewise. + * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11. + * archures.c (bfd_m68hc12_arch): Define and register in global list + (bfd_m68hc11_arch): Likewise. + * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8, + BFD_RELOC_M68HC11_3B): Define. + * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support. + * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support. + +2000-06-18 Ulf Carlsson <ulfc@engr.sgi.com> + + * elf_bfd.h (struct elf_backend_data): Add info argument to + elf_backend_hide_symbol. + (_bfd_elf_link_hash_hide_symbol): Likewise. + * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise. + * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise. + * elflink.h (elf_link_add_object_symbols): Likewise. + (elf_link_assign_sym_version): Likewise. + +2000-06-18 H.J. Lu <hjl@gnu.org> + + * coff-i386.c (coff_i386_reloc): Don't return in case of + output_bfd == (bfd *) NULL if COFF_WITH_PE is defined. + Compensate PE relocations when linking with non-PE object + files to generate a non-PE executable. + +2000-06-17 Ulf Carlsson <ulfc@engr.sgi.com> + + * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write + GOT entries if we're doing a static link or -Bsymbolic link. + +2000-06-15 Ulf Carlsson <ulfc@engr.sgi.com> + + * elflink.h (elf_link_adjust_relocs): Check for and call backend + specifific swap_reloc_{in,out} and swap_reloca_{in,out} if + available. + (elf_link_output_relocs): Likewise. + (elf_reloc_link_order): Likewise. + +2000-06-16 Nicholas Duffek <nsd@redhat.com> + + * archures.c (enum bfd_architecture): #define constants for + PowerPc and RS6000 machine numbers. + * bfd-in2.h: Regenerate. + * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch + to bfd_arch_powerpc instead of bfd_arch_rs6000. Refer to PowerPc + and RS6000 machine numbers using #defined constants from + archures.c. + * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000 + machine numbers using #defined constants from archures.c. Add + entries for EC603e, 630, A35, RS64II, RS64III, 7400. Specify + 64-bit words in 620 entry. + * cpu-rs6000.c (arch_info_struct): Create with entries for RS1, + RSC, and RS2. + (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k). + +2000-06-16 Nicholas Duffek <nsd@cygnus.com> + + * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64. + * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field. + * libcoff.h (struct xcoff_tdata): Define xcoff64 field. + +2000-06-16 Nicholas Duffek <nsd@redhat.com> + + * bfd-in.h (bfd_family_coff): Define. + * bfd-in2.h: Regenerate. + * coffgen.c (coff_count_linenumbers, coff_symbol_from, + coff_find_nearest_line): Check COFFness using bfd_family_coff() + instead of bfd_target_coff_flavour. + * cofflink.c (_bfd_coff_final_link): Likewise. + * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to + exclude XCOFF files. + * reloc.c (bfd_perform_relocation, bfd_install_relocation): + Likewise. + * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour. + * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour. + * xcofflink.c (XCOFF_XVECP): Delete. + (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol, + bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc, + bfd_xcoff_record_link_assignment, + bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with + check for bfd_target_xcoff_flavour. + +2000-06-16 Nicholas Duffek <nsd@redhat.com> + + * rs6000-core.c: Support 64-bit core files, support pre-4.3 core + files on AIX 4.3. + (read_hdr): New function. + (rs6000coff_core_p): Store mstsave or __context64 struct instead + of trying to extract individual registers. Set abfd->arch_info + to match the architecture that created the core file. + (rs6000coff_get_section_contents): Delete. + * xcoff-target.h (rs6000coff_get_section_contents): Delete. + +2000-06-14 H.J. Lu <hjl@gnu.org> + + * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec) + is NULL. + +2000-06-13 H.J. Lu <hjl@gnu.org> + + * configure: Regenerate. + +2000-06-13 J"orn Rennecke <amylaar@cygnus.co.uk> + + * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of + armpei_little_vec. + +2000-06-08 David O'Brien <obrien@FreeBSD.org> + + * configure.in (VERSION): Update to show this is the CVS mainline. + +2000-06-07 Alan Modra <alan@linuxcare.com.au> + + * elf32-d10v.c: Include elf/d10v.h + (enum reloc_type): Delete. + * elf32-d30v.c: Include elf/d30v.h + (enum reloc_type): Delete. + + * Makefile.am: Run "make dep-am" to regenerate dependencies. + * Makefile.in: Regenerate. + + * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs. + (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and + move HOWTOs into elf_howto_table. + (R_386_standard, R_386_ext_offset): Define. + (R_386_ext, R_386_vt_offset, R_386_vt): Define. + (elf_i386_reloc_type_lookup): Modify calculation of index into + elf_howto_table since we've removed the padding. + (elf_i386_info_to_howto_rel): Likewise. + (elf_i386_relocate_section): Likewise. + +2000-06-06 Michael Snyder <msnyder@seadog.cygnus.com> + + * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t. + +2000-06-05 H.J. Lu <hjl@gnu.org> + + * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag + an error when seeing an undefined symbol with hidden/internal + attribute. It is handled in *_relocate_section (). + +2000-06-05 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_fix_symbol_flags): Follow the link for the + indirect symbol for the ELF_LINK_NON_ELF bit. + (elf_link_output_extsym): Don't output the indirect symbol even + if the ELF_LINK_NON_ELF bit is set. + +2000-06-01 J.T. Conklin <jtc@redback.com> + + * config.bfd (i[3456]86-*-netbsdelf*): New target. + (i[3456]86-*-netbsdaout*): New target. + (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs. + (i[3456]86-*-openbsd*): Likewise. + +2000-05-30 Andrew Cagney <cagney@b1.cygnus.com> + + * trad-core.c: From hpux-core.c, include <dirent.h> or + <sys/ndir.h> when possible. + +2000-05-31 Ulrich Drepper <drepper@redhat.com> + + * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version + definitions. We must not assume they are sorted in the file + according to their index numbers. + +2000-05-31 Alan Modra <alan@linuxcare.com.au> + + * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field + selector for R_PARISC_PCREL17R. R_PARISC_DIR17R and + R_PARISC_DIR17F are for absolute branches; Handle them as such. + +2000-05-30 Nick Clifton <nickc@cygnus.com> + + * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB, + 80960CA, 80960MC as valid machine names. + +2000-05-30 H.J. Lu <hjl@gnu.org> + + * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the + visibility bits if the symbol is undefined. Correctly handle + weak undefined symbols with hidden and internal attributes. + + * elflink.h (elf_link_add_object_symbols): Always turn the + symbol into local if it has the hidden or internal attribute. + +2000-05-29 Philip Blundell <philb@gnu.org> + + * ppcboot.c: Add packed attribute if compiling with GCC. + +2000-05-29 Anatoly Vorobey <mellon@pobox.com> + + * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal. + +2000-05-26 Michael Snyder <msnyder@seadog.cygnus.com> + + * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus, + elfcore_grok_psinfo): Add code to allow debugging a 32-bit + corefile on a 64-bit (Sparc Solaris) host. Also clean up + a few old comments. + +2000-05-26 Alan Modra <alan@linuxcare.com.au> + + * Makefile.am: Update dependencies with "make dep-am" + * Makefile.in: Regenerate. + + * sysdep.h (gettext, dgettext, dcgettext, textdomain, + bindtextdomain): Replace defines with those from intl/libgettext.h + to quieten gcc warnings. + +2000-05-26 Eli Zaretskii <eliz@is.elta.co.il> + + * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH. + + * archive.c (normalize, bfd_bsd_truncate_arname, + bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support + file names with backslashes. + + * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file + before opening it. + + * sysdep.h: Include filenames.h. + +2000-05-26 Alan Modra <alan@linuxcare.com.au> + + * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777. + +2000-05-26 Jakub Jelinek <jakub@redhat.com> + + * elf64-sparc.c (sparc64_elf_relax_section): New. + (sparc64_elf_relocate_section): Optimize tail call into branch always + if possible. + * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. + (elf32_sparc_relax_section): New. + +2000-05-26 Jakub Jelinek <jakub@redhat.com> + + * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters. + Remove unusued variables. + (sparc64_elf_relocate_section): Change r_symndx type to unsigned long. + (sparc64_elf_merge_private_bfd_data): Fix shared library case from + previous fix, so that shared libs really don't influence targets + extension mask and memory model. + +2000-05-23 H.J. Lu <hjl@gnu.org> + + * elf64-alpha.c (elf64_alpha_relocate_section): Check + h->root.other not h->other. + * elf32-mips.c (mips_elf_calculate_relocation): Likewise. + + * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo. + +2000-05-23 H.J. Lu <hjl@gnu.org> + + * elf32-i386.c (elf_i386_relocate_section): Don't allow the + undefined symbol with the non-default visibility attributes. + * elf-hppa.h (elf_hppa_relocate_section): Likewise. + * elf32-arm.h (elf32_arm_relocate_section): Likewise. + * elf32-i370.c (i370_elf_relocate_section): Likewise. + * elf32-m68k.c (elf_m68k_relocate_section): Likewise. + * elf32-mcore.c (mcore_elf_relocate_section): Likewise. + * elf32-mips.c (mips_elf_calculate_relocation): Likewise. + * elf32-ppc.c (ppc_elf_relocate_section): Likewise. + * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. + * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. + * elf64-ia64.c (elf64_ia64_relocate_section): Likewise. + * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. + +2000-05-22 Richard Henderson <rth@cygnus.com> + + * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI, + PCREL22, PCREL64I. Zero size of special relocs. + (elf64_ia64_reloc_type_lookup): Likewise. + (USE_BRL, oor_brl, oor_ip): New. + (elf64_ia64_relax_section): New. + (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I. + (elf64_ia64_install_value): Likewise, plus PCREL21BI. + (elf64_ia64_relocate_section): Likewise. + (bfd_elf64_bfd_relax_section): New. + * reloc.c (BFD_RELOC_IA64_PCREL21BI): New. + (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New. + * bfd-in2.h, libbfd.h: Regenerate. + +2000-05-22 Nick Clifton <nickc@cygnus.com> + + * configure.in : Add peigen.lo to MIPS PE targets. + * configure: Regenerate. + +2000-05-22 Momchil Velikov <velco@fadata.bg> + + * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess + only if it is known for both input and output bfds. Separate + error message strings as in some languages, it may be necessary + to change more than one place in the string to change between + 'big' and 'little'. + + * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline + endianess checks, call _bfd_generic_verify_endian_match() instead. + + * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise. + + * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise. + + * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify + endianess before checking bfd flavours. + +2000-05-22 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_link_output_extsym): Clear the visibility + field for symbols not defined locally. + +2000-05-18 Alan Modra <alan@linuxcare.com.au> + + * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16, + re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn. + (hppa_rebuild_insn): Mask immediate bits here instead. + * elf-hppa.h (elf_hppa_relocate_insn): Mask here too. + +2000-05-18 Momchil Velikov <velco@fadata.bg> + + * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting + relocs for an executable, ensure that they are virtual addresses. + +2000-05-18 Jeffrey A Law (law@cygnus.com) + + * config.bfd (hppa*64*-*-hpux11*): New target triplet. + +2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com> + Rick Gorton <gorton@scrugs.lkg.dec.com> + + * elflink.h: Add emitrelocations support: when enabled, relocation + information and relocation sections are put into final output + executables. If the emitrelocations flag is set, do the following: + (elf_bfd_final_link): Emit relocation sections. + (elf_link_input_bfd): Compute relocation section contents. + (elf_gc_sections): Don't clean relocation sections. + +2000-05-16 Catherine Moore <clm@cygnus.com> + + * som.c (som_decode_symclass): Recognize weak symbols. + +2000-05-16 Szabolcs Szakacsits <szaka@F-Secure.com> + + * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that + read idata section only from dataoff. + (pe_print_edata): Correctly check for valid eat_member. + +2000-05-16 J"orn Rennecke <amylaar@cygnus.co.uk> + + * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8. + +2000-05-14 Philip Blundell <philb@gnu.org> + + * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets. + +2000-05-12 Alan Modra <alan@linuxcare.com.au> + + * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec + + * peigen.c (pe_print_idata): Look for .idata section and print + info even if data directory has zero entries. Read idata section + starting from dataoff, and adjust all data offsets to suit. Cast + all bfd_vma vars to unsigned long before passing to fprintf. + * peigen.c (pe_print_edata): Similarly, look for .edata section + and print info even if data directory has zero entries. Cast + all bfd_vma vars to unsigned long before passing to fprintf. + + From Szabolcs Szakacsits <szaka@F-Secure.com> + * peigen.c (pe_print_idata): Use bfd_section_size rather than data + directory size which may be bogus. + * peigen.c (pe_print_edata): Similarly. + +2000-05-09 Alan Modra <alan@linuxcare.com.au> + + * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela + section is empty. + (copy_private_bfd_data): Allow for space possibly taken up by elf + headers when calculating segment physical address from lma. + +2000-05-08 Alan Modra <alan@linuxcare.com.au> + + * versados.c (versados_scan): Init stringlen and pass_2_done. + + * trad-core.c (trad_unix_core_file_p): Return + bfd_error_wrong_format rather than bfd_error_file_truncated. + + * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to + add_data_entry. DataDirectory virtual address is relative. + (pe_print_idata): Account for relative DataDirectory virtual + addresses. Don't trash datasize inside POWERPC_LE_PE code. + (pe_print_edata): Similarly. + + From Szabolcs Szakacsits <szaka@F-Secure.com> + * peigen.c (dir_names): Add Delay Import Directory. + (pe_print_idata): Always search for bfd section containing + idata address rather than looking up section name. Print this + section name rather than .idata. + (pe_print_edata): Similarly. Also print some fields as %08lx. + (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as + Win32Version. + +2000-05-05 Clinton Popetz <cpopetz@cygnus.com> + + * xcoff.h: Rename to xcoff-target.h + * Makefile.am: Change all instances of xcoff.h to xcoff-target.h + * coff-rs6000.c: Ditto. + * coff64-rs6000.c: Ditto. + * coff-pmac.c: Ditto. + * Makefile.in: Regenerate. + +2000-05-05 Clinton Popetz <cpopetz@cygnus.com> + + * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): + Change U802TOC64MAGIC to U803XTOCMAGIC. + +2000-05-04 Michael Snyder <msnyder@seadog.cygnus.com> + + * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1. + * bfd-in.h: Prototype bfd_elf_get_arch_size. + * bfd-in2.h: Prototype bfd_elf_get_arch_size. + +2000-05-04 Alan Modra <alan@linuxcare.com.au> + + * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma. + +2000-05-03 Martin v. Löwis <loewis@informatik.hu-berlin.de> + + * elflink.h (elf_link_add_object_symbols): Reset dynindx for + hidden and internal symbols. + (elf_fix_symbol_flags): Clear NEEDS_PLT for symbols with + visibility. + * elflink.c (_bfd_elf_link_record_dynamic_symbol): Do not + assign a PLT or GOT entry to symbols with hidden and + internal visibility. + +2000-05-03 Mark Elbrecht <snowball3@bigfoot.com> + + * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add entry for + the .bss section. + * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. + +2000-05-02 H.J. Lu <hjl@gnu.org> + + * elf.c (prep_headers): Use ELFOSABI_NONE instead of + ELFOSABI_SYSV. + +2000-05-02 Alan Modra <alan@linuxcare.com.au> + + * targets.c (bfd_target_vector): Restore bfd_elf32_hppa_vec. + * Makefile.am (BFD32_BACKENDS): Restore elf32-hppa.lo. Regenerate + dependencies. + * Makefile.in: Regenerate. + +2000-05-01 Jim Wilson <wilson@cygnus.com> + + * Makefile.am (BFD32_BACKENDS): Add efi-app-ia32.lo. + (BFD32_BACKENDS_CFILES): Add efi-app-ia32.c. + (BFD64_BACKENDS): Delete coff-ia64.lo. Add efi-app-ia64.lo. + (BFD64_BACKENDS_CFILES): Delete coff-ia64.c. Add efi-app-ia64.c. + * Makefile.in: Rebuild. + +2000-05-02 Alan Modra <alan@linuxcare.com.au> + + * config.bfd: Re-enable elf32-hppa. It now compiles, even if it + doesn't work very well. + + * elf-hppa.h (elf_hppa_internal_shdr): Define. + (elf_hppa_fake_sections): hdr is elf_hppa_internal_shdr. + Set hdr->s_type to 1 if ARCH_SIZE == 32. + (_bfd_elf_hppa_gen_reloc_type): Add prototype. + (elf_hppa_info_to_howto): Likewise. + (elf_hppa_info_to_howto_rel): Likewise. + (elf_hppa_reloc_type_lookup): Likewise. + (elf_hppa_is_local_label_name): Likewise. + (elf_hppa_fake_sections): Likewise. + (elf_hppa_final_write_processing): Likewise. + (elf_hppa_howto_table): Fully initialise all entries. + (_bfd_elf_hppa_gen_reloc_type): Add ATTRIBUTE_UNUSED to args. + (elf_hppa_info_to_howto): Likewise. + (elf_hppa_info_to_howto_rel): Likewise. + (elf_hppa_reloc_type_lookup): Likewise. + (elf_hppa_final_write_processing, elf_hppa_add_symbol_hook, + elf_hppa_unmark_useless_dynamic_symbols, + elf_hppa_remark_useless_dynamic_symbols, + elf_hppa_record_segment_addrs, elf_hppa_final_link, + elf_hppa_relocate_section, elf_hppa_final_link_relocate, + elf_hppa_relocate_insn): Compile only if ARCH_SIZE == 64 until + elf32-hppa.c mess is cleaned up. + (elf_hppa_final_link_relocate): Make insn and r_type unsigned + int. Delete r_field. In case R_PARISC_PCREL21L, don't set + r_field then call hppa_field_adjust inline func with variable + r_field arg, instead call hppa_field_adjust with fixed arg. + In case R_PARISC_PCREL22F, don't set r_field. + (elf_hppa_relocate_insn): Change args and return type to unsigned + int. Call re_assemble_* funcs to do the work. + + * elf32-hppa.c (hppa_elf_relocate_insn): Don't assume 32 bit when + sign extending. + + * libhppa.h (HPPA_R_CONSTANT): Don't assume 32 bit when sign + extending. + (sign_extend): Mask first before sign extending. + (low_sign_extend): Rewrite without condition expression. + (ones, dis_assemble_3, dis_assemble_12, dis_assemble_16, + dis_assemble_17, dis_assemble_21, dis_assemble_22): Delete. + (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a, + assemble_17, assemble_21, sign_unext, low_sign_unext): Return + result as function return value rather than through pointer arg. + Accept unsigned int args, and return unsigned int. + (re_assemble_3): New. Combines function of dis_assemble_3 with + re-assembly of opcode and immediate. + (re_assemble_12): Likewise. + (re_assemble_16): Likewise. + (re_assemble_17): Likewise. + (re_assemble_21): Likewise. + (re_assemble_22): Likewise. + (hppa_field_adjust): Rewrite and document, paying attention to + size of types and signed/unsigned issues. + (get_opcode): Shift before masking. + (FDLW): Rename to FLDW. + (bfd_hppa_insn2fmt): Change arg to unsigned int. Delete fmt. + (hppa_rebuild_insn): Change args and return value to unsigned + int. Make use of re_assemble_*. Correct case 11. + + * dep-in.sed: Handle ../opcodes/. + * Makefile.am (SOURCE_HFILES): Add elf-hppa.h, elf32-hppa.h, + elf64-hppa.h, hppa_stubs.h, xcoff.h. + (BFD32_BACKENDS_CFILES): Restore elf32-hppa.c. + Remove elf64-hppa.lo, cpu-ia64.lo, elf64-ia64.lo, elfarm-oabi.lo, + elfarm-nabi.lo dependencies outside of auto-dependency area. + Regenerate dependencies. + * Makefile.in: Regenerate. + + * configure.in (TRAD_HEADER): Test non-null before + AC_DEFINE_UNQUOTED. + * configure: Regenerate. + + * reloc.c: Fix mis-spelling in comment. + +2000-05-01 Alan Modra <alan@linuxcare.com.au> + + * coff-sh.c (bfd_coff_small_swap_table): Fix Fri Apr 28 change. + * vms.c (vms_openr_next_archived_file): Return NULL. + +2000-04-28 Clinton Popetz <cpopetz@cygnus.com> + + * coffcode.h Copy changes mistakenly done to libcoff.h in + 4/24/2000 patch. + +2000-04-29 Andreas Jaeger <aj@suse.de> + + * libbfd-in.h: Correctly check GCC version. + * bfd-in.h: Likewise. + * libhppa.h: Likewise. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + +2000-04-28 Clinton Popetz <cpopetz@cygnus.com> + + * Makefile.am (BFD64_BACKENDS, BFD64_BACKENDS_CFILES): Add + coffdu-rs6000.{lo,c}. + (coff-pmac.lo, coff-rs6000.lo, coff64-rs6000.lo): Add dependency + on xcoff.h + * Makefile.in: Regenerate. + * xcoff.h: New file. + * coff-pmac.c: Use xcoff.h instead of coff-rs6000.c. + * coff-rs6000.c: Move all declarations and defines that are + common to the xcoff backends into xcoff.h + * coff64-rs6000.c: Ditto, + +2000-04-28 Clinton Popetz <cpopetz@cygnus.com> + + * coff-mips.c (mips_ecoff_backend_data): Add initialization of + _bfd_coff_force_symnames in strings and + _bfd_coff_debug_string_prefix_length to their default values. + * coff-sh.c: (bfd_coff_small_swap_table): Ditto. + +2000-04-28 Clinton Popetz <cpopetz@cygnus.com> + + * coff-alpha.c (alpha_ecoff_backend_data): Add initialization of + _bfd_coff_force_symnames in strings and + _bfd_coff_debug_string_prefix_length to their default values. + +2000-04-27 Alan Modra <alan@linuxcare.com.au> + + * elf32-m68k.c (elf_m68k_gc_sweep_hook): Return if dynobj NULL. + Check local_got_refcounts before dereferencing. + + * elf32-ppc.c (ppc_elf_relocate_section): Check splt != NULL + before deciding we don't need R_PPC_PLT32 relocation. + (ppc_elf_gc_sweep_hook): Check local_got_refcounts before + dereferencing. + + * elflink.h (elf_gc_common_finalize_got_offsets): Fix comment. + + * elf32-i386.c (elf_i386_check_relocs): Reference count .got and + .plt entries. + (elf_i386_gc_sweep_hook): Garbage collect .got and .plt entries. + (elf_i386_adjust_dynamic_symbol): Recognize unused .plt entries. + (elf_i386_relocate_section): Allow for .plt to go missing. + (elf_i386_finish_dynamic_symbol): Use same test to decide if we + can use a relative reloc for got as elf_i386_relocate_section. + (bfd_elf32_bfd_final_link): Define to use gc form of final link. + +2000-04-26 Clinton Popetz <cpopetz@cygnus.com> + + * config.bfd: Remove extraneous bfd_powerpc_64_arch. + +2000-04-24 Clinton Popetz <cpopetz@cygnus.com> + + * Makefile.am (coff64-rs6000.lo): New rule. + * Makefile.in: Regenerate. + * coff-rs6000.c (xcoff_mkobject, xcoff_copy_private_bfd_data, + xcoff_is_local_label_name, xcoff_rtype2howto, + xcoff_reloc_type_lookup, xcoff_slurp_armap, xcoff_archive_p, + xcoff_read_ar_hdr, xcoff_openr_next_archived_file, xcoff_write_armap, + xcoff_write_archive_contents): No longer static, and prefix with _bfd_. + (NO_COFF_SYMBOLS): Define. + (xcoff64_swap_sym_in, xcoff64_swap_sym_out, xcoff64_swap_aux_in, + xcoff64_swap_aux_out): New functions; handle xcoff symbol tables + internally. + (MINUS_ONE): New macro. + (xcoff_howto_tabl, xcoff_reloc_type_lookup): Add 64 bit POS + relocation. + (coff_SWAP_sym_in, coff_SWAP_sym_out, coff_SWAP_aux_in, + coff_SWAP_aux_out): Map to the new functions. + * coff64-rs6000.c: New file. + * libcoff.h (bfd_coff_backend_data): Add new fields + _bfd_coff_force_symnames_in_strings and + _bfd_coff_debug_string_prefix_length. + (bfd_coff_force_symnames_in_strings, + bfd_coff_debug_string_prefix_length): New macros for above fields. + * coffcode.h (coff_set_arch_mach_hook): Handle XCOFF64 magic. + Set machine to 620 for XCOFF64. Use bfd_coff_swap_sym_in instead + of using coff_swap_sym_in directly. + (FORCE_SYMNAMES_IN_STRINGS): New macro, defined for XCOFF64. + (coff_set_flags) Set magic for XCOFF64. + (coff_compute_section_file_positions): Add symbol name length to + string section length if bfd_coff_debug_string_prefix_length is + true. + (coff_write_object_contents): Don't do reloc overflow for XCOFF64. + (coff_slurp_line_table): Use bfd_coff_swap_lineno_in instead of + using coff_swap_lineno_in directly. + (bfd_coff_backend_data): Add _bfd_coff_force_symnames_in_strings + and _bfd_coff_debug_string_prefix_length fields. + * coffgen.c (coff_fix_symbol_name, coff_write_symbols): Force + symbol names into strings table when + bfd_coff_force_symnames_in_strings is true. + * coffswap.h (MAX_SCNHDR_NRELOC, MAX_SCNHDR_NLNNO, GET_RELOC_VADDR, + SET_RELOC_VADDR): New macros. + (coff_swap_reloc_in, coff_swap_reloc_out): Use above macros. + (coff_swap_aux_in, coff_swap_aux_out): Remove RS6000COFF_C + code. + (coff_swap_aouthdr_in, coff_swap_aouthdr_out): Handle XCOFF64 + changes within RS6000COFF_C specific code. + (coff_swap_scnhdr_out): Use PUT_SCNHDR_NLNNO, PUT_SCNHDR_NRELOC, + MAX_SCNHDR_NRELOC, and MAX_SCNHDR_NLNNO. + * reloc.c (bfd_perform_relocation, bfd_install_relocation): + Extend existing hack on target name. + * xcofflink.c (XCOFF_XVECP): Extend existing hack on + target name. + * coff-tic54x.c (ticof): Keep up to date with new fields + in bfd_coff_backend_data. + * config.bfd: Add bfd_powerpc_64_arch to targ_arch and define + targ_selvecs to include rs6000coff64_vec for rs6000. + * configure.in: Add rs6000coff64_vec case. + * cpu-powerpc.c: New bfd_arch_info_type. + +2000-04-24 Jeffrey A Law (law@cygnus.com) + + * config.bfd: Only disable elf32-hppa vectors, not all of the + BSD and OSF configuration support. Provide (disabled) clauses + for PA64 support. + * configure.in: Add clause for PA64 support. + * configure: Rebuilt. + + * targets.c (bfd_target_vector): Add bfd_elf64_hppa_vec. + (bfd_elf64_hppa_vec): Declare. + + * Makefile.am (BFD64_BACKENDS): Add elf64-hppa.lo + (BFD64_BACKENDS_CFILES): Add elf64-hppa.c + (elf64-hppa.lo): Add dependencies. + * Makefile.in: Rebuilt. + + * elf64-hppa.c, elf64-hppa.h: New files with PA64 support. + +2000-04-24 Jason Eckhardt <jle@cygnus.com> + + * libhppa.h (dis_assemble_16): New function. + (pa_arch): Added pa20w element. + +2000-04-24 Ulrich Drepper <drepper@cygnus.com> + + * elf-bfd.h: Add prototypes for bfd_elf32_write_relocs, + bfd_elf32_slurp_reloc_table, bfd_elf64_write_relocs, and + bfd_elf64_slurp_reloc_table. + + * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): New + definitions to get external names. + (elf_write_relocs): Renamed from write_relocs and make global. + (elf_slurp_reloc_table): Make global. + (_bfd_elf,size_info): Use elf_write_relocs instead of write_relocs. + + * archive.c (hpux_uid_gid_encode): New function. + (bfd_ar_hdr_from_filesystem): Use it if HPUX_LARGE_AR_IDS is + defined and the ID is greater than 99999. + (bfd_generic_stat_arch_elt): If HPUX_LARGE_AR_IDS is defined decode + special uid/gid fields into 32 bit values. + +2000-04-21 Matthew Green <mrg@cygnus.com> + + * config.bfd: Add NetBSD/sparc64 support. + +Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com> + David Mosberger <davidm@hpl.hp.com> + Timothy Wall <twall@cygnus.com> + Jim Wilson <wilson@cygnus.com> + + * Makefile.am (ALL_MACHINES): Add cpu-ia64.lo. + (ALL_MACHINES_CFILES): Add cpu-ia64.c. + (BFD64_BACKENDS): Add elf64-ia64.lo. + (BFD64_BACKENDS_CFILES): Add elf64-ia64.c. + (cpu-ia64.lo, elf64-ia64.lo): New rules. + * Makefile.in: Rebuild. + * archures.c (enum bfd_architecture): Add bfd_arch_ia64. + (bfd_ia64_arch): Declare. + (bfd_archures_list): Add bfd_ia64_arch. + * bfd-in2.h: Rebuild. + * config.bfd: (ia64*-*-linux-gnu*, ia64*-*-elf*): New targets. + * configure: Rebuild. + * configure.host: (ia64-*-linux*): New host. + * configure.in (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec, + bfd_efi_app_ia64_vec, bfd_efi_app_ia64_vec): New vectors. + * elf.c (prep_headers): Add bfd_arch_ia64. + * libbfd.h: Rebuild. + * reloc.c: Add IA-64 relocations. + * targets.c (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec): + Declare. + (bfd_target_vect): Add bfd_elf64_ia64_little_vec. + * cpu-ia64-opc.c, cpu-ia64.c, elf64-ia64.c: New files. + +2000-04-21 Richard Henderson <rth@cygnus.com> + + * elf32-d30v.c (bfd_elf_d30v_reloc): Don't modify section + contents when performing a partial link. + (bfd_elf_d30v_reloc_21): Likewise. + +2000-04-20 H.J. Lu <hjl@gnu.org> + + * elf32-i386.c (elf_i386_relocate_section): Restrict 1998-12-10 + patch to symbols defined by a shared object. + * elf32-ppc.c (ppc_elf_relocate_section): Similarly. + +2000-04-19 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + K&R compiler fixes. + * dwarf2.c (concat_filename): Avoid string literal concatenation. + * ieee.c (ieee_get_symtab): Don't initialise union in struct. + +Mon Apr 17 19:14:36 2000 David Mosberger <davidm@hpl.hp.com> + + * Makefile.am (BFD64_BACKENDS): Mention coff-ia64.lo. + (BFD64_BACKENDS_CFILES): Mention coff-ia64.c + (coff-ia64.lo): Add dependency. + * Makefile.in: Regenerate. + * coff-ia64.c: New file. + * efi-app-ia32.c: Ditto. + * efi-app-ia64.c: Ditto. + * coffcode.h (coff_set_arch_mach_hook): Handle IA64MAGIC. + (coff_set_flags): Ditto. + (coff_write_object_contents) [IA64]: Set magic number to ZMAGIC. + * config.bfd (i[3456]86-*-linux-gnu*): Mention bfd_efi_app_ia32_vec. + * configure.in (elf): Handle bfd_efi_app_ia32 and bfd_efi_app_ia64_vec. + * configure: Regenerate. + * libpei.h (GET_OPTHDR_IMAGE_BASE): New macro. + (PUT_OPTHDR_IMAGE_BASE): Ditto. + (GET_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto. + (PUT_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto. + (GET_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto. + (PUT_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto. + (GET_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto. + (PUT_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto. + (GET_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto. + (PUT_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto. + (GET_PDATA_ENTRY): Ditto. + * peigen.c (_bfd_pei_swap_aouthdr_in) [COFF_WITH_PEP64]: Don't read + data_start. Use above macros to read fields that are 64 bit wide for + COFF_WITH_PEP64. Don't truncate entry and text_start to 32 bits. + (_bfd_pei_swap_aouthdr_out) [PEI_FORCE_MINIMUM_ALIGNMENT]: Force + FileAlignment and SectionAlignment to minimum alignment if they + are zero. + (_bfd_pei_swap_aouthdr_out) [PEI_DEFAULT_TARGET_SUBSYSTEM]: Set + Subsystem to default PEI_DEFAULT_TARGET_SUBSYSTEM. + (_bfd_pei_swap_aouthdr_out) [COFF_WITH_PEP64]: Don't set data_start. + Use above macros to write fields that are 64 bit wide for + COFF_WITH_PEP64. + (pe_print_pdata): Set PDATA_ROW_SIZE to 3*8 for COFF_WITH_PEP64, + 5*4 otherwise. This should be right for IA-32 and IA-64, but may + be wrong for platforms. Use PDATA_ROW_SIZE instead of hardcoded + value of 20 bytes. Modify printing for COFF_WITH_PEP64 to print + begin address, end address, and unwind info address only. Use + GET_PDATA_ENTRY() to read .pdata entries. Use fprintf_vma() to + print addresses. + (tbl): Add SECTION, REL32, RESERVED1, MIPS_JMPADDR16, DIR64, and + HIGH3ADJ relocation names. + (_bfd_pe_print_private_bfd_data): Print Subsystem name in legible form. + * targets.c: Declare bfd_efi_app_ia32_vec and + bfd_efi_app_ia64_vec. + (bfd_target_vector): Mention bfd_efi_app_ia32_vec and + bfd_efi_app_ia64_vec. + +2000-04-17 Timothy Wall <twall@cygnus.com> + + * bfd-in2.h: Add prototypes for tic54x load page access. + * bfd-in.h: Regenerate. + * coff-tic54x.c: Add load page functions; allow bfd_arch_unknown + in customized _set_arch_mach function. + * coffcode.h (coff_set_alignment_hook): Set section load page if + the appropriate macro is defined. + (write_object_contents): Read section load page. + +2000-04-13 Alan Modra <alan@linuxcare.com.au> + + * elf32-hppa.h: Update copyright date. + + * elf32-fr30.c (fr30_elf_i20_reloc): Don't use U suffix. + * elf32-mips.c (_bfd_mips_elf_relocate_section): And here. + + * elf32-d30v.c (MAX32): Don't use LL suffix. + (MIN32): Define in terms of MAX32. + (bfd_elf_d30v_reloc): Make relocation a bfd_signed_vma. + + * coff-a29k.c (SIGN_EXTEND_HWORD): Replace with more concise + expression. + + * peicode.h (pe_ILF_build_a_bfd): Remove UL from hex constants. + +2000-04-12 Alan Modra <alan@linuxcare.com.au> + + * dep-in.sed: Match space before file name, not after. + * Makefile.am: Regenerate dependencies. + * Makefile.in: Regenerate. + + * reloc.c (_bfd_relocate_contents): In complain_overflow_bitfield + case, allow address wrap-around stupidly removed 2000-03-17. Sign + extend without an if statement. + +2000-04-11 Alan Modra <alan@linuxcare.com.au> + + * coff-mips.c (mips_gprel_reloc): Test for 16 bit range using + signed quantites. + * elf32-mips.c (gprel16_with_gp): Likewise. + * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Test range + here using -0x40000, not (int)0xfffc0000. + (elf32_hppa_size_of_stub): Likewise. + +2000-04-11 Timothy Wall <twall@cygnus.com> + + * coff-tic54x.c: Now builds with all targets. + * Makefile.am: Add coff/tic54x.h to coff-tic54x.o dependencies. + * Makefile.in: Regenerate. + * coffcode.h (coff_set_arch_mach_hook): Eliminate warning on + unitialized variable. + +Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com> + + * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add + --enable-build-warnings option. + * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions. + * Makefile.in, configure: Re-generate. + +2000-04-07 Nick Clifton <nickc@cygnus.com> + + * reloc.c: Add BFD_RELOC_ARM_PCREL_BLX and + BFD_RELOC_THUMB_PCREL_BLX. + + * elf32-arm.h (elf32_arm_final_link_relocate): Handle + R_ARM_XPC25 and R_ARM_THM_PC22. + + * elfarm-nabi.c (elf32_arm_howto_): Fix definitions of + R_ARM_XPC25 and R_ARM_THM_XPC22. + (elf32_arm_reloc_map): Make BFD_RELOC_{ARM|THUMB}_PCREL_BLX to + R_ARM_[XPC25|THM_XPC22]. + + * elfarm-oabi.c: Define OLD_ARM_ABI and change include from + elf/arm-oabi.h to elf/arm.h + + * Makefile.am: Fix dependency for elfarm-oabi.c + * Makefile.in: Regenerate. + + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + +2000-04-06 Michael Snyder <msnyder@seadog.cygnus.com> + + * elfcore.h (elf_core_file_p): preserve value of tdata at entry, + and restore it on failure. Release newly allocated tdata on + failure. + +Fri Apr 7 11:33:47 2000 Jim Wilson <wilson@cygnus.com> + + * dwarf2.c (struct dwarf2_debug): New field dwarf_line_size. + (decode_line_info): Set it. Report error if unit->line_offset is + equal to or larger than it. + +2000-04-07 Timothy Wall <twall@cygnus.com> + + * targets.c: Added vecs for tic54x. + * reloc.c: Added relocs for tic54x. + * libbfd.h: Regenerated. + * configure: Add TI COFF vecs for tic54x. + * configure.in: Ditto. + * config.bfd (targ_cpu): Recognize new tic54x target. + * coffcode.h (coff_slurp_symbol_table): Additions for TI COFF handling. + * bfd-in2.h: Add tic54x target and relocations. + * Makefile.am, Makefile.in: Add tic54x target. + * archures.c (bfd_archures_list): Add tic54x target. + * coff-tic54x.c: New. + * cpu-tic54x.c: New. + +2000-04-06 Michael Snyder <msnyder@seadog.cygnus.com> + + * elfcore.h (elf_core_file_p): call backend_object_p which + thereby gets an opportunity to update the arch/machine type. + +2000-04-06 Timothy Wall <twall@cygnus.com> + + * coffcode.h (coff_slurp_symbol_table): Handle C_STATLAB storage + class. Handle SEC_CLINK and SEC_BLOCK flags. + * section.c: Add SEC_CLINK and SEC_BLOCK flags. + * bfd-in2.h: Add SEC_CLINK and SEC_BLOCK flags. + +2000-04-06 Nick Clifton <nickc@cygnus.com> + + * elf32-arm.h (elf32_arm_set_private_flags): Only check for + EF_INTERWORK if this is an unknown EABI. + (elf32_arm_merge_private_bfd_data): Check EABI version + numbers. Only check EF_xxx flags if the EABI version number + is unknown. + (elf32_arm_check_private_bfd_data): Only check EF_xxx flags + if the EABI version number is unknown. + (elf32_arm_print_private_bfd_data): Only decode EF_xxx flags + if the EABI version number is unknown. + +Wed Apr 5 22:04:20 2000 J"orn Rennecke <amylaar@cygnus.co.uk> + + * reloc.c (_bfd_relocate_contents): Add BFD_RELOC_SH_LOOP_START and + BFD_RELOC_SH_LOOP_END. + * elf32-sh.c (sh_elf_howto_tab): Change special_func to + sh_elf_ignore_reloc for all entries that sh_elf_reloc used to ignore. + Add entries for R_SH_LOOP_START and R_SH_LOOP_END. + (sh_elf_reloc_loop): New function. + (sh_elf_reloc): No need to test for always-to-be-ignored relocs + any more. + (sh_rel): Add entries for BFD_RELOC_SH_LOOP_{START,END}. + (sh_elf_relocate_section): Handle BFD_RELOC_SH_LOOP_{START,END}. + * bfd-in2.h, libbfd.h: Regenerate. + +2000-04-04 Alan Modra <alan@linuxcare.com.au> + + * po/bfd.pot: Regenerate. + + * Makefile.am: Remove extraneous mkdep comment. + (MKDEP): Use gcc -MM rather than mkdep. + (DEP): Quote when passing vars to sub-make. Add warning + message to end. + (DEP1): Rewrite for "gcc -MM". + (CLEANFILES): Add DEP2. + Update dependencies. + * Makefile.in: Regenerate. + +2000-04-03 Kevin Buettner <kevinb@redhat.com> + + * configure.in: Added corefile support for AIX 4.3. In particular, + AIX_CORE_DUMPX_CORE will be defined in addition to AIX_CORE when + compiling rs6000-core.c. + * configure: Regenerated. + +2000-04-03 H.J. Lu <hjl@gnu.org> + + * cache.c (bfd_open_file): Unlink the output file only if + it has non-zero size. + +2000-04-01 Ken Block USG <block@zk3.dec.com> + + * elf64-alpha.c (elf64_alpha_relocate_section): Don't emit + relative relocations for non-loaded sections in shared objects. + (elf64_alpha_check_relocs): Similarly. + +Mon Apr 3 13:37:15 2000 Hans-Peter Nilsson <hp@axis.com> + + * aoutx.h (NAME(aout,reloc_type_lookup)): Add BFD_RELOC_8 and + BFD_RELOC_16 to switch for extended relocs. + (MY_swap_ext_reloc_in): New. + (MY_swap_ext_reloc_out): New. + (NAME(aout,slurp_reloc_table)): Use MY_swap_ext_reloc_in rather + than NAME(aout,swap_ext_reloc_in) for extended relocs. + (NAME(aout,squirt_out_relocs)): Similarly use + MY_swap_ext_reloc_out. + (aout_link_reloc_link_order): Use MY_put_ext_reloc if defined. + +2000-04-03 Kazu Hirata <kazu@hxi.com> + + * coff-h8300.c (h8300_reloc16_extra_cases): Add bsr:16 -> bsr:8 to + the R_PCRWORD_B case. + +2000-03-31 Thomas de Lellis <tdel@wrs.com> + + * srec.c : Set CHUNK size to 16 bytes to prevent download failures + on some targets. + * ihex.c : Ditto. + +Wed Mar 30 15:28:00 2000 Donald Lindsay <dlindsay@cygnus.com> + + * elf32-m32r.c (m32r_elf_generic_reloc): new function. All + HOWTO references to bfd_elf_generic_reloc, that have + partial_inplace == true, now use the new function. The function + is based on the recent rewrite of m32r_elf_lo16_reloc(), and + extends its fixes to the R_M32R_{16,24,32} relocs. + The new logic in m32r_elf_lo16_reloc() has been removed, and + it instead calls the new routine to obtain that functionality. + +2000-03-27 Alan Modra <alan@linuxcare.com.au> + + * elf32-avr.c (elf32_avr_gc_mark_hook, elf32_avr_gc_sweep_hook, + elf32_avr_check_relocs, avr_final_link_relocate, + elf32_avr_relocate_section, bfd_elf_avr_final_write_processing, + elf32_avr_object_p): Add prototypes. + (elf32_avr_gc_mark_hook): Add default for h->root.type. + (bfd_elf_avr_final_write_processing): Make static. + +2000-03-27 Denis Chertykov <denisc@overta.ru> + + * cpu-avr.c: New file. BFD support routines for AVR architecture. + * archures.c (bfd_architecture): Add AVR architecture. + (bfd_archures_list): Add reference to AVR architecture info. + * elf.c (prep_headers): Handle bfd_arch_avr. + * reloc.c: Add various AVR relocation enums. + * targets.c (bfd_elf32_avr_vec): Declare and add to target vector + list. + * Makefile.am: Add support for AVR elf. + * configure.in: Likewise. + * config.bfd: Likewise. + * Makefile.in: Regenerate. + * configure: This too. + * bfd-in2.h: And this. + * libbfd.h: And this. + +2000-03-24 H.J. Lu <hjl@gnu.org> + + * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Add prototype. + (elf64_alpha_find_reloc_at_ofs): Likewise. + +2000-03-17 Alan Modra <alan@linuxcare.com.au> + + * reloc.c (bfd_check_overflow): In case complain_overflow_bitfield, + flag an overflow if the bitfield is outside -2**n to 2**n-1. The + allowable range used to be -2**(n-1) to 2**n-1. + * reloc.c (_bfd_relocate_contents): Same here. Also replace + "boolean overflow" with "bfd_reloc_status_type flag". + +2000-03-14 Doug Evans <dje@casey.transmeta.com> + + * elf32-m32r.c (m32r_elf_lo16_reloc): Rewrite. + +2000-03-14 Kazu Hirata <kazu@hxi.com> + + * reloc16.c (bfd_coff_reloc16_relax_section): Count the total number + of shrinks properly, including the last reloc. + +2000-03-13 Kazu Hirata <kazu@hxi.com> + + * coff-h8300.c (h8300_reloc16_extra_cases): Fix the sanity + check for R_MOVL2. + +2000-03-11 Alan Modra <alan@linuxcare.com.au> + + * ieee.c (ieee_archive_p): Return bfd_error_wrong_format on + a format mismatch rather than an "error" from bfd_read such as + bfd_error_file_truncated. + +2000-03-10 Geoff Keating <geoffk@cygnus.com> + + * elf32-mips.c (_bfd_mips_elf_relocate_section): Do proper + sign-extension and big-endian compensation for + R_MIPS_64 even in ld -r. + +2000-03-10 Geoffrey Keating <geoffk@cygnus.com> + + * elf32-mips.c (mips_elf_next_relocation): Rename from + mips_elf_next_lo16_relocation, and generalize to look + for any relocation type. + (elf_mips_howto_table): Make R_MIPS_PC16 pcrel_offset. + (elf_mips_gnu_rel_hi16): Howto for R_MIPS_GNU_REL_HI16. + (elf_mips_gnu_rel_lo16): Howto for R_MIPS_GNU_REL_LO16. + (elf_mips_gnu_rel16_s2): Howto for R_MIPS_GNU_REL16_S2. + (elf_mips_gnu_pcrel64): Howto for R_MIPS_PC64. + (elf_mips_gnu_pcrel32): Howto for R_MIPS_PC32. + (bfd_elf32_bfd_reloc_type_lookup): Add new relocs. + (mips_rtype_to_howto): Likewise. + (mips_elf_calculate_relocation): Handle new relocs. + (_bfd_mips_elf_relocate_section): REL_HI16/REL_LO16 relocs + are paired. The addend for R_MIPS_GNU_REL16_S2 + is shifted right two bits. + +2000-03-10 Alan Modra <alan@linuxcare.com.au> + + * reloc.c (bfd_perform_relocation): Undo emacs formatting of + comment, and ensure it doesn't happen again. + (bfd_install_relocation): Same here. + (_bfd_relocate_contents): Don't bother assigning unused signmask + shift result. Fix typos in comments. + Remove trailing whitespace throughout file. + +2000-03-07 Doug Evans <dje@casey.transmeta.com> + + * reloc.c (reloc_howto_struct): Fix partial_inplace comment. + * bfd-in2.h: Rebuild. + +2000-03-06 Nick Clifton <nickc@cygnus.com> + + * peicode.h (struct pe_ILF_vars): Add sym_ptr_table and + sym_ptr_ptr fields. + (SIZEOF_ILF_SYM_PTR_TABLE): Define. + (SIZEOF_ILF_STRINGS): Redefine. + (pe_ILF_make_a_symbol-reloc): New function. Creates a symbol + relative reloc, as opposed to a section relative reloc. + (pe_ILF_make_a_symbol): Set the class of local symbols to C_STAT + not C_LABEL. + Add length of symbol's prefix to string pointer. + Store a pointer to the symbol in the symbol pointer table. + (pe_ILF_build_a_bfd): Do not build .idata$2 or .idata$7. + Initialise the symbol pointer table. + Store the hint in the Hint/Name table. + Make the jump reloc be symbol realtive, not section relative. + Create an import symbol for imported code. + +2000-03-06 Catherine Moore <clm@cygnus.com> + + * elf.c (swap_out_syms): Check for null type_ptr. + +2000-03-01 Hans-Peter Nilsson <hp@axis.com> + + * aout-target.h (MY(write_object_contents)): Remove unused + and unusable "#if CHOOSE_RELOC_SIZE". + * pc532-mach.c (MY(write_object_contents)): Ditto. + * netbsd.h (MY(write_object_contents)): Ditto. + * hp300hpux.c (MY(write_object_contents)): Ditto. + * freebsd.h (MY(write_object_contents)): Ditto. + * aout-tic30.c (tic30_aout_write_object_contents): Ditto. + +2000-02-29 H.J. Lu <hjl@gnu.org> + + * peicode.h (jtab): Make it static. + + * coff-sh.c (sh_align_load_span): Declared if COFF_WITH_PE is + defined and COFF_IMAGE_WITH_PE is not defined. + (_bfd_sh_align_load_span): Defined as sh_align_load_span if + COFF_WITH_PE is defined and COFF_IMAGE_WITH_PE is not defined. + +2000-03-01 Nick Clifton <nickc@cygnus.com> + + * coff-arm.c (bfd_arm_process_before_allocation): Make + 'symndx' signed to prevent compile time warning. + + * coff-mcore.c: Remove unused prototype for pe_object_p. + + * coff-sh.c: Add "#ifndef COFF_IMAGE_WITH_PE" around static + functions that are not used when COFF_IMAGE_WITH_PE is + defined. + (struct sh_opcode): Change type of 'flags' field to unsigned + long so that it can hold the USESAS flag. + + * coffcode.h (styp_to_sec_flags): Initialise 'target_name'. + + * elf-m10300.c (mn10300_elf_relax_section): Initialise + 'sym_sec'. + + * elf32-i370.c: Add ATTRIBUTE_UNUSED to unused function + parameters. + Remove unusued variables and code. + (elf_backend_add_symbol_hook): Fix prototype. + + * elf32-m68k.c (elf_m68k_gc_sweep_hook): Initialise 'sgot' and + 'srelgot'. + + * elf32-mcore.c (mcore_elf_relocate_section): Initialise + 'oldinst'. + + * elf32-mips.c: Add ATTRIBUTE_UNUSED to unused function + parameters. + Remove unusued variables and code. + (elf_backend_add_symbol_hook): Fix prototype. + + * elf32-sh.c (sh_elf_set_mach_from_flags): Use 'flags'. + + * elflink.h (elf_bfd_link_add_symbols): Add ATTRIBUTE_UNUSED + to unused function parameter. + + * pe-mips.c: Add ATTRIBUTE_UNUSED to unused function + parameters. + Use EMPTY_HOWTO to initialise empty howto slots. + Remove unused variables. + + * peicode.h (pe_ILF_build_a_bfd): Initialise id6. + +2000-03-01 H.J. Lu <hjl@gnu.org> + + * aoutx.h (aout_link_input_section_std): Pass "true" to + the undefined_symbol callback. + (aout_link_input_section_ext): Likewise. + * bout.c (get_value): Likewise. + * coff-a29k.c (coff_a29k_relocate_section): Likewise. + * coff-alpha.c (alpha_ecoff_get_relocated_section_conten): + Likewise. + (alpha_relocate_section): Likewise. + * coff-arm.c (coff_arm_relocate_section): Likewise. + * coff-i960.c (coff_i960_relocate_section): Likewise. + * coff-mcore.c (coff_mcore_relocate_section): Likewise. + * coff-mips.c (mips_relocate_section): Likewise. + * coff-ppc.c (coff_ppc_relocate_section): Likewise. + * coff-sh.c (sh_relocate_section): Likewise. + * coff-tic80.c (coff_tic80_relocate_section): Likewise. + * cofflink.c (_bfd_coff_generic_relocate_section): Likewise. + * elf-m10200.c (mn10200_elf_relocate_section): Likewise. + * elf-m10300.c (mn10300_elf_relocate_section): Likewise. + * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. + * elf32-fr30.c (fr30_elf_relocate_section): Likewise. + * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. + * elf32-i370.c (i370_elf_relocate_section): Likewise. + * elf32-m32r.c (m32r_elf_relocate_section): Likewise. + * elf32-mcore.c (mcore_elf_relocate_section): Likewise. + * elf32-sh.c (sh_elf_relocate_section): Likewise. + * elf32-v850.c (v850_elf_relocate_section): Likewise. + * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise. + * elflink.h (elf_link_output_extsym): Likewise. + * pe-mips.c (coff_pe_mips_relocate_section): Likewise. + * reloc.c (bfd_generic_get_relocated_section_conten): Likewise. + * reloc16.c (_bfd_ppc_xcoff_relocate_section): Likewise. + + * elf-hppa.h (elf_hppa_relocate_section): Pass "false" to the + undefined_symbol callback when building shared library with + -Bsymbolic and undefined symbols are allowed. Otherwise, pass + "true". + * elf32-arm.h (elf32_arm_relocate_section): Likewise. + * elf32-i386.c (elf_i386_relocate_section): Likewise. + * elf32-m68k.c (elf_m68k_relocate_section): Likewise. + * elf32-mips.c (mips_elf_calculate_relocation): Likewise. + (elf32_mips_get_relocated_section_content): Likewise. + * elf32-ppc.c (ppc_elf_relocate_section): Likewise. + * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. + * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. + * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. + +2000-02-28 Nick Clifton <nickc@cygnus.com> + + * Makefile.am: Add rules to build pe[i]-{sh|mips}.lo objects. + * Makefile.in: Regenerate. + + * configure.in: Add support for mips and sh pe vectors. + * configure: regenerate. + + * config.bfd: Add support for arm-wince, mips-pe and sh-pe + targets. + + * targets.c: Add mips and sh pe vectors. + + * libpei.h (coff_final_link_postscript): Only define if not + already defined. + + * coffcode.h: Add support for WinCE magic numbers. + + * peigen.c (pe_print_reloc): Update comment and rearrange + appending of newline character. + + * peicode.h: Add support for Image Library Format. + (pe_ILF_vars): Structure containing data used by ILF code. + (pe_ILF_make_a_section): New function. Create a section based + on ILF data. + (pe_ILF_make_a_reloc): New function. Create a reloc based on + ILF data. + (pe_ILF_make_a_symbol): New function. Create a symbol based + on ILF data. + (pe_ILF_save_relocs): New function. Store the relocs created + by pe_ILF_make_a_reloc in a section. + (pe_ILF_build_a_bfd): New function. Create a BFD describing + an ILF object. + (pe_ILF_object_p): New function. Return a bfd_target pointer + for an ILF object. + (pe_bfd_object_p): If an ILF object is detected call + pe_ILF_object_p on it. + + * coff-arm.c: Add support for WinCE relocs which are different + from normal ARM COFF relocs. + * pe-arm.c: Unset TARGET_UNDERSCORE for a WinCE target. + + * coff-sh.c: Add support for sh-pe target. + * pe-sh.c: New file. Support code for sh-pe target. + * pei-sh.c: New file. Support code for sh-pe target. + + * pe-mips.c: New file. Support code for mips-pe target. + * pei-mips.c: New file. Support code for mips-pe target. + +2000-02-27 Jakub Jelinek <jakub@redhat.com> + + * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Don't bump + architecture if the object causing the bump is dynamic. + * elf64-sparc.c (sparc64_elf_merge_private_bfd_data): Likewise, + and also don't it for memory ordering. + (sparc64_elf_write_relocs): Take src_rela out of the loop. + +2000-02-27 Ian Lance Taylor <ian@zembu.com> + + * dwarf2.c (read_abbrevs): Use _raw_size directly rather than + calling bfd_get_section_size_before_reloc. + (decode_line_info): Likewise. + (_bfd_dwarf2_find_nearest_line): Likewise. + +2000-02-27 Eli Zaretskii <eliz@is.elta.co.il> + + * Makefile.am (stamp-lib): Use $(LIBTOOL) --config to get the + name of the libtool directory. + * Makefile.in: Rebuild. + +Fri Feb 25 18:39:26 2000 Rodney Brown (RodneyBrown@pmsc.com) + + * som.c (SOM_HOWTO): Define. + (som_hppa_howto_table): Use it. + +2000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br> + + * config.bfd: Enable 64 bit support for GNU/Linux/sparc. + + * config.bfd: Enable 64 bit support for Solaris7+/sparc. + +2000-02-24 Catherine Moore <clm@cygnus.com> + + * som.c (som_misc_symbol_info): Add field + secondary_def. + (som_bfd_derive_misc_symbol_info): Initialize + secondary_def. + (som_build_and_write_symbol_table): Keep track + of secondary_def field. + (som_slurp_symbol_table): Set BSF_WEAK symbol flag + if secondary_def field is set. + (som_bfd_ar_write_symbol_stuff): Initialize + secondary_def. + +2000-02-23 Stephane Carrez <stcarrez@worldnet.fr> + + * dwarf2.c (read_address): Read 16-bits addresses. + (parse_comp_unit): Accept addr_size == 2. + +2000-02-23 Alan Modra <alan@spri.levels.unisa.edu.au> + + * bfd-in.h: Update copyright date. + +2000-02-23 Linas Vepstas <linas@linas.org> + + * cpu-i370.c: New file. + * elf32-i370.c: New file. + * archures.c (enum bfd_architecture): Add bfd_arch_i370. + (bfd_i370_arch): New. + (bfd_archures_list): Add bfd_i370_arch. + * elf.c (prep_headers): Add bfd_arch_i370. + * Makefile.am: Add support for IBM 370 elf. + * config.bfd: Likewise. + * configure.in: Likewise. + * libbfd.h (bfd_reloc_code_real_names): Likewise. + * reloc.c (bfd_reloc_code_type): Likewise. + * targets.c: Likewise. + + * Makefile.in: Regenerate. + * configure: Regenerate. + * bfd-in2.h: Regenerate. + +2000-02-22 Ian Lance Taylor <ian@zembu.com> + + * elf32-i386.c (elf_i386_info_to_howto_rel): Give a warning for + invalid relocation types, and change them to R_386_NONE. + +2000-02-22 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_link_add_object_symbols): If a version symbol is + not defined, don't add a second ELF_VER_CHR. + + * elflink.h (elf_bfd_final_link): Call output_extsym for global + symbols converted to local symbols even when stripping all + symbols. + (elf_link_output_extsym): Process global symbols converted to + local symbols even if they are being stripped. + +2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au> + + * archures.c (bfd_octets_per_byte): Return unsigned int. + (bfd_arch_mach_octets_per_byte): Ditto. + * libbfd.c (bfd_read, bfd_seek): Quell signed vs. unsigned + comparison warning. + * section.c (bfd_get_section_size_before_reloc): Quell signed + vs. unsigned comparison warning. + (bfd_get_section_size_after_reloc): Same here. Fix parentheses too. + * trad-core.c (trad_unix_core_file_p): Correct 2000-01-27 + change. What was I thinking? + * bfd-in2.h: Regenerate. + + * elflink.h (elf_gc_sweep): Skip non-elf input bfds. + (elf_gc_sections): Same here. + (elf_gc_common_finalize_got_offsets): And here. + +2000-02-21 Ian Lance Taylor <ian@zembu.com> + + ELF HPPA doesn't work at present; remove it until it does. + * config.bfd: Comment out setting targ_defvec to + bfd_elf32_hppa_vec. + * Makefile.am: Rebuild dependencies. + (BFD32_BACKENDS): Remove elf32-hppa.lo. + (BFD32_BACKENDS_CFILES): Remove elf32-hppa.c. + (SOURCE_HFILES): Remove elf32-hppa.h and hppa_stubs.h. + * Makefile.in: Rebuild. + * targets.c (bfd_target_vector): Comment out bfd_elf32_hppa_vec. + +2000-02-18 Geoff Keating <geoffk@cygnus.com> + + * coffcode.h (coff_set_arch_mach_hook): Use free(), because there + is no bfd_free(). Revert bfd_free part of previous change. + +2000-02-18 Geoff Keating <geoffk@cygnus.com> + + * coffcode.h (coff_set_arch_mach_hook): Don't use variable-size + arrays. + (coff_compute_section_file_positions): Use bfd_free to pair + bfd_malloc. + (coff_write_object_contents): Likewise. + + * coff-rs6000.c (xcoff_howto_table_16): New variable. + (xcoff_rtype2howto): Handle 16-bit variants of 32-bit relocs. + +2000-02-18 Ulrich Drepper <drepper@cygnus.com> + + * coff-rs6000.c (XCOFFARMAGBIG): New macro. + (xcoff_ar_file_hdr_big): New structure. + (SIZEOF_AR_FILE_HDR_BIG): New macro. + (xcoff_ar_hdr_big): New structure. + (SIZEOF_AR_HDR_BIG): New macro. + (xcoff_big_format_p): New macro. + (xcoff_ardata_big): New macro. + (arch_xhdr_big): New macro. + (xcoff_slurp_armap): Handle large archives. + (xcoff_archive_p): Detect large archives. + (xcoff_read_ar_hdr): Handle large archives. + (xcoff_openr_next_archived_file): Handle large archives. + (xcoff_generic_stat_arch_elt): Handle large archives. + (xcoff_write_armap_old): Rename from xcoff_write_armap. + (xcoff_write_armap_big): New function. + (xcoff_write_armap): New function, dispatch to _old or _big. + (xcoff_write_archive_contents_old): Rename from + xcoff_write_archive_contents. + (xcoff_write_archive_contents_big): New function. + (xcoff_write_archive_contents): New function, dispatch to _old or + _big. + +2000-02-18 Richard Henderson <rth@cygnus.com> + + * elf-bfd.h (struct elf_link_hash_table): Remove copy_indirect + and hide_symbol members. + (elf_link_hash_copy_indirect): Remove. + (elf_link_hash_hide_symbol): Remove. + (struct elf_backend_data): Add elf_backend_copy_indirect_symbol + and elf_backend_hide_symbol. + (_bfd_elf_link_hash_copy_indirect): Declare. + (_bfd_elf_link_hash_hide_symbol): Declare. + * elf.c (_bfd_elf_link_hash_copy_indirect): Remove table argument. + (_bfd_elf_link_hash_hide_symbol): Likewise. + (_bfd_elf_link_hash_table_init): Don't init killed members. + * elflink.h (elf_link_add_object_symbols): Use the bed function + pointers not elf_link_hash_{copy_indirect,hide_symbol}. + (elf_link_assign_sym_version): Likewise. + * elfxx-target.h (elf_backend_copy_indirect_symbol): Default. + (elf_backend_hide_symbol): Likewise. + (elfNN_bed): Update for new members. + +2000-02-17 Kevin Buettner <kevinb@redhat.com> + + * rs6000-core.c (CORE_DATA_SIZE_FIELD, CORE_COMM_FIELD, SAVE_FIELD, + STACK_END_ADDR): Define for new core file format. + (LOADER_OFFSET_FIELD, LOADER_REGION_SIZE, CORE_DUMP): New defines + for handling the vagaries of the various core file structures used + by AIX over the years. + (rs6000coff_core_p, rs6000coff_core_file_matches_executable, + Rs6kCorData): Use above defines to adapt code to use AIX 4.3's + core_dumpx structure. + +Thu Feb 17 00:04:48 2000 J"orn Rennecke <amylaar@cygnus.co.uk> + + * archures.c (bfd_mach_sh2, bfd_mach_sh_dsp): New macros. + (bfd_mach_sh3_dsp): Likewise. + (bfd_mach_sh4): Reinstate. + (bfd_default_scan): Recognize 7410, 7708, 7729 and 7750. + * bfd-in2.h: Regenerate. + * coff-sh.c (struct sh_opcode): flags is no longer short. + (USESAS, USESAS_REG, USESR8, SETSAS, SETSAS_REG): New macros. + (sh_opcode41, sh_opcode42): Integrate as sh_opcode41. + (sh_opcode01, sh_opcode02, sh_opcode40): Add sh-dsp opcodes. + (sh_opcode41, sh_opcode4, sh_opcode80): Likewise. + (sh_opcodes): No longer const. + (sh_dsp_opcodef0, sh_dsp_opcodef): New arrays. + (sh_insn_uses_reg): Check for USESAS and USESR8. + (sh_insn_sets_reg, sh_insns_conflict): Check for SETSAS. + (_bfd_sh_align_load_span): Return early for SH4. + Modify sh_opcodes lookup table for sh-dsp / sh3-dsp. + Take into account that field b of a parallel processing insn + could be mistaken for a separate insn. + * cpu-sh.c (arch_info_struct): New array elements for + sh2, sh-dsp and sh3-dsp. + Reinstate element for sh4. + (SH2_NEXT, SH_DSP_NEXT, SH3_DSP_NEXT): New macros. + (SH4_NEXT): Reinstate. + (SH3_NEXT, SH3E_NEXT): Adjust. + * elf-bfd.h (_sh_elf_set_mach_from_flags): Declare. + * elf32-sh.c (sh_elf_set_private_flags): New function. + (sh_elf_copy_private_data, sh_elf_set_mach_from_flags): Likewise. + (sh_elf_merge_private_data): New function. + (elf_backend_object_p, bfd_elf32_bfd_set_private_bfd_flags): Define. + (bfd_elf32_bfd_copy_private_bfd_data): Define. + (bfd_elf32_bfd_merge_private_bfd_data): Change to + sh_elf_merge_private_data. + +2000-02-13 Richard Henderson <rth@cygnus.com> + + * elf-bfd.h (struct elf_link_hash_table): Add copy_indirect and + hide_symbol members. + (elf_link_hash_copy_indirect): New. + (elf_link_hash_hide_symbol): New. + * elflink.h (elf_link_add_object_symbols): Break out copy from + indirect new new symbol to elf.c. + (elf_link_assign_sym_version): Break out privatization of + non-exported symbol to elf.c. + * elf.c (_bfd_elf_link_hash_copy_indirect): New. + (_bfd_elf_link_hash_hide_symbol): New. + (_bfd_elf_link_hash_table_init): Init copy_indirect and hide_symbol. + +2000-02-13 Ian Lance Taylor <ian@zembu.com> + + * section.c (_bfd_strip_section_from_output): Add info parameter. + If it passed as non-NULL, use it to check whether any input BFD + has an input section which uses this output section. Change all + callers. + * bfd-in2.h: Rebuild. + + * bfd-in.h: Move declarations of bfd_get_elf_phdr_upper_bound and + bfd_get_elf_phdrs in from bfd-in2.h, correcting patch of + 1999-11-29. + * bfd-in2.h: Rebuild. + +2000-02-10 Timothy Wall <twall@cygnus.com> + + * coffswap.h (coff_swap_sym_in): Add hook SWAP_SYM_IN_POST to + allow final modifications of swapped-in symbol. + (coff_swap_sym_out): Ditto with SWAP_SYM_OUT_POST. + * coffcode.h (coff_write_relocs): Use macro + SECTION_RELATIVE_ABSOLUTE_SYMBOL_P if defined to determine whether + symbol index should be set to -1. + +Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) + + * coff-sh.c (USES1_REG, USES2_REG, SETS1_REG, SETS2_REG, + USESF1_REG, USESF2_REG, SETSF1_REG, SETSF2_REG): New macros. + * (sh_insn_sets_reg, sh_insn_sets_freg): New prototypes. + * (sh_insn_sets_reg, sh_insn_uses_or_sets_reg, sh_insns_sets_freg, + sh_insns_uses_or_sets_freg): New functions. + * (sh_insn_uses_reg, sh_insn_uses_freg): Use new macros. + * (sh_insns_conflict): Use new functions and new macros to + detect conflicts when two instructions both set same integer registers, + both set same fp register, and both set special register. + +2000-02-09 Timothy Wall <twall@cygnus.com> + + * coffgen.c (coff_real_object_p): Set arch/mach info prior to + swapping in sections, so that the swapping routines have access to + the arch/mach info. + +2000-02-08 Mark Elbrecht <snowball3@bigfoot.com> + + * coff-go32.c: Update comment. Update copyright. + +2000-01-27 Thomas de Lellis <tdel@windriver.com> + + * syms.c (bfd_decode_symclass) + Two new class characters were added - 'V' and 'v'. The + meaning of 'W' is now restricted to just weak non-object + symbols. This allows differentiation between, for example, + weak functions vs weak objects. nm for example now dumps: + 'W' = weak global + 'w' = weak unresolved + 'V' = weak global object + 'v' = weak unresolved object + + (bfd_is_undefined_symclass): New function. Return true if the + given symbol class represents and undefined/unresolved symbol. + + (bfd_symbol_info): Use bfd_is_undefined_symclass to check for + unresolved symbols. + + * bfd-in2.h: Add prototype for bfd_is_undefined_symbol(). + + * elf32-arm.h (elf32_arm_get_symbol_type): If a symbol has the + STT_ARM_16BIT flag set, but it is not attached to a data object + return STT_ARM_16BIT so that it will be treated as code by the + disassembler. + +2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au> + + * coff-i386.c (i3coff_object_p): Remove prototype. + Update copyright. + + * elflink.c (_bfd_elf_link_record_dynamic_symbol): Add const + to name. Update copyright. + + * trad-core.c (trad_unix_core_file_p): Cast core_regsec + assignment to avoid warning. Update copyright. + +2000-01-24 Robert Lipe (robertl@sco.com) + + * coffcode.h (coff_write_object_contents): Get buff via bfd_malloc + instead of using GNU C extension. + +2000-01-21 Nick Clifton <nickc@cygnus.com> + + * libbfd.c (bfd_read): Do not attempt to get a negativly sized + amount from a bfd_in_memory structure. + (bfd_seek): Do not allow seeks past the end of a bfd_in_memory + structure. + +2000-01-14 Nick Clifton <nickc@cygnus.com> + + * linker.c (default_indirect_link_order): oops - fix incorrectly + applied patch from Tim Wall. + +2000-01-13 Timothy Wall (twall@tiac.net> + + * coffcode.h: Use bfd_coff_xxx instead of the macro XXX (where xxx + = scnhsz, filhsz, relsz, aoutsz, etc) + + * coffswap.h: Ditto. + +2000-01-13 Nick Clifton <nickc@cygnus.com> + + * elf32-arm.h (elf32_thumb_to_arm_stub): Fix offset in branch to + interwork thumb to arm stub. + +2000-01-13 Timothy Wall (twall@tiac.net> + + * archures.c (bfd_octets_per_byte): New function: Return + target byte size. + (bfd_arch_mach_octets_per_byte): New function: Return target + byte size. + + * section.c: Distinguish between octets and bytes for usage of + _cooked_size, _raw_size, and output_offset. Clarify + description of bfd_set_section_contents. + + * bfd-in2.h: Regenerate. + + * coffgen.c: Indicate that the offset parameter is in bytes, not + octets. + + * cofflink.c (bfd_coff_link_input_bfd): Use bfd_octets_per_byte + where appropriate to get the octet offset when calling + bfd_set_section_contents. + (bfd_coff_reloc_link_order): Ditto. + + * linker.c (bfd_generic_reloc_link_order): Ditto. + (_bfd_default_link_order): Ditto. + + * reloc.c (bfd_perform_relocation): Distinguish between octets + and bytes. Use octets when indexing into octet data; use bytes + when calculating target addresses. + (bfd_install_relocation): Ditto. + + * srec.c (srec_write_section): Ditto. + +2000-01-13 Nick Clifton <nickc@cygnus.com> + + * coff-mcore.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Change from + 3 to 2. This allows 4 byte sized sections, which is necessary for + dlltool to build functioning DLLs. + +2000-01-10 Philip Blundell <pb@futuretv.com> + + * config.bfd (arm*-*-linux-gnu*): Match instead of arm*-*-linux-gnu. + (arm*-*-conix*): New target. + +2000-01-10 Egor Duda <deo@logos-m.ru> + + * config.bfd: Include elf32_i386 vector to target list for cygwin + and mingw. + + * config.in: Undefine HAVE_WIN32_PSTATUS_T. + * configure.in: Test for structure win32_pstatus_t in + <sys/procfs.h> + * configure: Regenerate. + + * elf.c (elfcore_grok_win32pstatus): New function: process + win32_pstatus_t notes in elf core file. + (elfcore_grok_note): Detect win32_pstatus notes. + +2000-01-03 Martin v. Loewis <loewis@informatik.hu-berlin.de> + + * elflink.c (_bfd_elf_link_record_dynamic_symbol): Process symbol + visibility. + * elflink.h (elf_link_add_object_symbols): Combine visibilities. + * elf.c (bfd_elf_print_symbol): Interpret st_other as visibility. + +For older changes see ChangeLog-9899 + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/bfd/elf32-hppa.c b/bfd/elf32-hppa.c index 7fe328e..4c3dadb 100644 --- a/bfd/elf32-hppa.c +++ b/bfd/elf32-hppa.c @@ -1562,7 +1562,12 @@ elf32_hppa_check_relocs (abfd, info, sec, relocs) links or visibility changes anyway. A STUB_REL reloc is absolute too, as in that case it is the reloc in the stub we will be creating, rather than copying the PCREL - reloc in the branch. */ + reloc in the branch. + + If on the other hand, we are creating an executable, we + may need to keep relocations for symbols satisfied by a + dynamic library if we manage to avoid copy relocs for the + symbol. */ if ((info->shared && (sec->flags & SEC_ALLOC) != 0 && (IS_ABSOLUTE_RELOC (r_type) @@ -2140,7 +2145,8 @@ allocate_plt_and_got_and_discard_relocs (h, inf) /* First handle the non-shared case. */ if (!info->shared && (h->elf_link_hash_flags & ELF_LINK_NON_GOT_REF) == 0 - && ((h->elf_link_hash_flags & ELF_LINK_HASH_DEF_DYNAMIC) != 0 + && (((h->elf_link_hash_flags & ELF_LINK_HASH_DEF_DYNAMIC) != 0 + && (h->elf_link_hash_flags & ELF_LINK_HASH_DEF_REGULAR) == 0) || (hplink->root.dynamic_sections_created && (h->root.type == bfd_link_hash_undefweak || h->root.type == bfd_link_hash_undefined)))) @@ -3893,17 +3899,17 @@ elf32_hppa_relocate_section (output_bfd, info, input_bfd, input_section, case R_PARISC_DPREL21L: case R_PARISC_DIR32: /* The reloc types handled here and this conditional - expression must match the code in check_relocs and - hppa_discard_copies. ie. We need exactly the same - condition as in check_relocs, with some extra conditions - (dynindx test in this case) to cater for relocs removed - by hppa_discard_copies. If you squint, the non-shared - test here does indeed match the one in check_relocs, the - difference being that here we test DEF_DYNAMIC rather - than a maybe-DEF_DYNAMIC via !DEF_REGULAR. Common syms - end up with !DEF_REGULAR, which is why we can't use that - here. Conversely, DEF_DYNAMIC can't be used in - check_relocs as there all files have not been loaded. */ + expression must match the code in ..check_relocs and + ..discard_relocs. ie. We need exactly the same condition + as in ..check_relocs, with some extra conditions (dynindx + test in this case) to cater for relocs removed by + ..discard_relocs. If you squint, the non-shared test + here does indeed match the one in ..check_relocs, the + difference being that here we test DEF_DYNAMIC as well as + !DEF_REGULAR. All common syms end up with !DEF_REGULAR, + which is why we can't use just that test here. + Conversely, DEF_DYNAMIC can't be used in check_relocs as + there all files have not been loaded. */ if ((info->shared && (input_section->flags & SEC_ALLOC) != 0 && (IS_ABSOLUTE_RELOC (r_type) @@ -3917,8 +3923,10 @@ elf32_hppa_relocate_section (output_bfd, info, input_bfd, input_section, && h != NULL && h->elf.dynindx != -1 && (h->elf.elf_link_hash_flags & ELF_LINK_NON_GOT_REF) == 0 - && ((h->elf.elf_link_hash_flags - & ELF_LINK_HASH_DEF_DYNAMIC) != 0 + && (((h->elf.elf_link_hash_flags + & ELF_LINK_HASH_DEF_DYNAMIC) != 0 + && (h->elf.elf_link_hash_flags + & ELF_LINK_HASH_DEF_REGULAR) == 0) || h->elf.root.type == bfd_link_hash_undefweak || h->elf.root.type == bfd_link_hash_undefined))) { diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c index ccc71e4..ffa810c 100644 --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -705,6 +705,7 @@ elf_i386_check_relocs (abfd, info, sec, relocs) table entry. A similar situation occurs when creating shared libraries and symbol visibility changes render the symbol local. + If on the other hand, we are creating an executable, we may need to keep relocations for symbols satisfied by a dynamic library if we manage to avoid copy relocs for the @@ -1213,7 +1214,8 @@ allocate_plt_and_got_and_discard_relocs (h, inf) if (!info->shared && (h->elf_link_hash_flags & ELF_LINK_NON_GOT_REF) == 0 - && ((h->elf_link_hash_flags & ELF_LINK_HASH_DEF_DYNAMIC) != 0 + && (((h->elf_link_hash_flags & ELF_LINK_HASH_DEF_DYNAMIC) != 0 + && (h->elf_link_hash_flags & ELF_LINK_HASH_DEF_REGULAR) == 0) || (htab->root.dynamic_sections_created && (h->root.type == bfd_link_hash_undefweak || h->root.type == bfd_link_hash_undefined)))) @@ -1707,8 +1709,10 @@ elf_i386_relocate_section (output_bfd, info, input_bfd, input_section, && h != NULL && h->dynindx != -1 && (h->elf_link_hash_flags & ELF_LINK_NON_GOT_REF) == 0 - && ((h->elf_link_hash_flags - & ELF_LINK_HASH_DEF_DYNAMIC) != 0 + && (((h->elf_link_hash_flags + & ELF_LINK_HASH_DEF_DYNAMIC) != 0 + && (h->elf_link_hash_flags + & ELF_LINK_HASH_DEF_REGULAR) == 0) || h->root.type == bfd_link_hash_undefweak || h->root.type == bfd_link_hash_undefined))) { |