diff options
Diffstat (limited to 'contrib/binutils/bfd/ChangeLog')
-rw-r--r-- | contrib/binutils/bfd/ChangeLog | 9206 |
1 files changed, 3504 insertions, 5702 deletions
diff --git a/contrib/binutils/bfd/ChangeLog b/contrib/binutils/bfd/ChangeLog index 638ea679922f..380d1ffac71c 100644 --- a/contrib/binutils/bfd/ChangeLog +++ b/contrib/binutils/bfd/ChangeLog @@ -1,10 +1,1015 @@ +2001-03-31 Philip Blundell <philb@gnu.org> + + From 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-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 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 Philip Blundell <philb@gnu.org> + + * configure: Regenerate. + +2001-03-16 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. + + * elf32-hppa.c: Correct field selector in stub comments. + (clobber_millicode_symbols): Formatting fix. + +2001-03-11 Philip Blundell <philb@gnu.org> + + * configure.in: Set version to 2.11. + + * 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-07 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix handling of + some relocation values. + +2001-02-28 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (elf64_x86_64_relocate_section): Add relocation + to addend. + +2001-02-26 Andreas Jaeger <aj@suse.de> + + * elf64-x86-64.c (x86_64_elf_howto_table): Fix order of entries. + +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-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-14 Philip Blundell <pb@futuretv.com> + + From 2001-02-06 H.J. Lu <hjl@gnu.org> + * bfd/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-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-14 Philip Blundell <pb@futuretv.com> + + From 2001-02-08 H.J. Lu <hjl@gnu.org> + * elf32-i386.c (elf_i386_check_relocs): Reserve R_386_32 + relocation entries for weak definitions when building DSO with + -Bsymbolic. + +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 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). + +Mon Feb 12 17:44:39 CET 2001 Jan Hubicka <jh@suse.cz> + + * elf64-x86-64.c (x86_64_elf_howto): Fix name of R_X86_64_GOTPCREL. + +2001-02-10 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-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-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-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. + + * bfd/aoutx.h (NAME(aout,machine_type)): Add a + bfd_mach_mips_sb1 case. + * bfd/archures.c (bfd_mach_mips_sb1): New constant. + * bfd/bfd-in2.h (bfd_mach_mips_sb1): New constant. + * bfd/cpu-mips.c (I_sb1): New constant. + (arch_info_struct): Add entry for bfd_mach_mips_sb1. + * bfd/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. - From mainline 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-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> @@ -17,148 +1022,1854 @@ 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. - From 2000-05-23 H.J. Lu <hjl@gnu.org> - * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo. - 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 + (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-23 Philip Blundell <pb@futuretv.com> - From 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. +2000-10-25 Chris Demetriou <cgd@sibyte.com> -2000-10-23 Philip Blundell <pb@futuretv.com> + * ieee.c (ieee_archive_p): Plug one of many possible + memory leaks in error handling. - * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Undo previous - accidental checkin. +2000-10-20 Jakub Jelinek <jakub@redhat.com> -2000-10-22 Philip Blundell <philb@gnu.org> + * 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. - * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make - PLT entries that could serve as a definition for a weak symbol. +2000-10-16 Geoffrey Keating <geoffk@shoggoth.cygnus.com> - From 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 (). + * elf64-sparc.c (sparc64_elf_relocate_section): Clear the location + of a GOT reloc. - From 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-sparc.c (sparc64_elf_relocate_section): Likewise. + * 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-16 Geoffrey Keating <geoffk@cygnus.com> +2000-10-14 Geoffrey Keating <geoffk@shoggoth.cygnus.com> - From 2000-10-14 Geoffrey Keating <geoffk@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-15 Philip Blundell <philb@gnu.org> +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> + + * bfd/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> - From 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. - From 2000-09-03 Philip Blundell <philb@gnu.org> +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. - From 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-09-02 H.J. Lu <hjl@gnu.org> - From 2000-05-22 H.J. Lu <hjl@gnu.org> - * elflink.h (elf_link_output_extsym): Clear the visibility - field for symbols not defined locally. + * 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. - From 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-09-02 Jason Eckhardt <jle@cygnus.com> -2000-10-16 Philip Blundell <pb@futuretv.com> + * elf32-i860.c (bfd_elf32_bfd_is_local_label_name): Define macro. + (elf32_i860_is_local_label_name): New function and prototype. - * configure.in: Set version to 2.10.1. +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-24 H.J. Lu <hjl@gnu.org> +2000-09-02 Daniel Berlin <dberlin@redhat.com> - From 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. + * elf.c (_bfd_elf_make_section_from_shdr): Add + .gnu.linkobce.wi. to the list of debug section names. -2000-09-06 Philip Blundell <philb@gnu.org> +2000-09-02 Nick Clifton <nickc@redhat.com> - Merge from mainline: - - 2000-05-31 Ulrich Drepper <drepper@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. - * 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-09-01 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com> -2000-09-06 Philip Blundell <philb@gnu.org> + * 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. - * config.bfd (arm*-*-uclinux*): New target. - (armeb-*-elf, arm*b-*-linux-gnu*): Likewise. +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-04-14 Matthew Green <mrg@cygnus.com> - - * config.bfd: Add NetBSD/sparc64 support. +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 (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-05-31 Mark Kettenis <kettenis@gnu.org> +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> - Add support for FreeBSD/Alpha. - * configure.in: Add alpha*-*-freebsd* entry to prevent including - OSF core file support. * 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 Nick Clifton <nickc@cygnus.com> + + * opintl.h (_(String)): Explain why dgettext is used instead + of gettext. + +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. + * 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. @@ -180,18 +2891,150 @@ * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777. -2000-05-23 Philip Blundell <pb@futuretv.com> +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. - * configure.in: Set version to 2.10. +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. -Sat Jul 3 10:35:19 CDT 1999 Joel Sherrill <joel@OARcorp.com> +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. - * config.bfd (sparc-rtemself): Added. - (sparc-rtemsaout): Added as alternate name for current sparc-rtems. - (sparc-rtems): Switched to ELF from a.out - (i386-rtemscoff): Added as alternate name for current i386-rtems. - (i386-rtems): Switched to ELF. + * 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> @@ -222,6 +3065,40 @@ Sat Jul 3 10:35:19 CDT 1999 Joel Sherrill <joel@OARcorp.com> (_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> * bfd/coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add entry for @@ -233,6 +3110,109 @@ Sat Jul 3 10:35:19 CDT 1999 Joel Sherrill <joel@OARcorp.com> * 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. @@ -241,12 +3221,286 @@ Sat Jul 3 10:35:19 CDT 1999 Joel Sherrill <joel@OARcorp.com> * 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. @@ -257,6 +3511,117 @@ Sat Jul 3 10:35:19 CDT 1999 Joel Sherrill <joel@OARcorp.com> 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. @@ -270,6 +3635,13 @@ Sat Jul 3 10:35:19 CDT 1999 Joel Sherrill <joel@OARcorp.com> 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 @@ -281,6 +3653,23 @@ Sat Jul 3 10:35:19 CDT 1999 Joel Sherrill <joel@OARcorp.com> 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 @@ -352,7 +3741,7 @@ Wed Mar 30 15:28:00 2000 Donald Lindsay <dlindsay@cygnus.com> 2000-03-11 Alan Modra <alan@linuxcare.com.au> - * ieee.c (ieee_archive_p): Return bfd_error_wrong_format on + * 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. @@ -462,7 +3851,7 @@ Wed Mar 30 15:28:00 2000 Donald Lindsay <dlindsay@cygnus.com> 'srelgot'. * elf32-mcore.c (mcore_elf_relocate_section): Initialise - 'oldinst'. + 'oldinst'. * elf32-mips.c: Add ATTRIBUTE_UNUSED to unused function parameters. @@ -473,13 +3862,13 @@ Wed Mar 30 15:28:00 2000 Donald Lindsay <dlindsay@cygnus.com> * 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. + * peicode.h (pe_ILF_build_a_bfd): Initialise id6. 2000-03-01 H.J. Lu <hjl@gnu.org> @@ -538,7 +3927,7 @@ Wed Mar 30 15:28:00 2000 Donald Lindsay <dlindsay@cygnus.com> * configure: regenerate. * config.bfd: Add support for arm-wince, mips-pe and sh-pe - targets. + targets. * targets.c: Add mips and sh pe vectors. @@ -613,7 +4002,7 @@ Fri Feb 25 18:39:26 2000 Rodney Brown (RodneyBrown@pmsc.com) 2000-02-24 Catherine Moore <clm@cygnus.com> * som.c (som_misc_symbol_info): Add field - secondary_def. + secondary_def. (som_bfd_derive_misc_symbol_info): Initialize secondary_def. (som_build_and_write_symbol_table): Keep track @@ -627,7 +4016,7 @@ Fri Feb 25 18:39:26 2000 Rodney Brown (RodneyBrown@pmsc.com) * 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. @@ -808,7 +4197,7 @@ Thu Feb 17 00:04:48 2000 J"orn Rennecke <amylaar@cygnus.co.uk> 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 + * 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. @@ -846,7 +4235,7 @@ Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) * (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 + * (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. @@ -857,7 +4246,7 @@ Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) 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> @@ -874,12 +4263,12 @@ Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) (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 @@ -918,8 +4307,8 @@ Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) * coffcode.h: Use bfd_coff_xxx instead of the macro XXX (where xxx = scnhsz, filhsz, relsz, aoutsz, etc) - * coffswap.h: Ditto. - + * coffswap.h: Ditto. + 2000-01-13 Nick Clifton <nickc@cygnus.com> * elf32-arm.h (elf32_thumb_to_arm_stub): Fix offset in branch to @@ -940,27 +4329,27 @@ Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) * 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 funcitoning DLLs. + dlltool to build functioning DLLs. 2000-01-10 Philip Blundell <pb@futuretv.com> @@ -969,14 +4358,14 @@ Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) 2000-01-10 Egor Duda <deo@logos-m.ru> - * config.bfd: Include elf32_i386 vector to target list for cygwin + * 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. @@ -988,5594 +4377,7 @@ Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) * elflink.h (elf_link_add_object_symbols): Combine visibilities. * elf.c (bfd_elf_print_symbol): Interpret st_other as visibility. -1999-12-29 Richard Henderson <rth@cygnus.com> - - * elflink.h (bfd_elf,size_dynamic_sections): Don't export all - if no dynamic sections created. - -1999-12-27 Nick Clifton <nickc@cygnus.com> - - * peicode.h (pe_bfd_object_p): Only define for PE format - targets. - -1999-12-17 Nick Clifton <nickc@cygnus.com> - - * coff-i386.c (i3coff_object_p): Delete. - (i386coff_vec): Replace reference to i3coff_object_p with a - reference to coff_object_p. - - * coff-mcore.c (pe_object_p): Delete. - - * peicode.h (pe_bfd_object_p): New function: Detect the - presence of a PE format COFF object file. Also detect and - warn about the presence of LINK6 format Image Library Format - object files. - -1999-12-16 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (NUM_ELEM): New macro. - (NUM_RELOCS): New macro: The number of known ARM relocs. - (RTYPE2HOWTO): Return NULL if the reloc type is out of range. - (coff_arm_rtype_to_howto): Return NULL if the reloc type is out - of range. - (bfd_arm_process_before_allocation): Produce a warning message if - an out of range symbol index is encountered. - -1999-12-14 Nick Clifton <nickc@cygnus.com> - - * elflink.h (is_global_symbol_definition): New Function: Return - true iff the symbol is being given a global definition in this - bfd. - (elf_link_is_defined_archive_symbol): Do not bother processing - symbols for an archive element that has already been included - in the link. - Use is_global_symbol_definition(). - -1999-12-09 Andrew Cagney <cagney@cygnus.com> - - * config.bfd: Add support for sparc-*-netbsdelf* and - sparc-*-netbsdaout*. - -1999-12-13 Nick Clifton <nickc@cygnus.com> - - * elflink.h (elf_link_is_defined_archive_symbol): Check to see - if the symbol is in the common section. - -1999-12-10 Nick Clifton <nickc@cygnus.com> - - * elflink.h (elf_link_is_defined_archive_symbol): New - function: Decide if a symbol, in an archive map is there - because it is defined in the archive element, or because it is - just another common declaration of it. - (elf_link_add_archive_symbols): Use - elf_link_is_defined_archive_symbol to decide if an archive - element contain a reference to a common symbol should be - linked in or not. - -1999-12-10 Nick Clifton <nickc@cygnus.com> - - * elflink.h: Revert previous patch. - * targets.c: Revert previous patch. - * libbfd-in2.h: Revert previous patch. - * libbfd.h: Revert previous patch. - * elfxx-target.h: Revert previous patch. - * archive.c: Revert previous patch. - * aout-target.h: Revert previous patch. - * aout-tic30.h: Revert previous patch. - * bfd.c: Revert previous patch. - * coff-alpha.c: Revert previous patch. - * coff-rs6000.c: Revert previous patch. - * elf64-mips.c: Revert previous patch. - * ieee.c: Revert previous patch. - * libecoff.h: Revert previous patch. - * oasys.c: Revert previous patch. - * som.c: Revert previous patch. - * vms.c: Revert previous patch. - -1999-12-09 Nick Clifton <nickc@cygnus.com> - - * elflink.h (elf_link_add_archive_symbols): Add an archive - element even if contains a symbol which is currently only - considered to be a common. - - * targets.c (struct bfd_target): Add new field - _bfd_allow_commons_in_armap. - * bfd-in2.h:Regenerate. - - * libbfd-in2.h (_bfd_noarchive_allow_commons_in_armap): - Define. - (_bfd_archive_bsd_allow_commons_in_armap): Define. - * libbfd.h: Regenerate. - - * elfxx-target.h: If using COFF archive map, override - definition of allow_commons_in_armap and replace with - bfd_false. - - * archive.c (bfd_compute_and_write_armap): Do not place common - symbols into the archive map unless _bfd_allow_commons_in_armap - returns true. - - * aout-target.h (MY_allow_commons_in_armap): Define. - * aout-tic30.h (MY_allow_commons_in_armap): Define. - * bfd.c (bfd_allow_commons_in_armap): Define. - * coff-alpha.h (alpha_ecoff_allow_commons_in_armap): Define. - * coff-rs6000.h (xcoff_allow_commons_in_armap): Define. - * elf64-mips.c (bfd_elf64_allow_commons_in_armap): Define. - * ieee.c (ieee_ecoff_allow_commons_in_armap): Define. - * libecoff.h (_bfd_ecoff_allow_commons_in_armap): Define. - * oasys.c (oasys_allow_commons_in_armap): Define. - * som.c (som_allow_commons_in_armap): Define. - * vms.c (vms_allow_commons_in_armap): Define. - -1999-12-07 Jim Blandy <jimb@cygnus.com> - - Add support for SSE registers in ELF core files. - * elf.c (elfcore_make_note_pseudosection): New function. - (elfcore_grok_prfpreg): Use it. - (elfcore_grok_prxfpreg): New function. - (elfcore_grok_note): Recognize Linux NT_PRXFPREG notes. - -1999-12-03 Ian Lance Taylor <ian@zembu.com> - - * elf32-mips.c (mips_elf_calculate_relocation): Divide R_MIPS_PC16 - value by 4 before storing it back in the field. From - Koundinya. K <kk@ddeorg.soft.net>. - -Tue Nov 30 22:41:14 1999 Jeffrey A Law (law@cygnus.com) - - * archures.c (bfd_mach_am33): Define. - * bfd-in2.h: Rebuilt. - * cpu-m10300.c (bfd_am33_arch): Add to the mn103 architecture list - * elf-m10300.c (mn10300_elf_relax_section): Handle am33 instructions. - (compute_function_info): Handle additional registers saved by - movm on the am33. - (elf_mn10300_mach): Handle E_MN10300_MACH_AM33. - (_bfd_mn10300_elf_final_write_processing): Handle bfd_mach_am33. - -1999-11-29 Jim Blandy <jimb@cygnus.com> - - * elf.c (bfd_get_elf_phdrs, bfd_get_elf_phdr_upper_bound): New - functions. - * bfd-in2.h (bfd_get_elf_phdrs, bfd_get_elf_phdr_upper_bound): New - declarations. - -1999-11-27 Michael Meissner <meissner@cygnus.com> - - * reloc.c (BFD_RELOC_ALPHA_USER_LITERAL): New relocation for - internal use within gas for alpha explicit relocations. - (BFD_RELOC_ALPHA_USER_LITUSE_BASE): Ditto. - (BFD_RELOC_ALPHA_USER_LITUSE_BYTOFF): Ditto. - (BFD_RELOC_ALPHA_USER_LITUSE_JSR): Ditto. - (BFD_RELOC_ALPHA_USER_GPDISP): Ditto. - (BFD_RELOC_ALPHA_USER_GPRELHIGH): Ditto. - (BFD_RELOC_ALPHA_USER_GPRELLOW): Ditto. - - * elf64-alpha.c (elf64_alpha_reloc_map): Add mappings for - BFD_RELOC_ALPHA_USER_*. - - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - -1999-11-26 Fred Fish <fnf@cygnus.com> - - * elf.c (elfcore_read_notes): Add prototype for static function. - (_bfd_elf_make_section_from_phdr): Renamed from bfd_section_from_phdr. - (bfd_section_from_phdr): Replacement function that calls - _bfd_elf_make_section_from_phdr for generic segment types and - backend fucntion pointed to by elf_backend_section_from_phdr for - backend specific segment types. - (_bfd_elfcore_section_from_phdr): Remove call to elfcore_read_notes, - now called by _bfd_elf_make_section_from_phdr. Note that this func - is now just a stub between the caller and bfd_section_from_phdr. - - * elf-bfd.h (struct elf_backend_data): Add new function pointer - elf_backend_section_from_phdr. - (elf_backend_section_from_phdr): Add prototype. - - * elfxx-target.h (elf_backend_section_from_phdr): Define default. - (elfNN_bed): Add elf_backend_section_from_phdr. - -1999-11-25 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (bfd_arm_get_bfd_for_interworking): Add - SEC_CODE and SEC_READONLY flags to glue sections. - - * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Add - SEC_CODE and SEC_READONLY flags to glue sections. - -1999-11-20 Nick Clifton <nickc@cygnus.com> - - * coff-mcore.c (coff_mcore_relocate_section): Fix typo in previous - delta. - -1999-11-19 Catherine Moore <clm@cygnus.com> - - * elf32-m68k.c (elf_cpu32_plt0_entry): Fix encoding. - (elf_cpu32_plt_entry): Likewise. - -1999-11-18 Nick Clifton <nickc@cygnus.com> - - * coff-mcore.c (coff_mcore_rtype_to_howto): Special case handling - for RVA relocs. - (coff_mcore_relocate_section): Initialise addend to 0. - Special case processing of RVA reloc. - -1999-11-17 Richard Henderson <rth@cygnus.com> - - * elf-bfd.h (struct elf_backend_data): Reorder collect and - type_change_ok; add sign_extend_vma. - * elf32-mips.c (elf_backend_sign_extend_vma): Define. - * elfcode.h (elf_swap_symbol_in): Mind be->sign_extend_vma. - (elf_swap_shdr_in, elf_swap_phdr_in): Likewise. - * elfxx-target.h (elf_backend_sign_extend_vma): Default. - (elfNN_bed): Follow struture changes. - -1999-11-09 Ian Lance Taylor <ian@zembu.com> - - * libbfd.c (bfd_read): Check result of read against desired result - using !=, not <. - (_bfd_generic_get_section_contents): Set bfd_error if the seek is - invalid compared to the section size. - - * ieee.c (ieee_slurp_debug): Get the length of the debug - information right if there is no data part. - -Tue Nov 2 01:44:41 1999 Jeffrey A Law (law@cygnus.com) - - * som.c (som_fixup_formats): Improve handling of R_AUX_UNWIND, - R_LINETAB, R_LINETAB_ESC, and R_COMMENT. - -1999-10-28 Ian Lance Taylor <ian@zembu.com> - - * elflink.h (elf_bfd_final_link): Make last_local signed. - -1999-10-27 Ian Lance Taylor <ian@zembu.com> - - * stabs.c (_bfd_link_section_stabs): Make sure .stabstr section - starts with a zero. - -Sat Oct 23 17:36:12 1999 Andrew Cagney <cagney@b1.cygnus.com> - - * archures.c: Add definitions bfd_mach_d10v, bfd_mach_d10v_ts2 and - bfd_mach_d10v_ts3. - * cpu-d10v.c (d10v_ts3_info, d10v_ts2_info): Add. - * bfd-in2.h: Regenerate. - -1999-10-15 Andrew Haley <aph@cygnus.com> - - * dwarf1.c (parse_die): Fail to parse a die if its length is zero. - -Sun Oct 17 17:19:00 1999 Jeffrey A Law (law@cygnus.com) - - * libhppa.h (bfd_hppa_insn2fmt): Change to return an int. - -1999-10-08 Ian Lance Taylor <ian@zembu.com> - - * elflink.h (elf_merge_symbol): When overriding a weak symbol with - a defined symbol in a shared library, clear the DEF_DYNAMIC flag - too. - -Fri Oct 8 13:03:45 1999 Geoffrey Keating <geoffk@cygnus.com> - - * elf32-mips.c (mips_elf_calculate_relocation): R_MIPS_LITERAL - relocs also need the GP value. - (_bfd_mips_elf_relocate_section): Handle unpaired LO16 relocs - properly. Handle sign-extension for R_MIPS_64 correctly. Correct - the GP value for R_MIPS_LITERAL relocs too. Handle - R_MIPS_64 relocs properly on big-endian MIPS. - (mips_elf_sign_extend): Behave properly with 'long long'. - (mips_elf_highest): Correct typo. - -Mon Oct 4 17:49:45 1999 Nick Clifton <nickc@cygnus.com> - - * cpu-m32r.c (arch_info_struct): New static global. - (bfd_m32r_arch): Refer to it. - * elf32-m32r.c (m32r_elf_object_p): Recognize E_M32RX_ARCH. - (m32r_elf_print_private_bfd_data): Ditto. - (m32r_elf_final_write_processing): Handle bfd_mach_m32rx. - * archures.c (bfd_mach_m32rx): Define it. - * bfd-in2.h: Rebuild. - -1999-09-28 Fred Fish <fnf@cygnus.com> - - * targets.c (cisco_core_vec): Replaced with two new vecs ... - (cisco_core_big_vec): Add new bigendian vec. - (cisco_core_little_vec): Add new little endian vec. - - * cisco-core.c (CRASH_INFO): Fixed offset replaced with ... - (crash_info_locs): Add array of possible offsets. - (MASK_ADDR): Mask to apply to crash info offset. - (crashinfo_external): Add textbase, database, bssbase and - turn into a typedef. - (cisco_core_file_validate): Renamed from cisco_core_file_p. - Many small changes to account for additional hardware versions. - Pick a reasonable size for ".reg" section. Add a ".crash" - section to allow access to crashinfo_external struct. - (cisco_core_file_p): New version of this function that - iterates over crash_info_locs, calling cisco_core_file_validate. - (cisco_core_vec): Old big endian only vec replaced with ... - (cisco_core_big_vec): Add big endian version. - (cisco_core_little_vec): Add little endian version. - - * configure.in (cisco_core_vec): Split to two new vectors ... - (cisco_core_big_vec): New target vector. - (cisco_core_little_vec): New target vector. - * configure: Regenerate. - * config.bfd (targ): For m68*-*-aout* targ, change cisco_core_vec - to cisco_core_big_vec in targ_selvecs. - -1999-09-28 Geoffrey Keating <geoffk@cygnus.com> - - * elf32-mips.c (mips_elf_relocate_hi16): Unused, delete. - (mips_elf_relocate_got_local): Unused, delete. - (mips_elf_relocate_global_got): Unused, delete. - -1999-09-24 Fred Fish <fnf@cygnus.com> - - * elf.c (bfd_section_from_phdr): Add typename variable. Use p_type - to initialize it to something meaningful. Then use it to generate - more useful segment names. - -Sun Sep 19 12:16:47 1999 Jeffrey A Law (law@cygnus.com) - - * som.c (NO_PCREL_MODES): Define if the system does not define - R_SHORT_PCREL_MODE. - (hppa_som_gen_reloc_type): Handle both short and long pcrel branches. - (som_write_fixups): Eliminate redundant pcrel mode relocs. Handle - R_LONG_PCREL_MODE and R_SHORT_PCREL_MODE - * libhppa.h (dis_assemble_22): New function. - (bfd_hppa_insn2fmt): Handle long branch. - - * libhppa.h (bfd_hppa_insn2fmt): Decode and handle formats found - in PA2.0. - -1999-09-17 Alan Modra <alan@spri.levels.unisa.edu.au> - - * coff-i386.c (coff_i386_reloc_type_lookup): Support BFD_RELOC_16, - BFD_RELOC_16_PCREL, BFD_RELOC_8, BFD_RELOC_8_PCREL relocs. - (reloc_howto_type howto_table): Tidy comments and whitespace. - -1999-09-17 Nick Clifton <nickc@cygnus.com> - - * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Undo - previous delta. Set sec->gc_mark instead. - -Thu Sep 16 11:21:13 1999 Catherine Moore <clm@cygnus.com> - - * elf32-m68k.c (elf_cpu32_plt0_entry): Use a1 instead of a0. - (elf_cpu32_plt_entry): Likewise. - -Thu Sep 16 10:48:17 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_final_write_processing): Turn on TRAPNIL. - - * elf-hppa.h (elf_hppa_final_link): If unable to find __gp in the - symbol table, then just compute a suitable value (but do not - create a __gp symbol). - - * elf-hppa.h (elf_hppa_relocate_section): Allow undefined - symbols when building shared libraries. - (elf_hppa_final_link_relocate): Correct handling of PCREL - relocations against undefined symbols. - -1999-09-16 Nick Clifton <nickc@cygnus.com> - - * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Mark - interworking sections as linker created so that they will not - be removed by garbage collection. - -Wed Sep 15 02:31:57 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_final_link): Revamp __gp handling. - (elf_hppa_final_link_relocate): Consistently create an absolute - address, then subtract out the value of __gp. - -1999-09-14 Michael Meissner <meissner@cygnus.com> - - * configure.in (Canonicalization of target names): Remove adding - ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14 - generates $ac_config_sub with a ${CONFIG_SHELL} already. - * configure: Regenerate. - -1999-09-14 Nick Clifton <nickc@cygnus.com> - - * elf32-m32r.c (ELF_MAXPAGESIZE): Change to 0x1 (at request of - Mitsubishi). - -Mon Sep 13 20:01:47 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_record_segment_addrs): New function. - (elf_hppa_final_link): Initialize text_segment_base and - data_segment_base. - (elf_hppa_final_link_relocate): Handle SEGREL relocations. - - * elf-hppa.h (elf_hppa_final_link): Remove unused variables. - (elf_hppa_final_link_relocate): Likewise. - (elf_hppa_relocate_insn): Likewise. - (elf_hppa_relocate_section): Initialize HOWTO. - -1999-09-13 Donn Terry <donn@interix.com> - - * coffcode.h (styp_to_sec_flags): Further refinement of COMDAT - handling to support both GNU and MS objects. - - * coffcode.h (coff_write_object_contents): Don't check reloc_count - when determining whether to set F_RELFLG. - -1999-09-13 Philip Blundell <pb@nexus.co.uk> - - * elf32-arm.h (elf32_arm_final_link_relocate): Don't range-check - PC24 relocs if the target is an undefined weak symbol. - (arm_add_to_rel): Fix compiler warning. - (elf32_arm_plt0_entry): Correct comments. - -1999-09-13 Alan Modra <alan@spri.levels.unisa.edu.au> - - * elfcode.h (write_relocs): Check for the_bfd NULL when handling - an absolute symbol in REL relocs. - -Sun Sep 12 23:47:58 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_final_link_relocate): Handle SECREL32. - Stub SEGREL32. Return an error for any relocation not handled. - -1999-09-12 Ian Lance Taylor <ian@zembu.com> - - * cofflink.c (coff_link_add_symbols): Look for special MSVC string - constant symbols, and avoid multiple definition errors on them. - -1999-09-12 Donn Terry <donn@interix.com> - - * libbfd.c (bfd_log2): Rewrite to avoid infinite loop if most - significant bit is set. - -1999-09-11 Ian Lance Taylor <ian@zembu.com> - - * coff-ppc.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define. - - * elfcode.h (write_relocs): Handle an absolute symbol in REL - relocs as we do for RELA relocs. - -1999-09-11 Donn Terry <donn@interix.com> - - * libpei.h (_bfd_pei_final_link_postscript): Declare. - (coff_final_link_postscript): Define. - * peigen.c (_bfd_pei_swap_aouthdr_out): Don't set value for data - directory entries here. - (_bfd_pei_final_link_postscript): New function. - - * peigen.c (_bfd_pei_swap_scnhdr_out): Remove code which sets - section flags based on the section name. - - * peicode.h (coff_swap_scnhdr_in): If COFF_IMAGE_WITH_PE, the - get the overflow of the s_nlnno field from the s_nreloc field. - * peigen.c (_bfd_pei_swap_scnhdr_out): If doing a final link, swap - the s_nlnno overflow of the .text section into the s_nreloc - field. - - * peigen.c (add_data_entry): Declare. - (pei_swap_aouthdr_out): Get image size right. Set linker version - more intuitively. - (pei_swap_scnhdr_out): Test for UNINIT section, not .bss. - (pe_print_idata): Code cleanup, print more info, get rid of (now) - extraneous ImageBase. - (pe_print_edata): Likewise. - (pe_print_pdata): Likewise. Print exception entries. - (pe_print_reloc): Likewise. Print MIPS_JMPADDR. - (tbl): Make const, add "UNKNOWN". - (_bfd_pe_print_private_bfd_data_common): Print timestamp. - (_bfd_pe_bfd_copy_private_bfd_data_common): Don't copy deleted - section data directory. - (_bfd_pe_bfd_copy_private_section_data): Copy pe_flags. - - * libpei.h (_bfd_pe_bfd_get_symbol_info): Declare. - * peigen.c (_bfd_pe_bfd_get_symbol_info): New function. - * peicode.h (coff_get_symbol_info): Define. - - * config.bfd (i[3456]86-*-interix*): Set targ_cflags to - -DSTRICT_PE_FORMAT. - * coffcode.h (styp_to_sec_flags): Check STRICT_PE_FORMAT rather - than __INTERIX. - (coff_classify_symbol): Re-revert 1999-08-08 patch if - STRICT_PE_FORMAT. - - * libpei.h: New file, broken out of peicode.h. - * peigen.c: New file, broken out of peicode.h. - * peicode.h: A bunch of code moved out to libpei.h and peigen.c. - * configure.in: Add peigen.lo to list of files required for each - PE target. - * Makefile.am: Rebuild dependencies. - (BFD32_BACKENDS): Add peigen.lo. - (BFD32_BACKENDS_CFILES): Add peigen.c. - (SOURCE_HFILES): Add libpei.h. - * configure, Makefile.in: Rebuild. - - * peicode.h (coff_swap_scnhdr_in): Don't check for a special - section name of _BSS; check IMAGE_SCN_CNT_UNINITIALIZED_DATA - instead. Don't clear the s_paddr field for an uninitialized data - section. - - * coffcode.h (coff_mkobject_hook): Set timestamp field in - coff_data_type to f_timdat. - * peicode.h (pe_mkobject_hook): Likewise. - - * peicode.h (coff_swap_filehdr_in): Check the NT executable magic - number if COFF_IMAGE_WITH_PE. - - * coffcode.h (coff_mkobject_hook): If COFF_WITH_PE, set HAS_DEBUG - to the reverse of IMAGE_FILE_DEBUG_STRIPPED. - (coff_write_object_contents): Set IMAGE_FILE_DEBUG_STRIPPED if - there is no SEC_DEBUGGING section. - * peicode.h (pe_mkobject_hook): Set HAS_DEBUG to the reverse of - IMAGE_FILE_DEBUG_STRIPPED. - - * pe-i386.c (COFF_LONG_FILENAMES): Define. - (COFF_SECTION_ALIGNMENT_ENTRIES): Define. - * pei-i386.c (COFF_LONG_FILENAMES): Define. - (COFF_SECTION_ALIGNMENT_ENTRIES): Define. - - * coffswap.h (IMAGE_BASE): Don't define. - * pei-arm.c (IMAGE_BASE): Don't define. - * pei-i386.c (IMAGE_BASE): Don't define. - * pei-mcore.c (IMAGE_BASE): Don't define. - * pei-ppc.c (IMAGE_BASE): Don't define. - - * cofflink.c (_bfd_coff_link_input_bfd): When writing out a - symbol, switch on the class when determining whether to modify the - value. For PE, don't modify the value of a C_FCN symbol not named - .bf. - - * libbfd-in.h (_bfd_abort): Declare. - (abort): Define. - * bfd.c (_bfd_abort): New function. - * libbfd.h: Rebuild. - - * coffcode.h (coff_set_alignment_hook): Delete POWERPC_LE_PE - special handling. - - * cofflink.c (_bfd_coff_link_input_bfd): If a symbol is stripped, - don't write out the associated line numbers. - - * cofflink.c (_bfd_coff_write_global_sym): Handle section symbol - aux entries. - - * cofflink.c (coff_link_add_symbols): Don't warn about symbol type - changes when the base type is unknown. - - * coffgen.c (coff_print_symbol): Fix printing of aux record for - function symbols. - - * syms.c (BSF_DEBUGGING_RELOC): Define. - * coffcode.h (coff_slurp_symbol_table): If PE, set BSF_DEBUGGING - for C_FCN/C_EFCN symbols, and set BSF_DEBUGGING_RELOC for such - symbols named .bf. - * coffgen.c (fixup_symbol_value): Relocate a symbol which has - BSF_DEBUGGING_RELOC set. - * bfd-in2.h: Rebuild. - -1999-09-10 Ian Lance Taylor <ian@zembu.com> - - * ecoff.c (bfd_debug_section): Update initialization for new - comdat_info field. - (_bfd_ecoff_styp_to_sec_flags): Add section parameter. - * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Update declaration. - -1999-09-10 H.J. Lu <hjl@gnu.org> - - * coff-alpha.c (alpha_ecoff_backend_data): Initialize the new - _bfd_filnmlen field. - * coff-mips.c (mips_ecoff_backend_data): Likewise. - -Fri Sep 10 00:35:14 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_final_link_relocate): Create .opd entries - for FPTR relocs involving local symbols. - - * elf-hppa.h (elf_hppa_final_link_relocate): Get the right - value for the stub address in a call through a stub. - Install the value for a local symbol directly into the DLT - instead of generating a reloc. Correctly handle FPTR64 relocs. - - * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): New function. - (elf_hppa_remark_useless_dynamic_symbols): Similarly. - (elf_hppa_final_link): Call them. - -1999-09-10 Ian Lance Taylor <ian@zembu.com> - - * elflink.h (elf_fix_symbol_flags): Move weakdef handling here... - (elf_adjust_dynamic_symbol): ...from here. - -Wed Sep 8 17:56:11 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_howto_table); There is no DIR64WR, DIR64DR - relocation, remove them. SECREL64->LTOFF16WF. - (elf_hppa_final_link_relocate): Handle LTOFF* relocations. Handle - DIR* relocations. - (elf_hppa_relocate_insn): Similarly. - - * elf-hppa.h (elf_hppa_final_link_relocate): Handle PLTOFF* relocs. - (elf_hppa_relocate_insn): Similarly. - - * elf-hppa.h (elf_hppa_final_link_relocate): Handle DPREL* and - GPREL* relocations. - (elf_hppa_relocate_insn): Similarly. - - * elf-hppa.h (elf_hppa_link_final_relocate): Fix typos. - Handle LTOFF_TP* relocs. - (elf_hppa_relocate_insn): Similarly. - - * elf-hppa.h (elf_hppa_final_link_relocate): Handle PCREL* relocs. - Consistently deal with addends. Handle DLTIND14F and DLTREL14F. - (elf_hppa_relocate_insn): Handle PCREL* relocs. - - * elf-hppa.h (elf_hppa_final_link_relocate): Handle LT_OFF_FPTR*, - DIR32, DIR64 and FPTR64 relocations. - (elf_hppa_relocate_insn): Similarly. - - * elf-hppa.h (elf_hppa_final_link): Set the value of __gp to the - address of the .PARISC.global section. - (elf_hppa_relocate_section): Lookup and pass the PA64 hash - table entry elf_hppa_final_link_relocate. Do not give a warning - for a reloc against an external symbol if it has a PA64 hash - table entry. - (elf_hppa_final_link_relocate): Significantly rework. Handle - DLTIND relocations. Compute the final value of the relocation - before passing the value of elf_hppa_relocate_insn. - (elf_hppa_relocate_insn): Revamp to handle just bit tiwiddling - relocation support. Handle DLTIND relocation requests just like - DLTREL relocation requests. Simplify branch handling. - -1999-09-08 Ulrich Drepper <drepper@cygnus.com> - - * elf-hppa.h (elf_hppa_relocate_section): Catch problems with - non-allocated section as done in i386 version. - (elf_hppa_final_link_relocate): Uncomment R_PARISC_14F in switch - statement since this is no know relocation. - -Tue Sep 7 17:25:12 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14F - relocs. - (elf_hppa_relocate_insn): Similarly. - - * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14WR and - DLTREL14WD relocs. - (elf_hppa_relocate_insn): Similarly. - - * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14R and - DLTREL21L relocs. Pass the output bfd to elf_hppa_relocate_insn. - Pass the relocate type rather than the insn format to - elf_hppa_relocate_insn. - (elf_hppa_relocate_insn): Make switch dependent on relocation type - rather than the opcode. Handle DLTREL21L and DLTREL14R relocs. - -1999-09-07 Ian Lance Taylor <ian@zembu.com> - - * coffcode.h (bfd_coff_backend_data): Add _bfd_filnmlen field. - (bfd_coff_filnmlen): Define. - (bfd_coff_std_swap_table): Initialize new field. - * coffgen.c (coff_fix_symbol_name): Use bfd_coff_filnmlen rather - than FILNMLEN. - (coff_write_symbols): Likewise. - (coff_get_normalized_symtab): Likewise. - * coff-sh.c (bfd_coff_small_swap_table): Initialize new field. - * libcoff.h: Rebuild. - -1999-09-06 Donn Terry <donn@interix.com> - - * coffcode.h (sort_by_secaddr): New static function if - COFF_IMAGE_WITH_PE. - (coff_compute_section_file_positions): If COFF_IMAGE_WITH_PE, sort - sections by VMA when assigning target_index values. Always set - virt_size. - - * libcoff-in.h (struct pei_section_tdata): Add pe_flags field. - * coffcode.h (coff_set_alignment_hook) [COFF_WITH_PE version]: Set - pe_flags field. - * libcoff.h: Rebuild. - - * coffcode.h (coff_set_custom_section_alignment): Add const to - declaration to match definition. - (coff_write_object_contents): Don't set F_AR32W(R)? if - COFF_WITH_PE. - - * coff-i386.c (in_reloc_p): Add declaration. - (i386coff_vec): Simplify initialization of - application_section_flags. - - * coffcode.h (sec_to_styp_flags): Write separate COFF_WITH_PE - version. Move COFF_WITH_PE specific code to new version. - (stype_to_sec_flags): Likewise. Add section parameter. - * coffgen.c (make_a_section_from_file): Set target_index before - calling styp_to_sec_flags. Pass section to styp_to_sec_flags. - * libcoff.h: Rebuild. - - * syms.c (stt): Add some PE/PEI section names. - (bfd_decode_symclass): Return 'w', not 'U', for a weak undefined - symbol. - (bfd_symbol_info): Check for 'w'. - - * section.c (struct bfd_comdat_info): Define. - (asection): Add comdat field. - (STD_SECTION): Initialize comdat field. - (bfd_make_section_anyway): Likewise. - * bfd-in2.h: Rebuild. - -1999-09-06 Andreas Schwab <schwab@suse.de> - - * elflink.h (elf_link_add_object_symbols): Copy NON_GOT_REF flag - to version symbols. - -1999-09-06 Nick Clifton <nickc@cygnus.com> - - * elflink.h (elf_gc_record_vtentry): Use bfd_zmalloc and - bfd_realloc instead of calloc and realloc. - -1999-09-04 Steve Chamberlain <sac@pobox.com> - - * cpu-pj.c: New file. - * elf32-pj.c: New file. - * config.bfd (pj*): New cpu. - (pj-*-*, pjl-*-*): New targets. - * configure.in (bfd_elf32_pj_vec): New target vector. - (bfd_elf32_pjl_vec): New target vector. - * archures.c (bfd_arch_pj): Define. - * elf.c (prep_headers): Handle bfd_arch_pj. - * reloc.c: Define BFD_RELOC_PJ_* relocations. - * targets.c (bfd_elf32_pj_vec, bfd_elf32_pjl_vec): Declare and add - to target vector list. - * Makefile.am: Rebuild dependencies. - (ALL_MACHINES): Add cpu-pj.lo. - (ALL_MACHINES_CFILES): Add cpu-pj.c. - (BFD32_BACKENDS): Add elf32-pj.lo. - (BFD32_BACKENDS_CFILES): Add elf32-pj.c. - * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild. - -1999-09-04 Ian Lance Taylor <ian@zembu.com> - - * elf-bfd.h (ELF_LINK_NON_GOT_REF): Define. - * elflink.h (elf_adjust_dynamic_symbol): Copy REF_REGULAR_NONWEAK - and NON_GOT_REF from weak defined symbol to real symbol. - * elf32-i386.c (elf_i386_check_relocs): Set NON_GOT_REF. - (elf_i386_adjust_dynamic_symbol): If NON_GOT_REF is not set, don't - create a COPY reloc. - * elf32-sparc.c (elf32_sparc_check_relocs): Set NON_GOT_REF. - (elf32_sparc_adjust_dynamic_symbol): If NON_GOT_REF is not set, - don't create a COPY reloc. - -1999-09-03 Ian Lance Taylor <ian@zembu.com> - - * elflink.h (elf_bfd_final_link): When counting relocations, don't - count those in sections we are not including in the link. - -Thu Sep 2 17:41:20 1999 Jeffrey A Law (law@cygnus.com) - - * elflink.h (elf_link_add_object_symbols): Work around bogus SH_LINK - field in hpux11 shared libraries. - -1999-09-02 Nick Clifton <nickc@cygnus.com> - - * elflink.h (elf_gc_record_vtentry): Fix memory leak. - -Wed Sep 1 13:34:29 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_add_symbol_hook): New function. - (elf_hppa_final_link, elf_hppa_relocate_section): Likewise. - (elf_hppa_final_link_relocate, elf_hppa_relocate_insn): Likewise. - -1999-08-31 Alexandre Petit-Bianco <apbianco@cygnus.com> - - * elflink.h (record_link_assignment): When possible, keep the - original type of the symbol. - -Mon Aug 30 15:26:48 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Allow both - R_PARISC_DIR32 and R_PARISC_DIR64 regardless of how the - tools were configured. - * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Declare. - -1999-08-26 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (_bfd_mips_elf_check_relocs): Don't allocate local - GOT entries for GOT16 relocations; they're not required. - -1999-08-24 Nick Clifton <nickc@cygnus.com> - - From a patch submitted by Roland McGrath <roland@baalperazim.frob.com> - - * config.bfd (arm-*-netbsd*): New target. - * configure.in (armnetbsd_vec): New target vector. - * configure: Regenerate - * targets.c (bfd_target_vector): Add &armnetbsd_vec. - - * Makefile.am (BFD32_BACKENDS): Add armnetbsd.lo. - (ALL_MACHINES_CFILES): Add armnetbsd.c. - (armnetbsd.lo): New rule with deps. - * Makefile.in: Regenerate. - - * armnetbsd.c: New file: Definitions specific to arm-netbsd - target. - -Tue Aug 24 00:25:58 1999 Jeffrey A Law (law@cygnus.com) - - * som.c (som_slurp_symbol_table): Fix typo in comment. - -Fri Aug 20 17:01:23 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_fake_sections): Compute section indices - here instead of using elf_section_data... - -1999-08-19 Nick Clifton <nickc@cygnus.com> - - * coff-mcore.c (mcore_emit_base_file_entry): New function: Emit - relocations into the base file. - (coff_mcore_relocate_section): Call mcore_emit_base_file_entry if - we are building a base file. - -1999-08-19 Nick Clifton <nickc@cygnus.com> - - * elf32-arm.h (arm_add_to_rel): New function. Add a value to - a REL style reloc. - (elf32_arm_relocate_section): Use arm_add_to_rel to increment - REL relocs when performing a partial relocation. - -1999-08-18 Donn Terry <donn@interix.com> - - * cofflink.c: Move definitions of N_TMASK, et. al., out of - _bfd_coff_link_input_bfd into top level. - - * coff-i386.c (coff_i386_reloc): Handle R_IMAGEBASE. - (RTYPE2HOWTO): Return NULL if reloc type is out of range. - (coff_i386_rtype_to_howto): Likewise. - * coffcode.h (coff_slurp_symbol_table): Change a -2 to N_DEBUG. - Completely ignore symbols which are all zero. - (dummy_reloc16_estimate): Add return 0. - * cofflink.c (_bfd_coff_link_input_bfd): Rename inner scope - variable copy to name_copy to avoid shadowing outer scope - variable. - * libcoff-in.h (coff_data_type): Change raw_syment_count field - from unsigned int to unsigned long. Add timestamp field. - * libcoff.h: Rebuild. - -1999-08-17 H.J. Lu <hjl@gnu.org> - - * elf32-hppa.c (bfd_elf32_bfd_is_local_label_name): Fix typo in - macro definition. - -1999-08-17 Ian Lance Taylor <ian@zembu.com> - - * elf32-mips.c (_bfd_mips_elf_add_symbol_hook): Set BSF_DYNAMIC - for special section symbols. - * elflink.h (elf_merge_symbol): If we have no old BFD, check - BSF_DYNAMIC on the section symbol to see whether the old BFD is - dynamic. - -1999-08-15 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_calculate_relocation): Fix unfortunate - coincidence of variable names between old and new code. - -1999-08-12 Nick Clifton <nickc@cygnus.com> - - * elf32-arm.h (elf32_arm_to_thumb_stub): Make 'offset' parameter - into a bfd_vma and 'addend' parameter a 'bfd_signed_vma'. - (elf32_thumb_to_arm_stub): Make 'offset' parameter into a bfd_vma - and 'addend' parameter a 'bfd_signed_vma'. - (elf32_arm_final_link_relocate): Do not involve stubs in - R_ARM_THM_PC22 relocs relative to section symbols, they are long - jumps, not function calls. - -1999-08-11 Robin Farine <advanc@dial.eunet.ch> - - * elf32-arm.h (elf32_arm_final_link_relocate): Check for overflow - in R_ARM_PC24 relocs. - -Tue Aug 10 12:48:09 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (elf_hppa_fake_sections): New function. - * elf32-hppa.c (elf_backend_fake_sections): Define. - - * elf-hppa.h (elf_hppa_final_write_processing): Update for - recent changes to the arch_info structure. - - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle - R_HPPA_SEGBASE and R_HPPA_SEGREL32. - * cpu-hppa.c (bfd_hppa20w_arch): New entry in architecture info - list. - -Tue Aug 10 00:34:29 1999 Mark P. Mitchell <mark@codesourcery.com> - Ralf Baechle <ralf@uni-koblenz.de> - - * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Always - output DT_MIPS_GOTSYM. - (_bfd_mips_elf_finish_dynamic_sections): Use the same value as - DT_MIPS_SYMTABNO if there are no global GOT symbols. - -Tue Aug 10 00:21:08 1999 Mark P. Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_create_dynamic_relocation): Change - prototype. Handle local symbols. Add commentary. - (mips_elf_calculate_relocation): Adjust accordingly. - (_bfd_mips_elf_check_relocs): Handle local symbols in R_MIPS_32 - relocations. - - * elflink.h (elf_bfd_final_link): Tweak last change. - -1999-08-09 Mark Mitchell <mark@codesourcery.com> - - * elflink.h (elf_link_size_reloc_section): Use the counts in the - elf-section data to allocate just the right amount of relocation - space. Don't allocate the hash space twice. - (elf_bfd_final_link): Calculate the amount of space to allocate in - each relocation section. - -Mon Aug 9 17:37:30 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type, case 32): When in - 64bit mode, generate a section relative relocation for a 32bit - wide relocation. - (elf_hppa_is_local_label_name): New function. - * elf32-hppa.c (elf_hppa_is_local_label_name): Deleted. To be - shared between 32bit and 64bit port. - -1999-08-09 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (elf_mips_howto_table): Fix src_mask for - R_MIPS_GOT16 and R_MIPS_CALL16. - (mips_elf_got16_entry): Use mips_elf_high to calculate the value - to use when looking for a preexisting GOT entry. - -1999-08-09 Jakub Jelinek <jj@ultra.linux.cz> - - * elf64-sparc.c (sparc64_elf_relocate_section): Back out part of - the Sep. 4th, 1998 change. glibc 2.0.x dynamic linker had bug, - not binutils. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - -1999-08-09 Geoff Keating <geoffk@cygnus.com> - - * elflink.h (elf_link_output_extsym): Don't output a weak - reference to an undefined symbol just because it was defined weak - in a shared object. - -1999-08-09 Eli Zaretskii <eliz@is.elta.co.il> - - * coffgen.c (coff_find_nearest_line): When looking for file, use - last best match rather than first. If address is beyond last line - number record, don't return the last line as the correct value. - -1999-08-08 Ian Lance Taylor <ian@zembu.com> - - * section.c (SEC_SMALL_DATA): Rename from SEC_SHORT. - * bfd-in2.h: Rebuild. - -1999-08-08 Mark Elbrecht <snowball3@bigfoot.com> - - * libcoff-in.h (struct coff_section_alignment_entry): Define. - * coffcode.h (coff_set_custom_section_alignment): New static - function. - (coff_section_alignment_table): New static array. - (coff_new_section_hook): Use coff_set_customer_section_alignment. - * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define. - * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define. - * libcoff.h: Rebuild. - -1999-08-08 Ian Lance Taylor <ian@zembu.com> - - * Makefile.am: Rename .dep* files to DEP*. Change DEP variable to - MKDEP. - * Makefile.in: Rebuild. - -1999-08-08 Mumit Khan <khan@xraylith.wisc.edu> - - * section.c (SEC_SHARED): Define. - * coffcode.h (sec_to_styp_flags): Handle SEC_SHARED. - (styp_to_sec_flags): Likewise. - * peicode.h (coff_swap_scnhdr_out): Likewise. - * bfd-in2.h: Rebuild. - -1999-08-08 Ian Lance Taylor <ian@zembu.com> - - * coffcode.h (coff_classify_symbol): Comment out part of - 1999-08-05 change which breaks cygwin DLLs. - - * acinclude.m4 (BFD_BINARY_FOPEN): Change -windows to -windows*. - * aclocal.m4, configure: Rebuild. - -1999-08-06 Ian Lance Taylor <ian@zembu.com> - - * section.c (global_syms): Only initialize union field if - __STDC__. - -1999-08-04 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_got16_entry): Don't multiply GOT index by - the size of a GOT entry here. - (mips_elf_calculate_relocation): Don't create a local GOT entry - for the symbol in a GOT16 relocation; just for it's high-order bit - (_bfd_mips_elf_relocate_section): Fix thinko. - -1999-08-05 Ian Lance Taylor <ian@zembu.com> - - Based on patches from Donn Terry <donn@interix.com>: - * coffcode.h (enum coff_symbol_classification): Define. - (bfd_coff_backend_data): Rename _bfd_coff_sym_is_global to - _bfd_coff_classify_symbol. Change return type. - (bfd_coff_classify_symbol): Rename from bfd_coff_sym_is_global. - (coff_slurp_symbol_table): Use coff_classify_symbol. - (coff_classify_symbol): New static function. - (coff_sym_is_global): Never define. - (bfd_coff_std_swap_table): Initialize with coff_classify_symbol. - * cofflink.c (coff_link_check_ar_symbols): Use - bfd_coff_classify_symbol rather than bfd_coff_sym_is_global. - (coff_link_add_symbols): Likewise. - (_bfd_coff_link_input_bfd): Likewise. - * coff-sh.c (bfd_coff_small_swap_table): Initialize with - coff_classify_symbol. - * libcoff.h: Rebuild. - -Wed Aug 4 18:08:07 1999 Jeffrey A Law (law@cygnus.com) - - * libhppa.h (R_HPPA_LTPSEL, R_HPPA_RTPSEL): New field selectors - (e_ltpsel, e_rtpsel): Similarly. - - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle 21bit e_ltpsel - and 14bit ertpsel. Handle 64bit psel. - -1999-08-04 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (_bfd_mips_elf_relocate_section): Tweak HI16/LO16 - handling for REL relocations. And only left-shift R_MIPS26 - relocation addends where necessary. - -1999-08-03 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_next_lo16_addend): Rename to ... - (mips_elf_next_lo16_relocation): Don't compute the addend here. - Just return the relocation found. - (mips_elf_relocate_section): Pull the LO16 addend out of the - section itself when using REL relocations. - - * elf32-mips.c (mips_elf_calculate_relocation): Restore - _DYNAMIC_LINK handling and handling of undefined symbols in shared - libraries. - -1999-08-03 Ian Lance Taylor <ian@zembu.com> - - * elf32-ppc.c (ppc_elf_relocate_section): Don't use the relocation - value of a symbol in a SEC_DEBUGGING section. Warn when doing a - relocation against a symbol in an input section with no output - section. From Daniel Jacobowitz <drow@false.org>. - - * coff-stgo32.c (go32_stubbed_coff_object_p): Remove; not used. - - * acinclude.m4 (BFD_CC_FOR_BUILD): Change to use conftest, and to - look for generated file correctly. - * aclocal.m4, configure: Rebuild. - -1999-08-02 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (_bfd_mips_elf_relocate_section): Handle R_MIPS_26 - and R_MIPS16_26 relocations correctly when relocating. - (_bfd_mips_elf_check_relocs): Don't assume that R_MIPS_CALL_HI16 - and R_MIPS_CALL_LO16 are for global symbols. - -1999-08-02 Jakub Jelinek <jj@ultra.linux.cz> - - * elflink.h (elf_bfd_final_link): Copy the whole isym, not just - some fields. - * elf64-sparc.c (sparc64_elf_output_arch_syms): Declare used - variables and initialize them. - -1999-08-01 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (_bfd_mips_elf_final_link): Handle the case where - there are no global symbols requiring GOT entries. - (_bfd_mips_elf_size_dynamic_sections): Likewise. - (_bfd_mips_elf_finish_dynamic_symbol): Likewise. - (_bfd_mips_elf_finish_dynamic_sections): Likewise. - - * elf32-mips.c (mips_elf_calculate_relocation): Undefined weak - symbols are considered to have the value zero. - (_bfd_mips_elf_relocate_section): Don't try to perform a - relocation for an undefined symbol. - (_bfd_mips_elf_check_relocs): Allocate locate GOT space for local - GOT16 relocations. - -1999-07-30 Jakub Jelinek <jj@ultra.linux.cz> - - * elf64-sparc.c (sparc64_elf_build_plt): Cosmetic change - ABI - wants ba,a,pt %xcc instead of %icc. - Emit correct .PLT0-(.PLTN+4) initial value into the pointer slots - of large PLT entries. - (sparc64_elf_plt_ptr_offset): Fix calculation. - (sparc64_elf_finish_dynamic_symbol): Negative value of R_SPARC_JMP_SLOT - addend should be relative to load address, not .plt section start. - (sparc64_elf_size_info): Sparc64 uses 32bit .hash entries. - -1999-07-30 Jakub Jelinek <jj@ultra.linux.cz> - - * elf-bfd.h (struct elf_backend_data): Add - print_symbol_all and output_arch_syms backend methods. - * elfxx-target.h: Likewise. - * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create, - sparc64_elf_add_symbol_hook, sparc64_elf_output_arch_syms, - sparc64_elf_get_symbol_type, sparc64_elf_symbol_processing): New - functions. - (sparc64_elf_size_dynamic_sections): Leave space for STT_REGISTER - symbols in .dynsym, add their names into .dynstr. Put those symbols - into dynlocal. - (sparc64_elf_finish_dynamic_sections): Fix up DT_SPARC_REGISTER - pointers to STT_REGISTER symbols in dynsym section. - (sparc64_elf_print_symbol_all): New function. - * elf.c (bfd_elf_print_symbol): Allow special backend symbol - printing using the print_symbol_all hook. - -1999-07-30 Catherine Moore <clm@cygnus.com> - - * elf32-arm.h (elf32_arm_check_relocs): Use r_offset for - R_ARM_GNU_VTENTRY. - -1999-07-29 Richard Henderson <rth@cygnus.com> - - * elf32-mips.c (_bfd_mips_elf_final_link): Only re-sort dynsyms if - dynamic_sections_created. - -1999-07-29 Richard Henderson <rth@cygnus.com> - - * elf32-mips.c (mips_info_to_howto_rel): Split out switch to ... - (mips_rtype_to_howto): ... new function. - (_bfd_mips_elf_relocate_section): Use it. - -1999-07-28 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (_bfd_mips_elf_relocate_section): Fix typo. - -1999-07-27 Nick Clifton <nickc@cygnus.com> - - Patch generated by Bernd Schmidt. <bernds@cygnus.co.uk> - - * coff-arm.c (coff_arm_is_local_label_name): Change to strip - out only symbols that start with LOCAL_LABEL_PREFIX followed by 'L'. - -1999-07-23 Donn Terry <donn@interix.com> - - * libcoff-in.h (coff_link_hash_entry): Add coff_link_hash_flags - field, and define COFF_LINK_HASH_PE_SECTION_SYMBOL. - * cofflink.c (coff_link_add_symbols): If PE, handle section - symbols specially. - * libcoff.h: Rebuild. - - * config.bfd (i[3456]86-*-interix*): New target. - -1999-07-21 Mark Elbrecht <snowball3@bigfoot.com> - - * coffcode.h (styp_to_sec_flags): If COFF_LONG_SECTION_NAMES and - COFF_SUPPORT_GNU_LINKONCE, mark sections whose names begin with - .gnu.linkonce with SEC_LINKONCE and SEC_LINK_DUPLICATES_DISCARD. - * coff-go32.c: (COFF_LONG_SECTION_NAMES): Define. - (COFF_SUPPORT_GNU_LINKONCE): Define. - * coff-stgo32.c: (COFF_LONG_SECTION_NAMES): Define. - (COFF_SUPPORT_GNU_LINKONCE): Define. - -1999-07-21 Ian Lance Taylor <ian@zembu.com> - - From Mark Elbrecht: - * makefile.dos: Remove; obsolete. - * configure.bat: Remove; obsolete. - -1999-07-21 H.J. Lu <hjl@gnu.org> - - * config.bfd (i[3456]86-*-vxworks*): Add targ_underscore=yes. - -1999-07-21 Philippe De Muyter <phdm@macqel.be> - - * cofflink.c (_bfd_coff_generic_relocate_section): Issue an error - message and fail if a symbol index is out of range. - -1999-07-21 Ian Lance Taylor <ian@zembu.com> - - * elf32-mips.c (mips_elf_calculate_relocation): Get the GP value - when looking at a R_MIPS_GOT16 relocation. - -1999-07-20 Nick Clifton <nickc@cygnus.com> - - * coff-m88k.c: Use CREATE_BIG_COFF_TARGET_VEC. - -Mon Jul 19 14:03:44 1999 Mark P. Mitchell <mark@codesourcery.com> - - * elf32-mips.c (_bfd_mips_elf_final_link): Restore setting of GP - removed in previous change. - (_bfd_mips_elf_relocate_section): Adjust GP relative relocations - in relocateable output. - -1999-07-19 Ian Lance Taylor <ian@zembu.com> - - * coff-m88k.c (m88kbcs_vec): Initialize new field of bfd_target - structure. - - * elflink.h (elf_merge_symbol): Do merge symbols from the same BFD - if they appear to be specially created by the linker. - -1999-07-19 Nick Clifton <nickc@cygnus.com> - - * targets.c (alternative_target): New field in bfd_target - structure. - (bfd_search_for_target): New function: Find a target that - satisifies a search function. - * bfd-in2.h: Regenerate. - - * elfxx-target.h: Initialise the alternative_target field of - the bfd_target structures to point to the other target (if - defined). - * nlm-target.h: Initialise the alternative_target field of - the bfd_target structures to point to the other target (if - defined). - - * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): New macro. - (CREATE_LITTLE_COFF_TARGET_VEC): New macro. - - * aix386-core.c: Initialise new field of bfd_target structure. - * aout-adobe.c: Initialise new field of bfd_target structure. - * aout-arm.c: Initialise new field of bfd_target structure. - * aout-target.h: Initialise new field of bfd_target structure. - * aout-tic30.c: Initialise new field of bfd_target structure. - * binary.c: Initialise new field of bfd_target structure. - * bout.c: Initialise new field of bfd_target structure. - * cisco-core.c: Initialise new field of bfd_target structure. - * coff-a29k.c: Use CREATE_BIG_COFF_TARGET_VEC. - * coff-alpha.c: Initialise new field of bfd_target structure. - * coff-apollo.c: Use CREATE_BIG_COFF_TARGET_VEC. - * coff-arm.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC. - * coff-h8300.c: Use CREATE_BIG_COFF_TARGET_VEC. - * coff-h8500.c: Use CREATE_BIG_COFF_TARGET_VEC. - * coff-i386.c: Initialise new field of bfd_target structure. - * coff-i860.c: Initialise new field of bfd_target structure. - * coff-i960.c: Use CREATE_LITTLE_COFF_TARGET_VEC. - * coff-m68k.c: Use CREATE_BIG_COFF_TARGET_VEC. - * coff-mcore.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC. - * coff-mips.c: Initialise new field of bfd_target structure. - * coff-ppc.c: Initialise new field of bfd_target structure. - * coff-rs6000.c: Initialise new field of bfd_target structure. - * coff-sh.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC. - * coff-sparc.c: Use CREATE_BIG_COFF_TARGET_VEC. - * coff-tic30.c: Initialise new field of bfd_target structure. - * coff-tic80.c: Use CREATE_LITTLE_COFF_TARGET_VEC. - * coff-w65.c: Use CREATE_LITTLE_COFF_TARGET_VEC. - * coff-we32k.c: Use CREATE_BIG_COFF_TARGET_VEC. - * coff-z8k.c: Use CREATE_BIG_COFF_TARGET_VEC. - * hppabsd-core.c: Initialise new field of bfd_target structure. - * hpux-core.c: Initialise new field of bfd_target structure. - * i386msdos.c: Initialise new field of bfd_target structure. - * i386os9k.c: Initialise new field of bfd_target structure. - * ieee.c: Initialise new field of bfd_target structure. - * ihex.c: Initialise new field of bfd_target structure. - * irix-core.c: Initialise new field of bfd_target structure. - * mipsbsd.c: Initialise new field of bfd_target structure. - * netbsd-core.c: Initialise new field of bfd_target structure. - * oasys.c: Initialise new field of bfd_target structure. - * osf-core.c: Initialise new field of bfd_target structure. - * ppcboot.c: Initialise new field of bfd_target structure. - * ptrace-core.c: Initialise new field of bfd_target structure. - * sco5-core.c: Initialise new field of bfd_target structure. - * som.c: Initialise new field of bfd_target structure. - * srec.c: Initialise new field of bfd_target structure. - * tekhex.c: Initialise new field of bfd_target structure. - * trad-core.c: Initialise new field of bfd_target structure. - * versados.c: Initialise new field of bfd_target structure. - * vms.c: Initialise new field of bfd_target structure. - -1999-07-19 Andreas Schwab <schwab@suse.de> - - * elflink.h (elf_bfd_final_link): Remove unused variables rel_hash - and rel_hdr. - -Sat Jul 17 02:28:28 1999 Mark P. Mitchell <mark@codesourcery.com> - - * elflink.h (elf_link_adjust_relocs): New function. - (elf_bfd_final_link): Use it. - (elf_link_input_bfd): Deal with the fact that there can be - two relocation sections for a single section. - (elf_reloc_link_order): Likewise. - - * elf32-mips.c (_bfd_mips_elf_final_link): Don't set GP for - a relocateable object. - (_bfd_mips_elf_relocate_section): Handle relocateable links. - -1999-07-16 Jakub Jelinek <jj@ultra.linux.cz> - - * elf64-sparc.c (sparc64_elf_info_to_howto): Use ELF64_R_TYPE_ID. - (sparc64_elf_get_reloc_upper_bound, - sparc64_elf_get_dynamic_reloc_upper_bound, - sparc64_elf_slurp_one_reloc_table, sparc64_elf_slurp_reloc_table, - sparc64_elf_canonicalize_dynamic_reloc, sparc64_elf_write_relocs): - New functions. - (sparc64_elf_check_relocs, sparc64_elf_relocate_section): Use - ELF64_R_TYPE_ID/DATA where appropriate. - -1999-07-16 Jakub Jelinek <jj@ultra.linux.cz> - - * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Remove - DT_SPARC_PLTFMT. - -1999-07-16 Ian Lance Taylor <ian@zembu.com> - - * elf32-mips.c (mips_elf_local_relocation_p): New static - function. - (mips_elf_next_lo16_addend): Call bfd_set_error on failure. - (mips_elf_calculate_relocation): Use mips_elf_local_relocation_p. - Always set *require_jalxp. - (mips_elf_stub_section_p): Mark abfd parameter as unused. - (_bfd_mips_elf_relocate_section): Only look for LO16 following - GOT16 if the GOT16 is against a local symbol. Don't return false - for an undefined symbol. If there is an overflow, assert that we - have a name. - -1999-07-16 Andreas Schwab <schwab@suse.de> - - * elflink.h (elf_link_record_local_dynamic_symbol): Remove unused - variables `link' and `elfsec'. - (elf_bfd_final_link): Remove unused variable `os'. - -Thu Jul 15 17:55:31 1999 Mark P. Mitchell <mark@codesourcery.com> - - * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Don't require - a PT_PHDR program headers. - (_bfd_mips_elf_final_link): Don't assume there are going to be - section symbols when we're not building a shared object. - (_bfd_mips_elf_check_relocs): Make sure we have a GOT when - we need one. - -1999-07-15 J.T. Conklin <jtc@redback.com> - - * config.bfd (i[3456]86-*-vxworks*): New target. - -1999-07-15 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_stub_section_p): New function. - (mips_elf_calculate_relocation): Handle MIPS16 stub functions. - (mips_elf_relocate_section): Adjust calling sequence for - mips_elf_calculate_relocation and mips_elf_perform_relocation. - (mips_elf_perform_relocation): Turn `jal' into `jalx' where - required. - -1999-07-15 Ian Lance Taylor <ian@zembu.com> - - * configure.in: Bump version number to 2.9.5. - * configure: Rebuild. - -Thu Jul 15 02:56:15 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type, case R_HPPA): Handle - 64bit format. - (_bfd_elf_hppa_gen_reloc_type, case R_GOTOFF): Use base reloc type - to derive final type instead of hardwiring a selection. - -1999-07-14 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_obtain_contents): Swap 16-bit halves of - things relocated by R_MIPS16_GPREL. - (mips_elf_perform_relocation): Likewise. - -Wed Jul 14 15:23:19 1999 Jim Wilson <wilson@cygnus.com> - - * elfxx-target.h (elfNN_bed): Add elf_backend_want_dynbss. - -1999-07-14 Richard Henderson <rth@cygnus.com> - - * elf32-mips.c (struct mips_got_info): Add global_gotno. - (_bfd_mips_elf_size_dynamic_sections): Set it. - (_bfd_mips_elf_final_link): Re-sort; verify the got did not grow. - (mips_elf_sort_hash_table): Set max_non_got_dynindex based off - new argument max_local. - -1999-07-14 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_obtain_contents): Swap the 16-bit - subwords when handling an R_MIPS16_26 relocation. - (mips_elf_perform_relocation): Don't be paranoid abour right-shift - semantics. - - * elf32-mips.c (elf_mips16_gprel_howto): Adjust src_mask and - dst_mask to match reality. - (_bfd_mips_elf_calculate_relocation): Handle R_MIPS16_GPREL. - (mips_elf_obtain_contents): Use bfd_get. - (mips_elf_perform_relocation): Handle R_MIPS16_GPREL. - (mips_elf_relocate_section): Likewise. - -1999-07-13 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_calculate_relocation): Handle R_MIPS16_26. - (mips_elf_relocate_section): Adjust calling sequence for - mips_elf_perform_relocation. - (mips_elf_perform_relocation): Take additional argument. Handle - R_MIPS16_26. Use bfd_put for convenience. - -1999-07-13 Richard Henderson <rth@cygnus.com> - - * elf.c (assign_file_positions_for_segments): Thinko last change. - Always overwrite p_flags. - -1999-07-13 Richard Henderson <rth@cygnus.com> - - * elf-bfd.h (struct elf_backend_data): Add want_dynbss. - * elflink.c (_bfd_elf_create_dynamic_sections): Only create - .dynbss and .rel[a].bss if want_dynbss. - * elfxx-target.h (elf_backend_want_dynbss): Provide default. - -1999-07-13 Richard Henderson <rth@cygnus.com> - - * elf.c (assign_file_positions_for_segments): Don't overwrite p_flags. - -1999-07-13 Richard Henderson <rth@cygnus.com> - - * elf-bfd.h (struct elf_link_local_dynamic_entry): New. - (struct elf_link_hash_table): Add dynlocal. - (_bfd_elf_link_lookup_local_dynindx): Prototype. - (_bfd_elf_link_adjust_dynindx): Delete. - (_bfd_elf_link_renumber_dynsyms): Prototype. - (_bfd_elf,link_record_local_dynamic_symbol): Prototype. - * elfcode.h (elf_link_record_local_dynamic_symbol): New alias. - * elflink.c (_bfd_elf_link_adjust_dynindx): Delete. - (_bfd_elf_link_lookup_local_dynindx): New function. - (elf_link_renumber_hash_table_dynsyms): New function. - (_bfd_elf_link_renumber_dynsyms): New function. - * elflink.h (elf_link_record_local_dynamic_symbol): New function. - (struct elf_assign_sym_version_info): Delete removed_dynamic. - (bfd_elf,size_dynamic_sections): Use _bfd_strip_section_from_output - instead of elf_link_remove_section_and_adjust_dynindices. - Remove removed_dynamic code. Use _bfd_elf_link_renumber_dynsyms. - (elf_link_assign_sym_version): Remove removed_dynamic code. - (elf_link_renumber_dynsyms): Delete. - (elf_bfd_final_link): Install section and local symbols into .dynsym. - - * elf32-m68k.c (elf_m68k_adjust_dynindx): Delete. - (elf_m68k_size_dynamic_sections): Don't set section dynindicies. - (elf_m68k_finish_dynamic_sections): Don't write section dynsyms. - * elf32-mips.c: Similarly. - * elf32-ppc.c: Similarly. - * elf32-sparc.c: Similarly. - * elf64-alpha.c: Similarly. - * elf64-sparc.c: Similarly. - -1999-07-13 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_calculate_relocation): Do not complain - when _gp_disp is undefined. Do not check R_MIPS_LO16 for overflow - when the relocation is against _gp_disp. - -1999-07-12 Mark Mitchell <mark@codesourcery.com> - - * dwarf2.c (read_attribute): Support DW_FORM_ref8. - * elf32-mips.c (mips_elf_link_hash_entry): Change mips_32_relocs - to possibly_dynamic_relocs. Adjust usage throughout code. - (elf_mips_howto_table): Handle R_MIPS_64 correctly. - (elf_mips_ctor64_howto): Likewise. - (mips_elf_calculate_relocation): Handle R_MIPS_64 like R_MIPS_32. - Adjust indentation. - (mips_elf_relocate_section): Handle R_MIPS_64 in 32-bit mode. - (_bfd_mips_elf_check_relocs): Handle R_MIPS_64 like R_MIPS_32. - Use MIPS_ELF_GOT_SIZE to calculate the size of GOT entries. - * elf64-mips.c (elf_backend_may_use_rel_p): Define. - -1999-07-12 Ian Lance Taylor <ian@zembu.com> - - * Makefile.am: Rebuild dependencies. - * Makefile.in: Rebuild. - - * bfd-in.h: Remove tests of COFF_IMAGE_WITH_PE. - * bfd-in2.h: Rebuild. - - * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED - as appropriate. Use EMPTY_HOWTO as appropriate. Fill in - structure initializations. Add casts. - * reloc.c (EMPTY_HOWTO): Define. - * bfd-in2.h: Rebuild. - * coff-h8300.c (h8300_reloc16_extra_cases): Remove useless - comparisons against 0. - * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Change - previous_ibfd_e_flags to unsigned long. - * vms.h (struct vms_private_data_struct): Change section_count to - unsigned. - * vms-gsd.c (_bfd_vms_slurp_gsd): Change psect_idx to unsigned. - (_bfd_vms_write_gsd): Change symnum to unsigned. - * vms-hdr.c (_bfd_vms_write_hdr): Change symnum to unsigned. - * vms-tir.c (etir_sta): Change psect to unsigned. - (alloc_section): Change idx to unsigned. - (tir_sta, tir_ctl): Change psect to unsigned. - (_bfd_vms_write_tir): Change len and before to bfd_size_type. - * vms.c (priv_section_count): Change to unsigned. - -1999-07-12 Andreas Schwab <schwab@suse.de> - - * elf32-m68k.c: Add some ATTRIBUTE_UNUSED. - * m68klinux.c: Likewise. - -1999-07-12 Ian Lance Taylor <ian@zembu.com> - - * Many files: Changes to avoid gcc warnings: Remove unused local - variables. Add default case to enum switches. - * coff-arm.c (bfd_arm_allocate_interworking_sections): Only - compile if not COFF_IMAGE_WITH_PE. - (record_arm_to_thumb_glue, record_thumb_to_arm_glue): Likewise. - (bfd_arm_get_bfd_for_interworking): Likewise. - (bfd_arm_process_before_allocation): Likewise. - * epoc-pei-arm.c: Don't rename bfd_arm functions. - * pei-arm.c: Likewise. - * elf32-mips.c (mips_elf_link_hash_table_create): Don't declare. - (MIPS_ELF_ADD_DYNAMIC_ENTRY): Correct last change. - (mips_elf_got16_entry): Put parens around & in body of ==. - (mips_elf_calculate_relocation): Correct test for empty string. - * vms-gsd.c: Use _bfd_error_handler rather than fprintf to - stderr. - * vms-misc.c (_bfd_vms_length_hash_symbol): Correct sprintf - format. - -1999-07-11 Ian Lance Taylor <ian@zembu.com> - - * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED - as appropriate. Fill in structure initializations. Add variable - initializations. Add casts. - * dwarf1.c (parse_line_table): Change eachLine to unsigned long. - (dwarf1_unit_find_nearest_line): Change i to unsigned long. - - * elf.c (bfd_elf_hash): Change parameter from unsigned char * to - char *. - * elf-bfd.h (bfd_elf_hash): Update declaration. - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove casts - when calling bfd_elf_hash. - -1999-07-11 Mark Mitchell <mark@codesourcery.com> - - * libbfd.c (bfd_put_8): Make it of type `void'. - * bfd-in2.h: Regenerated. - * elf32-mips.c (MIPS_ELF_ADD_DYNAMIC_ENTRY): Conditionalize - for 32-bit hosts. - (_bfd_mips_elf_final_link): Likewise. - - * elflink.h (elf_link_read_relocs_from_section): Be type-correct. - -Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca> - - * config.bfd (hppa*-*-linux-gnu*): New target - -1999-07-07 Mark Mitchell <mark@codesourcery.com> - - * elf-bfd.h (_bfd_mips_elf_section_from_shdr): Constify. - (_bfd_mips_elf_create_dynamic_sections): New function. - (_bfd_mips_elf_add_symbol_hook): Likewise. - (_bfd_mips_elf_adjust_dynamic_symbol): Likewise. - (_bfd_mips_elf_finish_dynamic_symbol): Likewise. - (_bfd_mips_elf_finish_dynamic_sections): Likewise. - (_bfd_mips_elf_gc_mark_hook): Likewise. - (_bfd_mips_elf_gc_sweep_hook): Likewise. - (_bfd_mips_elf_always_size_sections): Likewise. - (_bfd_mips_elf_size_dynamic_sections): Likewise. - (_bfd_mips_elf_check_relocs): Likewise. - (_bfd_mips_elf_link_hash_table_create): Likewise. - (_bfd_mips_elf_print_private_data): Likewise. - (_bfd_mips_elf_link_output_symbol_hook): Likewise. - (_bfd_mips_elf_final_link): Likewise. - (_bfd_mips_elf_additional_program_headers): Likewise. - (_bfd_mips_elf_modify_segment_map): Likewise. - (_bfd_mips_elf_relocate_section): Likewise. - * elf32-mips.c (mips_elf32_object_p): Move contents into - _bfd_mips_elf_object_p. - (mips_elf_additional_program_headers): Rename to - _bfd_mips_elf_additional_program_headers. - (mips_elf_modify_segment_map): Rename to - _bfd_mips_elf_modify_segment_map. - (elf_mips_abi_name): Change prototype. - (mips_elf32_section_from_shdr): Merge into - _bfd_mips_elf_section_from_shdr. - (mips_elf32_section_processing): Merge into - _bfd_mips_elf_section_processing. - (mips_elf_final_link): Rename to _bfd_mips_elf_final_link. Invoke - the right back-end ELF linker. - (mips_elf_relocate_section): Rename to - _bfd_mips_elf_relocate_section. Clean up. Adjust for 64-bit code. - (mips_elf_link_output_symbol_hook): Rename to - _bfd_mips_elf_link_output_symbol_hook. - (mips_elf_create_dynamic_section): Rename to - _bfd_mips_elf_create_dynamic_section. - (mips_elf_check_relocs): Rename to _bfd_mips_elf_check_relocs. - Adjust for 64-bit code. Use mips_elf_got_section. - (mips_elf_adjust_dynamic_symbol): Rename to - _bfd_mips_elf_adjust_dynamic_symbol. Use - mips_elf_allocate_dynamic_relocations. - (mips_elf_finish_dynamic_symbol): Rename to - _bfd_mips_elf_finish_dynamic_symbol. Use mips_elf_got_section. - Adjust for 64-bit code. - (mips_elf_finish_dynamic_sections): Rename to - _bfd_mips_elf_finish_dynamic_sections. Adjust for 64-bit code. - (mips_elf_always_size_sections): Rename to - _bfd_mips_elf_always_size_sections. - (mips_elf_add_symbol_hook): Rename to - _bfd_mips_elf_add_symbol_hook. - (mips_elf_next_lo16_addend): Constify. - (mips_elf_calculate_relocation): Likewise. - (mips_elf_obtain_contents): Likewise. - (mips_elf_perform_relocation): Likewise. - (mips_elf_create_dynamic_relocation): Likewise. - (mips_elf_allocate_dynamic_relocations): New function. - (MIPS_ELF_REL_DYN_SECTION_NAME): New macro. - (MIPS_ELF_REL_SIZE): Likewise. - (MIPS_ELF_DYN_SIZE): Likewise. - (MIPS_ELF_GOT_SIZE): Likewise. - (MIPS_ELF_SYM_SIZE): Likewise. - (MIPS_ELF_LOG_FILE_ALIGN): Likewise. - (MIPS_ELF_GET_WORD): Likewise. - (MIPS_ELF_PUT_WORD): Likewise. - (MIPS_ELF_ADD_DYNAMIC_ENTRY): Likewise. - (STUB_LW): Conditionalize for 64-bit value. - (elf_mips_howto_table): Add R_MIPS_HIGHER and R_MIPS_HIGHEST - entries. - (_bfd_mips_elf_merge_private_bfd_data): Merge e_ident[EI_CLASS]. - Check it for inconsistency. - (_bfd_mips_elf_print_private_bfd_data): Print ABI=64 for 64-bit - ABI. - (_bfd_mips_elf_fake_sections): Remove duplicate handling of - .msym. - (mips_elf_global_got_index): Use MIPS_ELF_GOT_SIZE. - (mips_elf_got_offset_from_index): Use misp_elf_got_section. - (mips_elf_create_local_got_entry): Use MIPS_ELF_GOT_SIZE. - (mips_elf_local_got_index): Likewise. - (mips_elf_got_page): Likewise. - (mips_elf_got_info): Likewise. - (mips_elf_create_dynamic_relocation): Handle 32-bit/64-bit split. - (ELF_DYNAMIC_INTERPRETER): Handle 64-bit code. - (mips_elf_create_dynamic_sections): Use MIPS_ELF_LOG_FILE_ALIGN, - instead of constant `2'. - (mips_elf_create_got_section): Tidy. Use MIPS_ELF_GOT_SIZE. - (mips_elf_create_msym_section): Use MIPS_ELF_LOG_FILE_ALIGN. - (mips_elf_size_dynamic_sections): Use - MIPS_ELF_REL_DYN_SECTION_NAME, MIPS_ELF_GOT_SIZE, - MIPS_ELF_ADD_DYNAMIC_ENTRY. Remove #if 0'd code. - Adjust all releveant entries in elf backend table. - * elf64-mips.c (mips_elf64_section_from_shdr): Remove. - (mips_elf64_section_processing): Likewise. - Adjust elf backend entries to use _bfd_mips_elf variants now - publicly available. - - * elflink.h (elf_link_create_dynamic_sections): Handle non-standard - hash-entry sizes. - (size_dynamic_sections): Likewise. - (elf_link_output_extsym): Likewise. - * elf.c: (elf_fake_sections): Likewise. - * libbfd.c (bfd_get): New macro. - (bfd_put): Likewise. - * bfd-in2.h: Regenerated. - -1999-07-07 Mark Mitchell <mark@codesourcery.com> - - * elf-bfd.h (elf_size_info): Add hash_entry_size, - int_rels_per_ext_rel, swap_dyn_out, swap_reloc_in, swap_reloc_out, - wap_reloca_in, and swap_reloca_out. - * elflink.h (elf_link_read_relocs_from_section): Adjust to handle - multiple internal relocations per external relocation. - (link_read_relocs): Likewise. - (elf_bfd_final_link): Likewise. - (elf_link_input_bfd): Likewise. - (elf_gc_mark): Likewise. - (elf_gc_smash_unused_vtentry_relocs): Likewise. - * elfcode.h (elf_swap_dyn_out): Adjust type to match - elf_swap_dyn_in. - (size_info): Add entries for new fields. - * elf64-mips.c (mips_elf64_swap_reloc_out): Enable. - (mips_elf64_be_swap_reloc_in): New function. - (mips_elf64_be_swap_reloc_out): Likewise. - (mips_elf64_be_swap_reloca_in): Likewise. - (mips_elf64_be_swap_reloca_out): Likewise. - (mips_elf64_size_info): Add entries for new fields. - -1999-07-07 Ian Lance Taylor <ian@zembu.com> - - * elflink.h (elf_bfd_final_link): Assert that section reloc_count - field equals the new rel_count field. - (elf_link_input_bfd): When doing a relocateable link, use the new - rel_count field rather than the reloc_count field. - (elf_reloc_link_order): Likewise. - (elf_finish_pointer_linker_section): Likewise. - - Based on patch from H.J. Lu <hjl@gnu.org>: - * elflink.h (elf_merge_symbol): Permit a non-weak definition in a - shared library to override a weak definition in a regular object. - -Tue Jul 6 10:23:39 1999 Jeffrey A Law (law@cygnus.com) - - * libhppa.h: Revert July 2, 1999 patch. - - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): T mode selectors - need to generate DLTIND relocations, not DLTREL relocations. - -1999-07-05 Nick Clifton <nickc@cygnus.com> - - * coffcode.h (coff_set_arch_mach_hook): Recognise arm 5 - architectures. - (coff_set_flags): Recognise arm 5 architectures. - - * cpu-arm.c: Add support for strongarm and arm9 cpus. - Add support for armv5 architecture. - - * archures.c: Add bfd_mach_arm_5 and bfd_mach_arm_5T. - - * reloc.c: Add new, assembler only, ARM reloc: - BFD_RELOC_ARM_ADRL_IMMEDIATE. - - * bfd-in2.h: Regenerate. - -1999-07-02 Mark Mitchell <mark@codesourcery.com> - - * dwarf2.c (parse_comp_unit): Add ABBREV_LENGTH parameter. - (_bfd_dwarf2_find_nearest_line): Add ADDR_SIZE parameter. - * elf.c (_bfd_elf_find_nearest_line): Pass it. - * elf32-arm.h (elf32_arm_find_nearest_line): Likewise. - * elf32-mips.c (ABI_64_P): New macro. - (IRIX_COMPAT): We are IRIX6-compatible if ABI_64_P. - (_bfd_mips_elf_find_nearest_line): Adjust call to - _bfd_dwarf2_find_nearest_line. - * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype. - * libbfd.h: Regenerated. - -1999-07-02 Ian Lance Taylor <ian@zembu.com> - - * config.bfd: Add * at the end of i[3456]86-*-unixware. - -Fri Jul 2 12:21:10 1999 Jeffrey A Law (law@cygnus.com) - - * libhppa.h (HPPA_R_ARG_RELOC): Delete. - (HPPA_R_CONSTANT, HPPA_R_ADDEND): Likewise. - -1999-07-01 Mark Mitchell <mark@codesourcery.com> - - * elf-bfd.h (bfd_elf_section_data): Add rel_count and rel_count2 - fields. - (_bfd_elf_init_reloc_shdr): New function. - * elf.c (_bfd_elf_new_section_hook): Use bfd_zalloc, rather than - bfd_alloc followed by memset. - (_bfd_elf_init_reloc_shdr): New function, split out from ... - (elf_fake_sections): Here. - (assign_section_numbers): Assign section numbers for the second - relocation section, if required. - * elflink.h (elf_link_output_relocs): New function. - (elf_link_size_reloc_section): Likewise. - (elf_bfd_final_link): Use elf_link_size_reloc_section. - (elf_link_input_bfd): Use elf_link_output_relocs. - - * elf32-mips.c (_bfd_mips_elf_fake_sections): Use - _bfd_elf_init_reloc_shdr to initialize rel_hdr2. - -Thu Jul 1 13:58:48 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle R_PCREL_CALL - with 22bit format. - -1999-06-28 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_got_info): Move declaration before - prototypes. Change global_gotsym to be a pointer to a hash entry, - rather than a number index. - (mips_elf_link_hash_entry): Move declaration before prototypes. - (mips_elf_irix6_finish_dynamic_symbol): New function. - (mips_elf_sign_extend): Likewise. - (mips_elf_high): Likewise. - (mips_elf_higher): Likewise. - (mips_elf_highest): Likewise. - (mips_elf_global_got_index): Likewise. - (mips_elf_local_got_index): Likewise. - (mips_elf_got_offset_from_index): Likeiwse. - (mips_elf_record_global_got_symbol): Likewise. - (mips_elf_got_page): Likewise. - (mips_elf_next_lo16_addend): Likewise. - (mips_elf_calculate_relocation): Likewise. - (mips_elf_obtain_contents): Likewise. - (mips_elf_perform_relocation): Likewise. - (mips_elf_assign_gp): Likewise. - (mips_elf_sort_hash_table_f): Likewise. - (mips_elf_sort_hash_table): Likewise. - (mips_elf_got_section): Likewise. - (mips_elf_got_info): Likewise. - (mips_elf_create_local_got_entry): Likewise. - (mips_elf_got16_entry): Likewise. - (mips_elf_create_dynamic_relocation): Likewise. - (elf_mips_howto_table): Add description of R_MIPS_SCN_DISP. - (mips_elf_final_gp): Use mips_elf_assign_gp. - (_bfd_mips_elf_symbol_processing): Don't move SHN_COMMON symbols - into SHN_SCOMMON automatically on IRIX6. - (mips_elf_add_symbol_hook): Likewise. - (mips_elf_relocate_section): Rewrite, using - mips_elf_calculate_relocation and mips_elf_perform_relocation. - (mips_elf_create_dynamic_section): Use MIPS_ELF_STUB_SECTION_NAME. - Don't deal with .rld_map on IRIX6. - (mips_elf_create_got_section): Adjust use of global_gotsym. Set - section flags appropriately for .got. - (mips_elf_check_relocs): Handle IRIX6 relocations making use of - the got. Call mips_elf_record_global_got_symbol and allocate - local got space appropriately. - (mips_elf_size_dynamic_sections): Use bfd_byte *, not unsigned - char *. Rework calculation of GOT size. Sort dynamic symbol - table entries so entries that do not require GOT entries appear at - the beginning. Don't use DT_MIPS_HIPAGENO on IRIX6. Remove dead - code dealing with DT_INIT and DT_FINI. Remove fiddling with - global_gotsym. - (mips_elf_finish_dynamic_symbol): Adjust creation of global GOT - entries. - (mips_elf_finish_dynamic_symbol): Use - mips_elf_irix6_finish_dynamic_symbol. - (mips_elf_finish_dynamic_sections): Correct off-by-one error - setting DT_MIPS_UNREFEXTNO. Adjust setting of DT_MIPS_GOTSYM for - change to global_gotsym. Set DT_MIPS_OPTIONS on IRIX6. - -1999-06-30 Ian Lance Taylor <ian@zembu.com> - - * elf32-mips.c (mips_elf_final_link): Don't set CPIC when doing a - relocateable link. From Ralf Baechle <ralf@uni-koblenz.de>. - -1999-06-04 Philip Blundell <philb@gnu.org> - - * elf32-arm.h (elf_backend_got_header_size): Define. - (elf_backend_plt_header_size): Likewise. - -1999-06-28 Jim Pick <jim@jimpick.com> - - * elf32-arm.h (elf32_arm_relocate_section): Mind no_undefined - -Tue Jun 29 02:25:03 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.c (elf_hppa_howto_table): Use bfd_elf_generic_reloc as - relocation function. - * elf32-hppa.c (hppa_elf_reloc): Kill unused/unwanted function. - -1999-06-27 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (MIPS_ELF_SRDATA_SECTION_NAME): New macro. - (MIPS_ELF_OPTIONS_SECTION_NAME): Likewise. - (MIPS_ELF_STUB_SECTION_NAME): Likewise. - (_bfd_mips_elf_section_from_shdr): Use them. - (_bfd_mips_elf_fake_sections): Likewise. Add .srdata to the list - of GP-relative sections. - (_bfd_mips_elf_set_section_contents): Use them. - (_bfd_mips_elf_section_processing): Share code between .sdata and - .lit4/.lit8 sections. Set appropriate flags for .srdata. - (mips_elf_additional_program_headers): Add handling for - PT_MIPS_OPTIONS segment on IRIX6. - (mips_elf_modify_segment_map): Likeiwse. - (mips_elf_final_link): Set EF_MIPS_CPIC when required by the ABI. - Include the options sections on IRIX6. Don't look for GP-relative - sections by name; use SHF_MIPS_GPREL instead. - (ELF_DYNAMIC_INTERPRETER): Adjust to use /usr/lib32/libc.so.1 for - the N32 ABI. - (mips_elf_create_dynamic_sections): Don't muck about with section - alignments and such on IRIX6. - (mips_elf_adjust_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME. - (mips_elf_size_dynamic_sections): Likewise. Adjust to handle the - fact that ELF_DYNAMIC_INTERPRETER is no longer a constant. Use - bfd_zalloc rather than bfd_alloc and memset. - (mips_elf_finish_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME. - Don't assert the existence of .rld_map on IRIX6. - (mips_elf_finish_dynamic_sections): Use MIPS_ELF_STUB_SECTION_NAME. - - * elf32-mips.c (mips_elf_adjust_dynindx): Remove. - (mips_elf_size_dynamic_sections): Use _bfd_elf_link_adjust_dynindx - instead. - -1999-06-26 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (mips_elf_swap_msym_in): New function. - (mips_elf_swap_msym_out): New function. - (mips_elf_create_msym_section): Likewise. - (MIPS_ELF_MSYM_SECTION_NAME): New macro. - (_bfd_mips_elf_final_write_processing): Set sh_link for .msym. - (_bfd_mips_elf_section_from_shdr): Reject an SHT_MIPS_MSYM - section not named .msym. - (_bfd_mips_elf_fake_sections): Use MIPS_ELF_MSYM_SECTION_NAME, not - .msym directly. Set appropriate attributes for the .msym - section. - (mips_elf_link_hash_entry): Add min_dyn_reloc_index field. - (mips_elf_link_hash_newfunc): Clear it. - (mips_elf_create_dynamic_sections): Create the .msym section - on IRIX6. - (mips_elf_size_dynamic_sections): Allocate space for the - .msym section. Add a DT_MIPS_MSYM entry. - (mips_elf_finish_dynamic_symbol): Write out a .msym entry for - the symbol. - (mips_elf_finish_dynamic_sections): Assign a value for - DT_MIPS_MSYM. Add .msym entries for the section symbols as well. - - * elf32-mips.c (irix_compat_t): New enumeration. - (ABI_N32_P): New macro. - (IRIX_COMPAT): Likewise. - (SGI_COMPAT): Implement in terms of IRIX_COMPAT. - (mips_elf_relocate_section): Fix typo. - -1999-06-26 Mumit Khan <khan@xraylith.wisc.edu> - - * peicode.h (coff_swap_scnhdr_out): Mark non readonly BFD sections - as writable PE sections. - -1999-06-26 David Mosberger <davidm@hpl.hp.com> - - * dwarf2.c (struct arange): New type. - (struct comp_unit): Replace LOW and HIGH by member ARANGE. - (arange_add): New function. - (decode_line_info): Keep track of address ranges that a compilation - unit covers. - (comp_unit_contains_address): Return true if address is contained - in _any_ of the address ranges associated with a compilation unit. - (_bfd_dwarf2_find_nearest_line): Call comp_unit_find_nearest_line - on the first comp_unit that contains the address. - -1999-06-26 David Mosberger <davidm@hpl.hp.com> - - * dwarf2.c (struct dwarf2_debug): Add member dwarf_line_buffer. - (decode_line_info): Add variable STASH and initialize it to point - to the per-bfd dwarf2_debug info. Remove static variable - dwarf_line_buffer and use stash->dwarf_line_buffer in its place. - -1999-06-26 Ian Lance Taylor <ian@zembu.com> - - * elflink.h (elf_link_output_extsym): It's OK for a -Bsymbolic - shared library to have an undefined symbol. - - From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>: - * elf32-ppc.c (ppc_elf_relocate_section): Fix last patch. - -Thu Jun 24 20:59:11 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.c (elf_hppa_final_write_processing): New function. - * elf32-hppa.c: Remove everything related to symbol extension - sections & records. Use the common elf_hppa_final_write_processing. - -1999-06-22 Mark Mitchell <mark@codesourcery.com> - - * elflink.h (size_dynamic_sections): Use user-specified init/fini - functions instead of _init/_fini if requested. - -1999-06-23 Ian Lance Taylor <ian@zembu.com> - - * elf.c (bfd_section_from_shdr): Avoid crashing on a bogus sh_link - field. - -1999-06-22 Ian Lance Taylor <ian@zembu.com> - - From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>: - * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set unused dynindx - field to 0, not -1. - (ppc_elf_finish_dynamic_sections): Check for positive section - dynindx field, rather than comparing against -1. - (ppc_elf_relocate_section): Only return false if undefined_symbol - or reloc_overflow fail, not always upon encountering an error. - -1999-06-22 Mark Mitchell <mark@codesourcery.com> - - * elflink.h (link_read_relocs): Explicitly cast external_relocs to - bfd_byte * before performing pointer arithmetic. - -Tue Jun 22 13:06:25 1999 Jeffrey A Law (law@cygnus.com) - - * elf-hppa.h: New file. Common stuff for elf32 and elf64 PA - support. - * elf32-hppa.c: Include elf-hppa.h. - (ARCH_SIZE): Define. - (elf_hppa_reloc_type_lookup): Delete. Found in the common code - now. - (elf32_hppa_info_to_howto): Similarly. - (elf_hppa_howto_table): Similarly. - (elf_hppa_reloc_type_lookup): Similarly. - (hppa_elf_gen_reloc_type): Similarly. - * elf32-hppa.h (ELF_HOWTO_TALBE, N_PARISC_RELOCS): Delete. - -1999-06-22 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_final_link_relocate): Catch overflow - handling R_V850_22_PCREL relocation. - -1999-06-21 Ian Lance Taylor <ian@zembu.com> - - * coff-arm.c (arm_emit_base_file_entry): Explicitly declare return - type. - -Sun Jun 20 14:13:57 1999 Richard Henderson <rth@cygnus.com> - - * section.c (_bfd_strip_section_from_output): Ignore sections - DISCARDed by the link script. - -1999-06-19 Ian Lance Taylor <ian@zembu.com> - - * elflink.h (elf_link_remove_section_and_adjust_dynindices): - Remove unused local variable spp. - - * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't crash if - the entry symbol is not set. - -Fri Jun 18 04:24:57 1999 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust - GPDISP or LITUSE in a relocatable link. - -Thu Jun 17 21:24:43 1999 J"orn Rennecke <amylaar@cygnus.co.uk> - - * dwarf1.c (alloc_dwarf1_unit): Allocate using bfd_zalloc. - * (alloc_dwarf1_func): Likewise. - -Wed Jun 16 03:09:57 1999 Jeffrey A Law (law@cygnus.com) - - * libhppa.h: Fix various formatting errors. - (assemble_3); Rewrite using CATENATE. - (assemble_17): Fix various bugs. - -1999-06-16 Nick Clifton <nickc@cygnus.com> - - * elf32-mcore.c (R_MCORE_RAW): Fix definition. - -1999-06-15 Richard Henderson <rth@cygnus.com> - - * section.c (SEC_SHORT): Define. - * bfd-in2.h: Rebuild. - -1999-06-13 Mark Mitchell <mark@codesourcery.com> - - * elflink.h (elf_link_remove_section_and_adjust_dynindices): - Remove abfd parameter. Use _bfd_strip_section_from_output. - (bfd_elf_size_dynamic_sections): Adjust callers accordingly. - - * elf-bfd.h (_bfd_elf_link_adjust_dynindx): New function. - * elflink.c (_bfd_elf_link_adjust_dynindx): Define it. - * elflink.h (elf_link_remove_section_and_adjust_dynindices): New - function. - (bfd_elf_size_dynamic_sections): Use it. - -1999-06-13 Alan Modra <alan@spri.levels.unisa.edu.au> - - * elf32-i386.c (elf_howto_table): Change R_386_PC8 from - complain_overflow_bitfield to complain_overflow_signed. - -1999-06-13 Mark Mitchell <mark@codesourcery.com> - - * elflink.h (elf_link_read_relocs_from_section): New function, - split out from ... - (elf_link_read_relocs): Here. Use it for both relocation - sections. - -1999-06-12 Mark Mitchell <mark@codesourcery.com> - - * elfcode.h (elf_slurp_reloc_table_from_section): Don't assume - asect->reloc_count is valid. - -1999-06-12 Ian Lance Taylor <ian@zembu.com> - - * elf32-mips.c (mips_elf32_section_processing): Permit a - SHT_MIPS_REGINFO section to have a size of 0. - -1999-06-12 David O'Brien <obrien@freebsd.org> - - * config.bfd (alpha*-*-freebsd*): New target. - (i[3456]86-*-freebsd*): Now defaults to ELF. - -1999-06-11 Ian Lance Taylor <ian@zembu.com> - - * reloc.c (_bfd_relocate_contents): Permit bitfield relocations to - wrap if the relocation covers the high bit of an address. - - * dwarf2.c (decode_line_info): Remove unused variable first_time. - -1999-06-10 Jakub Jelinek <jj@ultra.linux.cz> - - * elf64_sparc.c (sparc64_elf_relocate_section): Use R_SPARC_max_std - instead of R_SPARC_max. - (sparc64_elf_info_to_howto): Likewise. - * elf32_sparc.c (elf32_sparc_relocate_section): Likewise. - (elf32_sparc_info_to_howto): Likewise; handle vtable relocations. - -1999-06-07 Richard Henderson <rth@cygnus.com> - - * section.c (_bfd_strip_section_from_output): Remove output - sections with no initial link_order. - -1999-06-07 Nick Clifton <nickc@cygnus.com> - - * elf32-m88k.c (ELF_MAXPAGESIZE): Define. - -Mon Jun 7 11:49:43 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> - - * Makefile.am (SOURCE_HFILES): Add missing headers. - * Makefile.in: Regenerated. - -1999-06-06 Mark Mitchell <mark@codesourcery.com> - - * elf32-mips.c (_bfd_mips_elf_print_private_data): Recognize - the N32 ABI. - -1999-06-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> - - * elf32-ppc.c (ppc_elf_relocate_section): Don't barf on out of - range undefweak symbols. - * hash.c: Add missing comma after @xref{} - * linker.c: Likewise. - -1999-06-04 Nick Clifton <nickc@cygnus.com> - - * elfxx-target.h (ELF_MAXPAGESIZE): Produce an error message - if not defined. - * elf32-gen.c (ELF_MAXPAGESIZE): Define. - * elf32-i860.c (ELF_MAXPAGESIZE): Define. - * elf32-i960.c (ELF_MAXPAGESIZE): Define. - * elf64-gen.c (ELF_MAXPAGESIZE): Define. - -1999-06-04 Ian Lance Taylor <ian@zembu.com> - - * Makefile.am: Rebuild dependencies. - (BFD32_BACKENDS): Add dwarf1.lo. - (BFD32_BACKENDS_CFILES): Add dwarf1.c. - * Makefile.in: Rebuild. - -1999-06-04 Nick Clifton <nickc@cygnus.com> - - * Makefile.am: Add epoc-arm-pe target. - * Makefile.in: Regenerate. - * pe-arm.c: Only redefine interworking function names if they have - not already been redefined. - * pei-arm.c: Only redefine interworking function names if they have - not already been redefined. - * epoc-pe-arm.c: Redefine interworking function names to avoid a - name space clash. - * epoc-pei-arm.c: Redefine interworking function names to avoid a - name space clash. - -1999-06-03 Nick Clifton <nickc@cygnus.com> - - * elfxx-target.h (ELF_MAXPAGESIZE): Default to 0x1000 not 1. - -Fri Jun 4 10:05:11 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> - - * elf.c (elf_fake_sections): Undo change of 1999-05-10. - -Fri Jun 4 03:10:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk> - - * elf32-sh.c (sh_elf_relax_delete_bytes): Fix setting of - start / stop for recalculating of r_addend of R_SH_SWITCH*. - -Fri Jun 4 02:53:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk> - - * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH32 - in other text sections. - -Fri Jun 4 02:29:34 1999 J"orn Rennecke <amylaar@cygnus.co.uk> - - * libbfd.c (_bfd_generic_verify_endian_match): New function. - * libbfd-in.h (_bfd_generic_verify_endian_match): Declare. - * libbfd.h: Regenerate. - * coff-sh.c (sh_merge_private_data): Delete. - (coff_bfd_merge_private_bfd_data): Change to - _bfd_generic_verify_endian_match. - (elf32-sh.c): bfd_elf32_bfd_merge_private_bfd_data: Define. - -1999-06-03 Ulrich Drepper <drepper@cygnus.com> - - * elf32-arm.h: Fix typo: change ELF_MAXPAGE_SIZE to ELF_MAXPAGESIZE. - -1999-06-03 Ian Lance Taylor <ian@zembu.com> - - * bfd-in.h (bfd_elf32_arm_allocate_interworking_sections): Correct - prototype. - (bfd_elf32_arm_process_before_allocation): Likewise. - * bfd-in2.h: Rebuild. - -1999-06-03 David Mosberger <davidm@hpl.hp.com> - - * dwarf2.c (struct line_info): Add member END_SEQUENCE to keep - track of end_sequence markers. - (add_line_info): Add END_SEQUENCE arg. - (decode_line_info): Don't try to infer lo_pc and hi_pc from the - debug-line info---it doesn't work right if a compilation unit - consists of multiple discontiguous code-sequences. It would be - worthwhile to optimize for the common case where a compilation - unit results in a contiguous set of code sequences, but this is - quite tricky to get right for arbitrary DWARF2 files. - (lookup_address_in_line_info_table): Don't use the last line entry - for a compilation unit for anything with an address higher than - this line entry. Also, check for end_sequence markers to - correctly handle discontinuities. - (_bfd_dwarf2_find_nearest_line): When checking previously loaded - compilation units, check all compilation units with each->high==0 - just like when reading compilation units. - - * dwarf2.c (decode_line_info): Initialize table->files and - table->last_line to NULL to avoid segfaults due to random - values in these members. - (concat_filename): Check for out-of-range file number before - indexing filename table. Segfaults suck. - - * dwarf2.c (decode_line_info): Don't truncate address to least - significant 32 bits (breaks 64 bit targets). - (lookup_address_in_function_table): Ditto. - (comp_unit_contains_address): Ditto. - -1999-06-02 Mark Mitchell <Mark Mitchell <mark@codesourcery.com>> - - * elf32-mips.c (elf_mips_howto_table): Add R_MIPS_JALR. - * elf64-mips.c (mips_elf64_howto_table_rel): Likewise. - (mips_elf64_howto_table_rela): Likewise. - - * elfcode.h (elf_slurp_reloc_table_from_section): New function, - split out from ... - (elf_slurp_reloc_table): Here. Use it to handle the case where a - single section has two associated relocation sections. - -1999-06-02 Mark Salter <msalter@cygnus.com> - - * coffcode.h (coff_set_alignment_hook): Set lma from s_vaddr if - COFF_WITH_PE defined. - -1999-06-02 Nick Clifton <nickc@cygnus.com> - - * pe-arm.c: Rename global arm interworking functions to avoid name - collision when all targets BFD is built. - * pei-arm.c: Ditto. - -1999-05-31 Mark Mitchell <mark@codesourcery.com> - - * elf-bfd.h (elf_backend_data): Remove use_rela_p. Add - may_use_rel_p, may_use_rela_p, default_use_rela_p. - (bfd_elf_section_data): Add use_rela_p. - * elf.c (bfd_section_from_shdr): Set use_rela_p appropriately. - (_bfd_elf_new_section_hook): Likewise. - (elf_fake_sections): Use may_use_rela_p, etc., instead of - use_rela_p. - (_bfd_elf_copy_private_section_data): Copy use_rela_p. - * elfcode.h (write_relocs): Determine whether or not use rela - relocs based on the relocation section header. - * elflink.c (_bfd_elf_create_dynamic_sections): Use default_use_rela_p - instead of use_rela_p. - * elfxx-target.h (elf_backend_may_use_relp): New macro. - (elf_backend_may_use_rela_p): Likewise. - (elf_backend_default_use_rela_p): Likewise. - (elfNN_bed): Use them. - -Wed Jun 2 12:38:49 1999 Miodrag Vallat <miodrag@multimania.com> - - * hosts/alphalinux.h (TRAD_CORE_EXTRA_SIZE_ALLOWED): Expand to 4096. - -Tue Jun 1 17:57:58 1999 Mark P. Mitchell <mitchell@n02.acl.lanl.gov> - - * reloc.c (BFD_RELOC_MIPS_SUB): New relocation. - (BFD_RELOC_MIPS_GOT_PAGE): Likewise. - (BFD_RELOC_MIPS_GOT_OFST): Likewise. - (BFD_RELOC_MIPS_GOT_DISP): Likewise. - * bfd-in2.h: Regenerated. - * libbfd.h: Likewise. - * elf32-mips.c (mips_info_to_howto_rela): New function. - (USE_REL): Adjust for new conventions. - (MINUS_ONE): New macro. - (elf_mips_howto_table): Add R_MIPS_SUB. - (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE, MIPS_GOT_OFST, - and MIPS_GOT_DISP. - (mips_elf_final_write_processing): Set sh_link, not sh_info, for a - .MIPS.content section. - (_bfd_mips_elf_fake_sections): Treat all sections that begin - with .MIPS.content as .MIPS.content sections. Set - SHF_MNIPS_NOSTRIP for such section. - (elf_info_to_howto): Define to mips_info_to_howto_rela. - * elf64-mips.c (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE, - MIPS_GOT_OFST, and MIPS_GOT_DISP. - -Wed Jun 2 11:51:12 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> - - * vms-misc.c (_bfd_vms_hash_newfunc): Fix use of uninitialized - variable. - - * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Avoid ambigous - `else'. - -1999-05-30 Philip Blundell <philb@gnu.org> - - * elf32-arm.h (elf32_arm_relocate_section): Reinstate change of - 1993-03-25 (!!). Take into account the bitmasks for the reloc so - the addend does not overflow into the rest of the word. - -1999-05-29 Nick Clifton <nickc@cygnus.com> - - * bfd-in.h: Amend prototype for - bfd_elf32_arm_process_before_allocation . - * bfd-in.h: Regenerate. - - * elfarm-oabi.c (NUM_ELEM): New macro: Compute the number of - elements in a fixed sized array. - (ARM_ELF_ABI_VERSION): Define. - (ARM_ELF_OS_ABI_VERSION): Define. - (R_ARM_THM_ABS5): Fix rightshift and size. - (R_ARM_THM_PC22): Fix size. - (R_ARM_PLT32): Define Howto. - (find_howto): New function: Locate a howto based on a reloc - number. - (elf32_arm_info_to_howto): Use find_howto if necessary. - (elf32_arm_reloc_map): Change type of field bfd_reloc_val to - bfd_reloc_code_real_type. - (elf32_arm_reloc_map[]): Add entries for BFD_RELOC_VTABLE_INHERIT - and BFD_RELOC_VTABLE_ENTRY. - (elf32_arm_reloc_type_lookup): Use find_howto if necessary. - - * elfarm-nabi.c (NUM_ELEM): New macro: Compute the number of - elements in a fixed sized array. - (ARM_ELF_ABI_VERSION): Define. - (ARM_ELF_OS_ABI_VERSION): Define. - (R_ARM_THM_ABS5): Fix rightshift and size. - (R_ARM_THM_PC22): Fix size. - (elf32_arm_info_to_howto_rel): Rename to elf32_arm_info_to_howto. - (elf32_arm_reloc_map): Change type of field bfd_reloc_val to - bfd_reloc_code_real_type. - - * elf32-arm.h (struct elf32_arm_link_hash_table): Add new field: - no_pipeline_knowledge. - (elf32_arm_link_hash_create): Initialise new field to zero. - (bfd_elf32_arm_process_before_allocation): Add new paraemter: - no_pipeline_knowledge. Use this parameter to initialise the field - in the globals data structure. - (elf32_arm_final_link_relocate): Only add in pipeline offset if - no_pipeline_knowledge is false and the binary is from an old - toolchain. - (elf32_arm_merge_private_data): Generate an error if an attempt is - made to linl together big endian and little endian code. - (elf32_arm_post_process_headers): New function: Initialise the - EI_OSABI and EI_ABIVERSION fields of the newly created ELF program - header. - (elf_backend_post_process_headers): Define. - -1999-05-28 Nick Clifton <nickc@cygnus.com> - - * elf-bfd.h (struct elf_backend_data): Add new field: - elf_backend_post_process_headers. - - * elfxx-target.h (elf_backend_post_process_headers): Define to - NULL if not already defined. - (elfNN_bed): Initialise elf_backend_post_process_headers field. - - * elf.c (prep_headers): Set the EI_OSABI and EI_ABIVERSION fields - to zero. - (_bfd_elf_compute_section_file_positions): Call - elf_backend_post_process_headers if defined. - -1999-05-28 Ian Lance Taylor <ian@zembu.com> - - * configure.in: Check whether getuid and getgid exist. - * archive.c: Define getuid and getgid as macros if HAVE_GETUID or - HAVE_GETGID are not defined, respectively. - (bfd_write_armap): Don't special case on _WIN32 for getuid and - getgid. - * configure.host: Set ac_cv_func_get{ug}id for *-*-windows*. - * configure, config.in: Rebuild. - -1999-05-28 Martin Dorey <mdorey@madge.com> - - * elf32-i960.c: New file. - * elf.c (prep_headers): Handle bfd_arch_i960. - * targets.c (bfd_target_vector): Add &bfd_elf32_i960_vec. - * config.bfd (i960-*-elf*): New target. - * configure.in (bfd_elf32_i960_vec): New target vector. - * Makefile.am (BFD32_BACKENDS): Add elf32-i960.lo. - (BFD32_BACKENDS_CFILES): Add elf32-i960.c. - * Makefile.in, aclocal.m4, configure: Rebuild. - -1999-05-27 Nick Clifton <nickc@cygnus.com> - - * elfarm-oabi.c (elf32_arm_howto_table): Add entry for - R_ARM_PLT32. - (find_howto): New function: Find entries in the - elf32_arm_howto_table. - (elf32_arm_info_to_howto): Use find_howto if the entry cannot be - computed simply. - (elf32_arm_reloc_type_lookup): Add lookup for - BFD_RELOC_ARM_PLT32. - -1999-05-25 Philip Blundell <pb@nexus.co.uk> - - * bfd/elf32-arm.h (elf32_arm_link_hash_newfunc): New function. - (elf32_arm_link_hash_table_create): Use above function as the - constructor for hash table entries. - (elf32_arm_relocate_section): Avoid crash when there is no output - section. - (elf32_arm_final_link_relocate): New parameter h. - (elf32_arm_relocate_section): Pass symbol hash entry to above - routine. - (elf32_arm_gc_sweep_hook, elf32_arm_check relocs): Correct - comments. - -1999-05-25 Catherine Moore <clm@cygnus.com> - - * coff-arm.c (coff_arm_relocate_section): Don't emit - base file entries for pc-relative values. - -1999-05-25 DJ Delorie <dj@cygnus.com> - - * peicode.h (coff_swap_sym_in): When we create the actual section - to reflect the not-there section C_SECTION symbols refer to, - change the symbol class to C_STAT as the section is now really - there. - -1999-05-24 Philip Blundell <pb@nexus.co.uk> - - * elf32-arm.h (elf32_arm_relocate_section): Undo change of - 1999-03-25. - -Mon May 17 13:35:35 1999 Stan Cox <scox@cygnus.com> - - * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed - F_PIC_INT to F_PIC. - * coffcode.h (coff_set_arch_mach_hook): Added F_ARM_2a, and - F_ARM_3M labels. Changed F_PIC_INT to F_PIC. - -1999-05-16 Nick Clifton <nickc@cygnus.com> - - * coff-mcore.c (in_reloc_p): Reinstate. - -1999-05-15 Nick Clifton <nickc@cygnus.com> - - * reloc.c (BFD_RELOC_MCORE_RVA): Define. - * bfd-in2.h: Regenerate. - * coff-mcore.c (in_reloc_p): Remove defintion. - (mcore_coff_howto): Add IMAGE_REL_MCORE_RVA. - (mcore_coff_reloc_type_lookup): Map BFD_RELOC_RVA to - IMAGE_REL_MCORE_RVA. - (coff_mcore_rtype_to_howto): Add special processing for - IMAGE_REL_MCORE_RVA. - (coff_mcore_relocate_section): Add support for - IMAGE_REL_MCORE_RVA. - * elf32-mcore (mcore_elf_howto_): Add R_MCORE_RELATIVE. - (mcore_elf_reloc_type_lookup): Map BFD_RELOC_RVA to - R_MCORE_RELATIVE. - (mcore_elf_relocate_section): Delete redundant case labels. - -Fri May 14 10:59:55 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> - - * elf32-arm.h (elf32_arm_relocate_section): Fix operator - precedence between bit-and and comparison. - -Thu May 13 09:45:23 1999 Joel Sherrill (joel@OARcorp.com) - - * config.bfd (i[3456]86*-*-rtems*, m68k*-*-rtems*): Added to - list of target formats (targ_selvecs). - (i[3456]86*-*-rtemself*, mips*el-*-rtems*): New targets. - (powerpcle*-*rtems*, sh-*-rtemself*): New targets. - -1999-05-10 DJ Delorie <dj@cygnus.com> - - * ecoff.c (_bfd_ecoff_write_armap): give the symtab element a - reasonable mode until "ar x" is smart enough to skip it (fixes - gcc/libgcc.a builds on mips-ecoff targets - - * coffcode.h (styp_to_sec_flags): Explain how COMDATs are supposed - to work. Hack to support MS import libraries, which use different - COMDAT types than GNU. - (coff_slurp_symbol_table): C_SECTION symbols are local; they refer - to implied zero-length sections (see peicode below) - * coffgen.c (coff_get_normalized_symtab): Properly read long MS - filename symbols, which use one *or more* auxents. - * coffswap.h (coff_swap_aux_in): ditto - * peicode.h (coff_swap_sym_in): Build the implied zero-length - sections - -Tue May 11 15:51:58 1999 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c (v850_elf_howto_table): Make partial_inplace false - for all relocations. - -1999-05-10 Catherine Moore <clm@cygnus.com> - - * bfd-in.h (bfd_arm_allocate_interworking_sections): Static - if COFF_IMAGE_WITH_PE. - (bfd_arm_process_before_allocation): Likewise. - (bfd_arm_get_bfd_for_interworking): Likewise. - * coff-arm.c: Likewise. - * bfd-in2.h: Regenerate. - * configure.in (armpe_little_vec): Remove coff-arm.lo. - (armpe_big_vec): Likewise. - * configure: Rebuild. - -1999-05-10 Nick Clifton <nickc@cygnus.com> - - * elf.c (elf_fake_sections): Check for .rel. as start of rel - section, not just .rel. Same for .rela. - -1999-05-07 Nick Clifton <nickc@cygnus.com> - - * coff-mcore.c (coff_mcore_relocate_section): Replace assert about - endianism with an error message. - -Thu May 6 17:09:09 1999 Fred Fish <fnf@be.com> - - * dwarf2.c (read_abbrevs): Change cast of dwarf_abbrev_buffer - assignment from "unsigned char *" to "char *". - (decode_line_info): Likewise for dwarf_line_buffer assignment. - -1999-05-05 Catherine Moore <clm@cygnus.com> - - * coff-arm.c (coff_arm_relocate_section): Add one to - address of ARM_RVA32 thumb functions. - -1999-05-05 Catherine Moore <clm@cygnus.com> - - * elf32-m68k.c (elf32_m68k_set_private_flags): New. - (elf32_m68k_copy_private_bfd_data): New. - (elf32_m68k_merge_private_bfd_data): New. - (elf32_m68k_print_private_bfd_data): New. - (CPU32_FLAG): Define. - (PLT_CPU32_ENTRY_SIZE): Define. - (elf_cpu32_plt0_entry): Declare. - (elf_cpu32_plt_entry): Declare. - (elf_m68k_adjust_dynamic_symbol): Generate cpu32 plt entries. - (elf_m68k_finish_dynamic_symbol): Likewise. - (elf_m68k_finish_dynamic_sections): Likewise. - (elf_backend_plt_header_size): Remove definition. - (bfd_elf32_bfd_copy_private_bfd_data): Define. - (bfd_elf32_bfd_merge_private_bfd_data): Define. - (bfd_elf32_bfd_set_private_flags): Define. - (bfd_elf32_bfd_print_private_bfd_data): Define. - -Mon May 3 09:24:49 1999 Jeffrey A Law (law@cygnus.com) - - * som.c (som_fixup_formats): Fix comments for R_SHORT_PCREL_MODE - and R_LONG_PCREL_MODE. - -1999-04-29 Nick Clifton <nickc@cygnus.com> - - * coff-mcore.c (coff_mcore_relocate_section): Fix typos. - -Fri Apr 28 16:36:19 1999 Stan Cox <scox@cygnus.com> - - * elf32-sh.c (sh_elf_relocate_section): Include relocation addend - in relocation calculation. - -1999-04-26 Tom Tromey <tromey@cygnus.com> - - * aclocal.m4, configure: Updated for new version of libtool. - -1999-04-21 Nick Clifton <nickc@cygnus.com> - - * coff-mcore.c: Add support for mcore relocs. - -1999-04-20 Gavin Romig-Koch <gavin@cygnus.com> - - * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): Scrap the - incorrect use EF_MIPS_xxBITPTRS. - -1999-04-18 Ian Lance Taylor <ian@zembu.com> - - * elf64-alpha.c (elf64_alpha_relax_section): Remove unused local - variable insn. - - * bfd-in2.h: Rebuild. - * libbfd.h: Rebuild. - -Sat Apr 17 20:55:15 1999 Catherine Moore <clm@cygnus.com> - - * coff-arm.c (coff_arm_rtype_to_howto): Remove ARM26D transform. - (coff_arm_relocate_section): Add ARM26D transform. Only - change to ARM26D for relocateable links. - -1999-04-16 Gavin Romig-Koch <gavin@cygnus.com> - - * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): New. - (bfd_elf32_bfd_print_private_bfd_data): New. - -1999-04-15 Doug Evans <devans@casey.cygnus.com> - - * elf32-arm.h (elf32_arm_final_link_relocate): For R_ARM_THM_ABS5, - refetch addend if USE_REL, add many comments regarding current state. - For R_ARM_THM_PC22, refetch addend if USE_REL, simplify. - * elfarm-nabi.c (elf32_arm_howto_table): For R_ARM_THM_ABS5, fix - size and rightshift. For R_ARM_THM_PC22, fix bitsize. - * elfarm-oabi.c (elf32_arm_howto_table): Ditto. - -Wed Apr 14 14:33:08 1999 Richard Henderson <rth@cygnus.com> - - * elf32-mips.c (_bfd_mips_elf_read_ecoff_info): Zero `debug'. - * elf64-alpha.c (elf64_alpha_read_ecoff_info): Likewise. - -1999-04-13 David Mosberger <davidm@hpl.hp.com> - - * dwarf2.c (decode_line_info): Don't truncate address to least - significant 32 bits (breaks 64 bit targets). - (lookup_address_in_function_table): Ditto. - (comp_unit_contains_address): Ditto. - -Tue Apr 13 21:27:19 1999 Catherine Moore <clm@cygnus.com> - - * coff-arm.c (arm_emit_base_file_entry): New routine. - (A2T3_OFFSET): Define. - (T2A3_OFFSET): Define. - (coff_arm_relocate_section): Emit base file entries for interworking - stubs. - -1999-04-13 Philip Blundell <philb@gnu.org> - - * elfarm-nabi.c (elf32_arm_howto_table): Add dummy entries for - relocs 17 through 19. - -Sun Apr 11 01:25:17 1999 Richard Henderson <rth@cygnus.com> - - * elfcode.h: Remove fnmatch.h. - * elflink.h (elf_link_assign_sym_version): Call back to ld - instead of calling fnmatch. - - * config.bfd (i?86-*-beoself): Include pe vecs. - -Sun Apr 11 01:14:06 1999 Richard Henderson <rth@cygnus.com> - - * elf32-i386.c (elf_i386_finish_dynamic_sections): Allow .plt - to go missing. - -1999-04-10 Richard Henderson <rth@cygnus.com> - - * elf32-i386.c (elf_i386_relocate_section): Mind no_undefined - when trying to resolve dynamic symbol references. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-mips.c (mips_elf_relocate_section): 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. - * elflink.h (elf_link_output_extsym): Likewise. - -Sat Apr 10 15:12:09 1999 Richard Henderson <rth@cygnus.com> - - * section.c (_bfd_strip_section_from_output): New function moved from - * elf64-alpha.c (elf64_alpha_strip_section_from_output): ... here. - * elf32-i386.c (elf_i386_size_dynamic_sections): Use it. - * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. - * elf32-mips.c (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-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. - * bfd-in2.h: Update. - -1999-04-09 Ian Lance Taylor <ian@zembu.com> - - * elf64-sparc.c: Fix incorrect calls to bfd_check_overflow. - -1999-04-08 Nick Clifton <nickc@cygnus.com> - - * coff-mcore.c: New File: Support for mcore-pe targets. - * cpu-mcore.c: New File: Support for mcore targets. - * elf32-mcore.c: New File: Support for mcore-elf target. - * pe-mcore.c: New File: Definitions for mcore-pe target. - * pei-mcore.c: New File: Definitions for mcore-pei target. - * Makefile.am: Add support for MCore targets. - * Makefile.in: Regenerate. - * config.bfd: Add support for MCore targets. - * configure.in: Add support for MCore targets. - * configure: Regenerate. - * archures.c: Add support for MCore architecture. - * bfd-in2.h: Regenerate. - * coffcode.h: Add support for mcore-pe targets. - * elf.c: Add support for mcore-elf target. - * reloc.c: Add support for MCore relocs. - * targets.c: Add support for MCore targets. - -1999-04-07 Nick Clifton <nickc@cygnus.com> - - * elfarm-nabi.c (elf32_arm_howto_table): Add entries for - R_ARM_XPC25 and R_ARM_THM_XPC22. - (elf32_arm_reloc_map): Remove redundant entries. - -1999-04-06 Ian Lance Taylor <ian@zembu.com> - - * sysdep.h (LC_MESSAGES): Never define. - -1999-04-06 Chris Torek <torek@bsdi.com> - - * reloc.c (bfd_check_overflow): Add addrsize parameter. Change - all callers. Rewrite completely. - (_bfd_relocate_contents): Rewrite overflow checking. - * bfd-in2.h: Rebuild. - -1999-04-05 Ian Lance Taylor <ian@zembu.com> - - From Gabriel Paubert <paubert@iram.es>: - * elf32-ppc.c (ppc_elf_howto_raw): Set R_PPC_GOT16_LO, - R_PPC_PLT16_LO and R_PPC_SECTOFF_LO to be complain_overflow_dont. - Set R_PPC_PLT16_HA, R_PPC_SECTOFF_HA and R_PPC_EMB_NADDR16_HA to - have a rightshift of 16 and use ppc_elf_addr16_ha_reloc. - * ppcboot.c (ppcboot_vec): Use little endian routines for - headers. - - * elf.c (elfcore_strndup): Only define if it will be used. - * elf32-ppc.c (ppc_elf_relax_section): Remove unused locals irel - and irelend. - (ppc_elf_check_relocs): Remove unused local i. - (ppc_elf_gc_mark_hook): Add default case to switch. - - From Bernd Nitzler <nitzler@kagcpd01.ag01.kodak.COM>: - * srec.c (srec_scan): Accept \r in symbol definitions. - (srec_object_p): Set HAS_SYMS if we saw any symbols. - (symbolsrec_object_p): Likewise. - -1999-04-04 Don Bowman <don@pixsci.com> - - * config.bfd: Add mips*el-*-vxworks* and mips*-*-vxworks*. - -1999-04-04 Ian Lance Taylor <ian@zembu.com> - - * dwarf1.c (parse_line_table): Remove unused locals last_pc and - last_line. - * elf-bfd.h (_bfd_elfcore_section_from_phdr): Declare. - * elf32-i386.c (elf_i386_gc_mark_hook): Add default case to - switch. - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove unused - local i. - * syms.c (_bfd_stab_section_find_nearest_line): Remove unused - local val. - -1999-03-31 Nick Clifton <nickc@cygnus.com> - - * config.bfd: Add support for arm-epoc-pe target. - * configure.in: Add support for arm-epoc-pe target. - * configure: Regenerate. - * targets.c: Add support for arm-epoc-pe target. - * coff-arm.c: Allow header files to override definition of - TARGET_UNDERSCORE and USER_LABEL_PREFIX. - * pe-arm.h: Allow previous header files to override definition of - TARGET_LITTLE_SYM and TARGET_BIG_SYM. - * pei-arm.h: Allow previous header files to override definition of - TARGET_LITTLE_SYM and TARGET_BIG_SYM. - * epoc-pe-arm.c: New file. Support arm-epoc-pe target. - * epoc-pei-arm.c: New file. Support arm-epoc-pei target. - -1999-03-30 Nick Clifton <nickc@cygnus.com> - - * elf.c (elf_map_symbols): Handle the case where section - symbols are generated for content-less sections which are - not mapped to the output file. - - * linker.c: Replace direct references to fields in BFD structure - with accessor macros. - - * elflink.h: Replace direct references to fields in BFD structure - with accessor macros. - -1999-03-25 Philip Blundell <pb@nexus.co.uk> - - * config.bfd: Eliminate redundancy in checks for Linux/ARM. - - * elf32-arm.h (elf32_arm_relocate_section): Take the rightshift into - account when adjusting section symbols during a partial link. - -1999-03-24 Nick Clifton <nickc@cygnus.com> - - * coff-sparc.c (struct coff_reloc_map): Change type of field - 'bfd_reloc_val' to bfd_reloc_code_real_type. - * elf-m10200.c (struct mn10200_reloc_map): Ditto. - * elf-m10300.c (struct mn10300_reloc_map): Ditto. - * elf32-arc.c (struct arc_reloc_map): Ditto. - * elf32-d10v.c (struct d10v_reloc_map): Ditto. - * elf32-d30v.c (struct d30v_reloc_map): Ditto. - * elf32-fr30.c (struct fr30_reloc_map): Ditto. - * elf32-m32r.c (struct m32r_reloc_map): Ditto. - * elf32-sh.c (struct elf_reloc_map): Ditto. - * elf32-sparc.c (struct elf_reloc_map): Ditto. - * elf32-v850.c (struct v850_reloc_map): Ditto. - * elf64-sparc.c (struct elf_reloc_map): Ditto. - * elfarm-nabi.c (struct elf32_arm_reloc_map): Ditto. - * elfarm-oabi.c (struct elf32_arm_reloc_map): Ditto. - -1999-03-17 Martin Hunt <hunt@cygnus.com> - - * syms.c (_bfd_stab_section_find_nearest_line): Changed this - function so source-level assembly works. If multiple N_SOs - are seen without and N_FUNs, create an indextable entry with - a NULL function name. - -1999-03-16 Gavin Romig-Koch <gavin@cygnus.com> - - * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data) Allow merging - of certian similar cpus. - -1999-03-16 Gavin Romig-Koch <gavin@cygnus.com> - - * elf32-mips.c (_bfd_mips_elf_final_write_processing): - Add the 5000. Change the architecture for the 5400 to mips4. - (elf_mips_mach): Add r5000. - -1999-03-11 Doug Evans <devans@casey.cygnus.com> - - * cpu-i960.c (scan_i960_mach): Recognize i960:ka_sa and i960:kb_sb. - -1999-03-11 Nick Clifton <nickc@cygnus.com> - - * binary.c (binary_set_section_contents): Generate warning about - huge file offsets for any section that will occupy file space, not - just those that are loadable. - -1999-02-24 Jim Blandy <jimb@zwingli.cygnus.com> - - * libbfd.h: Regenerate after Nick Clifton's Feb 17 changes. - -1999-02-22 Jim Lemke <jlemke@cygnus.com> - - * elf32-ppc.c: Add ppc_elf_relax_section() for the ld option mpc860c0. - -Mon Feb 22 18:26:51 1999 Ian Lance Taylor <ian@cygnus.com> - - * elf-bfd.h (ELF_LINK_HASH_REF_REGULAR_NONWEAK): Define. - * elflink.h: Revert all changes since Feb 16. Instead: - (elf_link_add_object_symbols): Set REF_REGULAR_NONWEAK flag if - appropriate. Copy it to version symbols. - (elf_fix_symbol_flags): Set REF_REGULAR_NONWEAK for non ELF - symbols if appropriate. - (elf_adjust_dynamic_symbol): Set REF_REGULAR_NONWEAK for weakdef - symbol if appropriate. - (elf_link_output_extsym): If symbol is marked as undefined, and - has no nonweak references, mark it as weak undefined. - -Fri Feb 19 16:01:12 1999 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_merge_symbol): When overriding a dynamic - definition with a weak undefined symbol, set NEEDS_PLT if it is a - function. - (elf_link_add_object_symbols): Don't copy the other field if we - are overridding. - -Thu Feb 18 18:07:43 1999 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_merge_symbol): Do not merge any symbol from a - shared object with a weak undefined symbol. - -1999-02-18 Nick Clifton <nickc@cygnus.com> - - * elfarm-nabi.c: Set partial_inplace back to false. - -1999-02-17 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (TARGET_UNDERSCORE): Re-enable. - (USER_LABEL_PREFIX): Set to "_". - - The following patches are from: Scott Bambrough - <scottb@corelcomputer.com> - - * libaout.h (M_ARM6_NETBSD): Set to 143. - - * reloc.c: Add ARM PIC relocs: BFD_RELOC_ARM_GOT12, - BFD_RELOC_ARM_GOT32, BFD_RELOC_ARM_JUMP_SLOT, BFD_RELOC_ARM_COPY, - BFD_RELOC_ARM_GLOB_DAT, BFD_RELOC_ARM_PLT32, - BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, BFD_RELOC_ARM_GOTPC. - * bfd-in2.h: Regenerate. - - * elfarm-nabi.c (elf32_arm_howto_table): Set partial_inplace to - 'true' as REL relocs are now being used. Add new PIC relocs: - R_ARM_COPY, R_ARM_GLOB_DAT, R_ARM_JUMP_SLOT, R_ARM_RELATIVE, - R_ARM_GOTOFF, R_ARM_GOTPC, R_ARM_GOT32, R_ARM_PLT32. - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Check byte order - of targets. - (elf32_arm_final_link_relocate): Change parameters so that entire - reloc is passed. Add support for PIC relocs. - (elf32_arm_relocate_section): Pass entire reloc to - elf32_arm_final_link_relocate. - (elf32_arm_check_relocs): Handle new PIC relocs. - (elf32_arm_adjust_dynamic_symbol): New function. - (elf32_arm_size_dynamic_sections): New function. - (elf32_arm_discard_copies): New function. - (elf32_arm_finish_dynamic_symbol): New function. - (elf32_arm_finish_dynamic_sections): New function. - (ELF_MAXPAGE_SIZE): Define. - (bfd_elf32_bfd_reloc_type_lookup): Define. - (elf_backend_relocate_section): Define. - (elf_backend_adjust_dynamic_symbol): Define. - (elf_backend_create_dynamic_sections): Define. - (elf_backend_finish_dynamic_symbol): Define. - (elf_backend_finish_dynamic_sections): Define. - (elf_backend_size_dynamic_sections): Define. - (elf_backend_plt_readonly): Define. - (elf_backend_want_got_plt): Define. - (elf_backend_want_plt_sym): Define. - -Wed Feb 17 12:02:26 1999 Stan Cox <scox@cygnus.com> - - * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Make reginfo - sections SEC_LINK_ONCE and SEC_LINK_DUPLICATES_SAME_SIZE. - (_bfd_mips_elf_fake_sections): Likewise. - -Wed Feb 17 12:07:23 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> - - * elfarm-oabi.c (bfd_elf32_arm_allocate_interworking_sections, - bfd_elf32_arm_get_bfd_for_interworking, - bfd_elf32_arm_process_before_allocation): Define to avoid clash - with elfarm-nabi.c. - - * elf32-arm.h: Don't declare elf32_arm_info_to_howto. - (elf32_thumb_to_arm_stub, elf32_arm_to_thumb_stub, - elf32_arm_find_nearest_line): Make them static. - -Tue Feb 16 22:44:37 1999 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_merge_symbol): Add pflags parameter. Change all - callers. Do not merge a definition from a shared object with a - weak undefined symbol. - (elf_link_add_object_symbols): Do not change the symbol type or - size if the old symbol overrides the new one. - -1999-02-08 Nick Clifton <nickc@cygnus.com> - - * config.bfd: Add support for strongarm target. - -Mon Feb 8 11:18:14 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> - - * elf32-m68k.c (reloc_map): Use the correct types for the struct - fields instead of unsigned char. - -Fri Feb 5 00:22:36 1999 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am: Rebuild dependencies. - * Makefile.in: Rebuild. - -Thu Feb 4 22:30:13 1999 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Change AC_PREREQ to 2.13. Remove AM_CYGWIN32. - Change AM_EXEEXT to AC_EXEEXT and AM_PROG_INSTALL to - AC_PROG_INSTALL. Add comments to uses of AC_DEFINE. - * acinclude.m4: Add comments to uses of AC_DEFINE. - * acconfig.h: Remove. - * configure: Rebuild with current autoconf/automake. - * aclocal.m4: Likewise. - * config.in: Likewise. - * Makefile.in: Likewise. - -1999-02-04 DJ Delorie <dj@cygnus.com> - - * libbfd.c (real_read): don't call fread for zero bytes. This - covers up a bug (or misuse of bfd) that's exposed by Solaris. - -Thu Feb 4 12:38:10 1999 Stan Cox <scox@cygnus.com> - - * elf32-mips.c (mips_elf_relocate_section): Insure that the target - of a jump is in the current 256 MB region. - -Thu Feb 4 12:15:38 1999 Ian Lance Taylor <ian@cygnus.com> - - * format.c (bfd_check_format_matches): Change last patch to only - take effect for the binary target. - -Wed Feb 3 19:40:12 1999 Ian Lance Taylor <ian@cygnus.com> - - * elf32-i386.c (elf_i386_reloc_type_lookup): Add BFD_RELOC_CTOR. - -Wed Feb 3 15:02:44 1999 Catherine Moore <clm@cygnus.com> - - * elf32-fr30.c (fr30_elf_check_relocs): New routine. - -Tue Feb 2 21:38:28 1999 Ian Lance Taylor <ian@cygnus.com> - - * format.c (bfd_check_format_matches): If the target was - previously specified, don't check other targets when checking for - an archive file. - -Tue Feb 2 18:16:43 1999 Catherine Moore <clm@cygnus.com> - - * elf32-arm.h (elf32_arm_reloc_map): Removed. - (elf32_arm_reloc_type_lookup): Removed - * elfarm-nabi.c (elf32_arm_reloc_map): New. - (elf32_arm_reloc_type_lookup): New. - * elfarm-oabi.c (elf32_arm_reloc_map): New. - (elf32_arm_reloc_type_lookup): New. - -Mon Feb 1 19:49:21 1999 Catherine Moore <clm@cygnus.com> - - * elfarm-nabi.c: Renamed from elf32-arm-newabi.c. - * elfarm-oabi.c: Renamed from elf32-arm-oldabi.c - * Makefile.am: Use new files. - * Makefile.in: Regenerate. - * configure.in: Use new files. - * configure: Regenerate. - -1999-02-01 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c (fr30_elf_gc_mark_hook): New function. - (fr30_elf_gc_sweep_hook): New function. - (elf_backend_can_gc_sections): Define. - -Mon Feb 1 12:21:47 1999 Catherine Moore <clm@cygnus.com> - - * targets.c (bfd_target_vector): Add bfd_elf32_littlearm_oabi_vec - and bfd_elf32_bigarm_oabi_vec. - -Mon Feb 1 11:46:31 1999 Catherine Moore <clm@cygnus.com> - - * Makefile.am (elf32-arm-oldabi.lo): New. - (elf32-arm-newabi.lo): New. - * Makefile.in: Regenerate. - * config.bfd (thumb-*-elf): Remove definition of targ_underscore. - (arm-*-elf): Likewise. - (arm-*-oabi): New. - (thumb-*-oabi): New. - * configure: Regenerate. - * configure.in (bfd_elf32_littlearm_oabi_vec): New. - (bfd_elf32_bigarm_oabi_vec): New. - * elf32-arm-newabi.c: New. - * elf32-arm-oldabi.c: New. - * elf32-arm.c: Removed. - * elf32-arm.h: New. - -Mon Feb 1 11:52:12 1999 Frank Ch. Eigler <fche@cygnus.com> - - * binary.c (binary_set_section_contents): Omit warnings for - unloadable sections. - -1999-01-31 Michael Meissner <meissner@cygnus.com> - - * config.bfd (powerpc{,le}-*-vxworks*): Add aliases to - powerpc{,le}-*-eabi. - -1999-01-29 Nick Clifton <nickc@cygnus.com> - - * dwarf2.c (read_unsigned_leb128): Remove unused variables. - * dwarf2.c (read_signed_leb128): Remove unused variables. - -Fri Jan 29 00:47:21 1999 H.J. Lu <hjl@gnu.org> - - * elf.c (assign_file_positions_for_segments): Only adjust - p_align when needed. - -Thu Jan 28 20:05:22 1999 Ian Lance Taylor <ian@cygnus.com> - - * binary.c (binary_set_section_contents): Don't return early for a - non-loadable section, in case the first section is non-loadable. - Don't set the low lma for a SEC_NEVER_LOAD section. From Maciej - W. Rozycki <macro@ds2.pg.gda.pl>. - -1999-01-28 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c (fr30_reloc_map): Add R_FR30_GNU_VTINHERIT and - R_FR30_GNU_VTENTRY relocs. - -Thu Jan 28 11:08:16 1999 Catherine Moore <clm@cygnus.com> - - * elflink.h (elf_link_output_sym): Zero syms which are - part of sections which have been excluded. - -Wed Jan 27 13:35:35 1999 Stan Cox <scox@cygnus.com> - - * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed F_PIC - to F_PIC_INT. - * coffcode.h (coff_set_arch_mach_hook): Removed F_ARM_2a and - F_ARM_3M labels. Changed F_PIC to F_PIC_INT. - -1999-01-27 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c (fr30_elf_howto_table): Fix name of R_FR30_48 - relocation. - (fr30_final_link_relocate): Use computed value as result of - relocation. - -1999-01-26 Frank Ch. Eigler <fche@cygnus.com> - - * binary.c (binary_set_section_contents): Emit warning for - huge file offsets due to widely-dispersed section LMAs. - -Mon Jan 18 03:35:35 1999 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (assign_file_positions_for_segments): If not D_PAGED, - align first section to largest section alignment, not first - section alignment. - -1999-01-04 Jason Molenda (jsm@bugshack.cygnus.com) - - * configure.in: Require autoconf 2.12.1 or higher. - -Tue Dec 22 15:21:41 1998 Catherine Moore <clm@cygnus.com> - - * archures.c (bfd_mach_i386_i386_intel_syntax): Define. - * bfd-in2.h: Likewise. - * cpu-i386.c (bfd_i386_arch_intel_syntax): New. - -1998-12-16 Gavin Romig-Koch <gavin@cygnus.com> - - * archures.c,bfd-in2.h (bfd_mach_mips4111): New. - * cpu-mips.c: Add support for and independent 4111. - * elf32-mips.c (elf_mips_mach): E_MIPS_MACH_4111 -> bfd_mach_mips4111. - (_bfd_mips_elf_final_write_processing): - bfd_mach_mips4111 -> E_MIPS_ARCH_3 | E_MIPS_MACH_4111. - -1998-12-15 Gavin Romig-Koch <gavin@cygnus.com> - - * elf32-mips.c (elf_mips_abi_name): New. - (_bfd_mips_elf_merge_private_bfd_data): Compare EF_MIPS_ABI flags. - -1998-12-12 Gavin Romig-Koch <gavin@cygnus.com> - - * elf32-mips.c (_bfd_mips_elf_final_write_processing): - Handle bfd_mach_mips4300. - -1998-12-11 Ulrich Drepper <drepper@cygnus.com> - - * elf32-i386.c: Remove leaked development code from patch - 1998-12-10 by Richard Henderson. - -1998-12-10 Richard Henderson <rth@cygnus.com> - - * elf32-i386.c (elf_i386_relocate_section): Don't fail relocations - in debug sections for symbol defined externally. - -Thu Dec 10 10:58:38 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> - - * targets.c (bfd_target_vector): Remove duplicate entry for - tekhex_vec. - -1998-12-09 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c (fr30_elf_howto_table): Set src_mask fields to 0 - since we are using RELAs. - -Tue Dec 8 22:15:48 1998 Ian Lance Taylor <ian@cygnus.com> - - SCO Open Server Release 5 core file support, from Jouke Numan - <jnuman@hiscom.nl>: - * sco5-core.c: New file. - * configure.in (i[3456]86-*-sco3.2v5*): Use sco5-core.lo. - (sco5-core.lo): Define SCO5_CORE in COREFLAG. - * Makefile.am: Rebuild dependencies. - (OPTIONAL_BACKENDS): Add sco5-core.lo. - (OPTIONAL_BACKENDS_CFILES): Add sco5-core.c. - * bfd.c (struct _bfd): Add sco5_core_data field to tdata. - * targets.c (sco5_core_vec): Add to target list if SCO5_CORE. - * bfd-in2.h, configure, Makefile.in: Rebuild. - -Tue Dec 8 19:38:42 1998 Mark Klein <mklein@dis.com> - - * config.bfd (hppa*-*-mpeix*): New target. - * configure.in: Add AC_HEADER_DIRENT. - (hppa*-*-mpeix*): New target. - * configure.host (hppa*-*-mpeix*): New host. - * hpux-core.c: Check HOST_HPPAMPEIX. Use HAVE_DIRENT_H and - friends rather than just including <sys/dir.h>. - * som.h (struct som_symbol): Add hppa_priv_level and apto - tc_data. Change all users. - (struct somdata): Add comp_unit field. - (obj_som_compilation_unit): Define. - (bfd_som_attach_compilation_unix): Declare. - * som.c: Check HOST_HPPAMPEIX. - (struct som_misc_symbol_info): Add new field priv_level. - (som_object_setup): Add current_offset parameter. Change all - callers. - (setup_sections): Likewise. - (som_object_p): For EXECLIBMAGIC, read the lst header. - (som_write_symbol_strings): Add compilation_unit parameter. - Change all callers. - (som_finish_writing): Write out compilation_unit. - (som_bfd_derive_misc_symbol_info): Set priv_level. - (som_build_and_write_symbol_table): Set xleast field to 3. - (som_slurp_symbol_table): Set symbol priv_level. - (bfd_som_attach_compilation_unit): New function. - (som_bfd_ar_write_symbol_stuff): Set xleast field to 3. Set - priv_level into symbol_value. - * configure, config.in: Rebuild. - -Tue Dec 8 16:21:35 1998 Ian Lance Taylor <ian@cygnus.com> - - * hpux-core.c (hpux_core_core_file_p): Change call to nonexistent - warning function to call _bfd_error_handler instead. - - * libbfd.c (COERCE32): Cast through unsigned long and long to - avoid bug in old version of gcc. - - * elf64-alpha.c (elf64_alpha_additional_program_headers): Remove. - (elf_backend_additional_program_headers): Don't define. - -1998-12-08 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c (fr30_final_link_relocate): Fix PC relative - relocations to include offset of 2 included in the insns, and the - offset of the relocs within the section. - -Wed Dec 2 15:03:59 1998 David Taylor <taylor@texas.cygnus.com> - - The following changes were made by David Taylor - <taylor@texas.cygnus.com>, Edith Epstein - <eepstein@sophia.cygnus.com>, Jim Blandy - <jimb@zwingli.cygnus.com>, and Elena Zannoni - <ezannoni@kwikemart.cygnus.com> as part of the project to merge in - changes originally made by HP; HP did not create ChangeLog - entries. - - * aclocal.m4, configure, Makefile.in: Rebuilt using latest - automake macro library. - - * hpux-core.c (hpux_core_core_file_p): this function now - understands HPUX 10.30 thread info. Yes, the thread stacks can be - found in the corefile! Also, in hpux_core_core_file_p, if we - encounter a section with an unknown type, don't punt. Instead, - just skip it. Also, count the number of sections of known type - that we encounter. If we encounter at least one good one, then - we'll declare that the file is a core file. If we encounter any - unknown ones but some known ones, then we'll issue a warning (but - still declare it to be a core file). Also, correctly decide when a - file is not a core. - (PROC_INFO_HAS_THREAD_ID): define if CORE_ANON_SHMEM defined. - (CORE_ANON_SHMEM): define if not defined. - (hpux_core_struct): add members lwpid and user_tid. - (core_kernel_thread_id, core_user_thread_id): new macros. - (make_bfd_asection): use bfd_alloc to allocate room for a copy of - the name before storing it in the bfd. - (hpux_core_core_file_p): handle threads. - - * libhppa.h (GET_FIELD): protect against redefinition. - (HPPA_WIDE): define. - (GET_FIELD): define. - (GET_BIT): define. - (MASK): define. - (CATENATE): define. - (ELEVEN): define. - (sign_extend): redefine. - (assemble_6): define. - (assemble_12): rewrite. - (assemble_16): define. - (assemble_16a): define. - (assemble_17): rewrite. - (assemble_22): define. - -1998-12-07 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c (fr30_final_link_relocate): Using signed - relocations for signed values. - -Sun Dec 6 16:30:33 1998 Ian Lance Taylor <ian@cygnus.com> - - * mipsbsd.c (MY(set_arch_mach)): Make static. - * aoutx.h (NAME(aout,machine_type)): For bfd_arch_mips, use - bfd_mach_mips* macros rather than simple numbers. - - COFF weak symbol support, based on patches from Mark Elbrecht - <snowball3@usa.net>: - * coffcode.h (coff_slurp_symbol_table): Handle C_WEAKEXT. - * coffgen.c (coff_renumber_symbols): Handle weak symbols. - (coff_write_alien_symbol): Likewise. - * cofflink.c (coff_link_check_ar_symbols): Likewise. - (coff_link_add_symbols): Likewise. - (_bfd_coff_link_input_bfd): Likewise. - (_bfd_coff_write_global_sym): Likewise. - - * elf.c (copy_private_bfd_data): Always initialize the - includes_phdrs field. - - * elflink.h (elf_fix_symbol_flags): Check for case where a non-ELF - file defines a symbol first mentioned in an ELF file. - - * bfd-in.h: Always define BFD_HOST_64_BIT and BFD_HOST_U_64_BIT if - possible, rather than only if BFD64. - * elflink.h (compute_bucket_count): Just check BFD_HOST_U_64_BIT, - not __GNUC__. - * bfd-in2.h: Rebuild. - - * srec.c (srec_set_section_contents): Correct test to avoid - switching to 4 byte addresses after seeing a second section which - requires 3 byte addresses. From Joel Schantz - <joel.schantz@argosys.boeing.com>. - - * config.bfd (m68*-*-gnu*): New target. From Aymeric Vincent - <aymeric.vincent@emi.u-bordeaux.fr>. - -1998-12-04 Jim Blandy <jimb@zwingli.cygnus.com> - - * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Fix logic to - decide whether the output file is -mrelocatable-lib, - -mrelocatable, or neither. (gdb.base/nodebug.exp) - -1998-12-03 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c: Add support for R_FR30_48 reloc. - * reloc.c: Add BFD_RELOC_FR30_48 relocation. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate - -Wed Dec 2 00:58:37 1998 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_adjust_dynamic_symbol): Warn on an attempt to - link against a dynamic symbol with no type or size. - -1998-12-01 Ulrich Drepper <drepper@cygnus.com> - - * elf32-i386.c (i386_check_relocs) [R_386_32]: Don't emit - relocation for section which does not get loaded. - (elf_i386_relocate_section) [R_386_32]: Likewise. - -Tue Dec 1 11:33:33 1998 Jim Wilson <wilson@cygnus.com> - - * coff-h8300.c (h8300_bfd_link_add_symbols): Make reloc_size, - reloc_count and i long instead of unsigned long. Handle error - return from bfd_canonicalize_reloc. - -1998-12-01 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_relocate_section): Detect the absence of - a hash table. - -Mon Nov 30 15:28:09 1998 J"orn Rennecke <amylaar@cygnus.co.uk> - - * elf32-sh.c (elf/sh.h): Include. - sh_reloc_type: Delete. Changed all references to elf_sh_reloc_type. - (sh_elf_howto_tab): Add HOWTO for R_SH_SWITCH8. - (sh_reloc_map): Map BFD_RELOC_8_PCREL to R_SH_SWITCH8. - (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8. - * Makefile.in: Add dependency of elf32-sh.lo on $(INCDIR)/elf/sh.h. - -Fri Nov 27 17:51:38 1998 Geoff Keating <geoffk@ozemail.com.au> - - * elflink.h (compute_bucket_count): Don't allow minsize==0, it - causes division by zero later on. - -Thu Nov 26 11:19:35 1998 Dave Brolley <brolley@cygnus.com> - - * elf32-fr30.c (fr30_elf_pc9_reloc,fr30_elf_pc12_reloc): Not - needed. - -1998-11-25 DJ Delorie <dj@cygnus.com> - - * coff-i386.c (i3coff_object_p): Remove hack. Use new emulation - hook now. - -Tue Nov 24 10:25:27 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c (fr30_elf_relocate_section): Call - fr30_final_link_relocate. - (fr30_final_link_relocate): New function: Handle I20 and I32 - relocs. - (fr30_elf_i32_reloc): New function: Handle I32 relocs. - (fr30_elf_pc9_reloc): New function: Handle 9_PCREL relocs. - (fr30_elf_pc12_reloc): New function: Handle 12_PCREL relocs. - - * elf32-v850.c (v850_elf_relocate_section): Reset hi16s reloc - chain to empty. - - The following changes are based on a patch submitted by Gianluca - Moro <glctr@abc.it>: - - (v850_elf_perform_relocation): Only update a hi16s reloc if it has - not already been updated. - (find_remembered_hi16s_reloc): New parameter 'already_found' - returns state of remembered hi16s reloc. - (remember_hi16s_reloc): Set 'found' field to false. - (hi16s_location): Add 'found' field. - -1998-11-23 DJ Delorie <dj@cygnus.com> - - * coff-i386.c (bfd_pe_dll_not_recognized_hack): the linker wants - to see .DLL files as unrecognized. - (i3coff_object_p): Sorry, had to hack it to not recognize these - files (pei-i386) on request. - -1998-11-23 DJ Delorie <dj@cygnus.com> - - * opncls.c (bfd_make_readable): need more cleanup for symbols and - relents. Call bfd_check_format to reinitialize. - -Fri Nov 20 14:21:36 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c (fr30_elf_relocate_section): Remove spurious - warnings. - -Thu Nov 19 14:42:15 1998 Geoffrey Noer <noer@cygnus.com> - - * aclocal.m4: regenerate - * configure: regenerate - -Tue Nov 17 20:23:35 1998 Richard Henderson <rth@cygnus.com> - - * elf-bfd.h (struct elf_link_hash_entry): Add vtable_entries_size. - * elf.c (_bfd_elf_link_hash_newfunc): Clear it. - * elflink.h (elf_gc_propagate_vtable_entries_used): Copy it, and - respect it as an upper bound on what memory to reference. - (elf_gc_smash_unused_vtentry_relocs): Likewise. - (elf_gc_record_vtentry): Handle as-yet undefined vtables. Set and - update vtable_entries_size appropriately. - -Tue Nov 17 15:28:31 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-fr30.c (fr30_reloc_type_lookup): Used integers to hold - reloc number. - -Mon Nov 16 22:19:21 1998 DJ Delorie <dj@cygnus.com> - - * archive.c (bfd_ar_hdr_from_filesystem): support BFD_IN_MEMORY - bfds; they have no "file" so we fake it. - * bfd-in2.h: add bfd_make_writable and bfd_make_readable (regen) - * libbfd.c (bfd_write): Allow writing to BFD_IN_MEMORY bfds by - resizing the memory buffer. - * opncls.c (bfd_make_writable): New function; lets you write a - bfd_create'd bfd to an in-memory buffer. - (bfd_make_readable): New function; lets you read back that buffer - as if it were from bfd_openr. Used to build generated archive - members (winsup's ld's dlltool) - -Mon Nov 16 19:15:19 1998 Dave Brolley <brolley@cygnus.com> - - * po/bfd.pot: Regenerated. - -Mon Nov 16 10:57:06 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (hi16s_location): Replaced fixed size array with - linked list. - -Sun Nov 15 20:28:25 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_relax_section): Search for the proper - element of the gotentry list for local symbols too. - (elf64_alpha_relocate_section): Unify local and global handling. - Assert that gotent->use_count > 0. - -Sat Nov 14 15:16:01 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure.in (vms_alpha_vec): Rename from evax_alpha_vec, and - update for file name changes of July 2, 1998. - (vms_vax_vec): New. - * configure: Rebuild. - -Thu Nov 12 19:19:54 1998 Dave Brolley <brolley@cygnus.com> - - * po/bfd.pot: Regenerated. - -Tue Nov 10 16:17:06 1998 Geoffrey Noer <noer@cygnus.com> - - * acinclude.m4, config.bfd: detect cygwin* instead of cygwin32*. - * aclocal.m4, configure: regenerate - -Tue Nov 10 15:13:59 1998 Nick Clifton <nickc@cygnus.com> - - * elf.c (prep_headers): Add support for bfd_arch_fr30. - -Tue Nov 10 13:37:36 1998 Felix Lee <flee@cygnus.com> - - * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE, - BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): didn't define macro when value - was cached. - * aclocal.m4, configure: regenerated. - -Tue Nov 10 14:31:01 1998 Catherine Moore <clm@cygnus.com> - - * elf32-d10v.c (reloc_type): Add R_D10V_GNU_VTINHERIT and - R_D10V_GNU_VTENTRY relocs. - (elf_d10v_howto_table): Likewise. - (d10v_reloc_map d10v_reloc_map): Likewise. - (elf32_d10v_gc_mark_hook): New. - (elf32_d10v_gc_sweep_hook): New. - (elf32_d10v_check_relocs): New. - (elf32_d10v_relocate_section): New. - (elf_backend_relocate_section): Define. - (elf_backend_can_gc_sections): Define. - -Sat Nov 7 18:07:51 1998 Peter Schauer <peter.schauer@regent.e-technik.tu-muenchen.de> - - * Makefile.am (BFD32_BACKENDS): Move vms files here... - (BFD64_BACKENDS): ...from here. - (BFD32_BACKENDS_CFILES): Move vms files here... - (BFD64_BACKENDS_CFILES): ...from here. - * Makefile.in: Rebuild. - -Wed Nov 4 15:58:48 1998 Nick Clifton <nickc@cygnus.com> - - * Makefile.am: Add FR30 target. - * Makefile.in: Add FR30 target. - * archures.c: Add support for FR30. - * config.bfd: Add support for FR30. - * configure.in: Add support for FR30. - * reloc.c: Add support for FR30 relocations. - * targets.c: Add support for FR30 relocations. - * bfd-in2.h: Regenerate. - * configure: Regenerate. - * libbfd.h: Regenerate. - * cpu-fr30.c: New file. - * elf32-fr30.c: New file. - -Mon Nov 2 14:59:33 1998 Geoffrey Noer <noer@cygnus.com> - - * configure.in: detect cygwin* instead of cygwin32* - * configure: regenerate - -Sun Nov 1 19:32:28 1998 Jeffrey A Law (law@cygnus.com) - - * elf-m10300.c (mn10300_elf_relax_section): Do not use alloca, - use bfd_malloc and free instead and check return value from bfd_malloc. - -Sun Nov 1 16:20:35 1998 Ian Lance Taylor <ian@cygnus.com> - - * libbfd-in.h (_bfd_dwarf1_find_nearest_line): Declare. - * libbfd.h: Rebuild. - - * elf32-mips.c (mips_elf_dynsym_sec_names): Comment out. - (SIZEOF_MIPS_DYNSYM_SECNAMES): Likewise. - (MIPS_TEXT_DYNSYM_SECN): Likewise. - (_bfd_mips_elf_fake_sections): Don't set sh_info field of a .hash - section. - (struct mips_elf_link_hash_table): Remove dynsym_sec_strindex - field. - (mips_elf_link_hash_table_create): Don't initialize - dynsym_sec_strindex. - (mips_elf_gc_mark_hook): Add default case to avoid warning. - (mips_elf_size_dynamic_sections): Generate a section symbol for - every output section. - (mips_elf_finish_dynamic_sections): Count all sections for - DT_MIPS_UNREFEXTNO. - (mips_elf_finish_dynamic_sections): Use dynamic symbols for all - output sections. - -Sun Nov 1 12:46:53 1998 Geoff Keating <geoffk@ozemail.com.au> - - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Allocate two slots - for later PLT entries in large PLTs. - (ppc_elf_finish_dynamic_symbol): Allow for the extra slots. - -Sat Oct 31 20:10:09 1998 Jeffrey A Law (law@cygnus.com) - - * elf32-ppc.c (ppc_elf_reload_section): Fix typo. - -1998-10-26 15:58 Ulrich Drepper <drepper@cygnus.com> - - * elf-bfd.h (struct elf_link_hash_entry): Add new field elf_hash_value. - * elflink.h (elf_collect_hash_codes): New function. This function is - called for each exported symbol and we compute the ELF hash value for - it. - (compute_bucket_value): New function. It is called from - size_dynamic_sections to determine the hash table size. When we are - optimizing a better, but slower, algorithm is used. - (size_dynamic_sections): Call compute_bucket_value. - - * elf.c (bfd_elf_hash): Optimize the hash function a bit. - -Mon Oct 19 20:03:21 1998 Catherine Moore <clm@cygnus.com> - - * elf32-sh.c: Add HOWTO entries for R_SH_GNU_VTINHERIT and - R_SH_GNU_VTENTRY. - (sh_elf_gc_mark_hook): New. - (sh_elf_gc_sweep_hook): New. - (sh_elf_check_relocs): New. - (elf_backend_can_gc_sections): Define. - -Mon Oct 19 16:57:05 1998 Felix Lee <flee@cygnus.com> - - * acinclude.m4: undo previous gettext change - * aclocal.m4: rebuild with right version of aclocal. - -Mon Oct 19 01:47:21 1998 Felix Lee <flee@cygnus.com> - - * acinclude.m4, aclocal.m4: move gettext-related fragments from - aclocal.m4 to acinclude.m4, so they don't get lost. - - * elfcore.h: rewrite for better corefile support. - * elf.c (elfcore_*): new functions. - * elf-bfd.h (elf_obj_tdata): new structure members. - * acconfig.h, acinclude.m4, configure.in: add feature-tests for - flavor of procfs. - * aclocal.m4, config.in, configure, Makefile.in: regenerated. - -Fri Oct 16 14:07:45 1998 Catherine Moore <clm@cygnus.com> - - * elf32-m32r.c: Add HOWTO entries for R_M32R_GNU_VTINHERIT - and R_M32R_GNU_VTENTRY. - (elf_backend_can_gc_sections): Define. - (m32r_elf_check_relocs): New. - (m32r_elf_gc_mark_hook): New. - (m32r_elf_gc_sweep_hook): New. - (m32r_elf_relocate_section): Handle VT relocs. - -Mon Oct 12 14:18:40 1998 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (arm_relocate_section): Remove redundant test. - - * bfd-in2.h (struct reloc_howto_struct): Improve comment to make - cleat that the 'bitsize' field is the size of the bitfield AFTER - relocation not before. - - * elf32-m32r.c (R_M32R_18_PCREL): Fix size of bitfield. - - * coff-mips.c (mips_relocate_hi): Cope with missing refhi or reflo - relocs. - -Tue Oct 6 09:20:44 1998 Catherine Moore <clm@cygnus.com> - - * elf32-sparc.c: Add HOWTO entries for R_SPARC_GNU_VTINHERIT and - R_SPARC_GNU_VTENTRY. - (elf32_sparc_check_relocs): Handle them. - (elf32_sparc_reloc_type_lookup): Likewise. - (elf32_sparc_relocate_section): Likewise. - (elf32_sparc_gc_mark_hook): New. - (elf32_sparc_gc_sweep_hook): New. - -Mon Oct 5 14:55:30 1998 Jeffrey A Law (law@cygnus.com) - - * som.c (som_finish_writing): Perform some sanity checks when - writing an executable or shared library. - -Mon Oct 5 12:02:31 1998 Gavin Romig-Koch <gavin@cygnus.com> - - * dwarf1.c : New file. Adds _bfd_dwarf1_find_nearest_line. - * configure.in (elf): Add dwarf1.lo. - * elf_bfd.h (elf_ob_tdata): Add dwarf1_find_line_info. - * elf.c (_bfd_elf_find_nearest_line): Add call to - _bfd_dwarf1_find_nearest_line. - * elf32-mips.c (_bfd_mips_elf_find_nearest_line): - Add call to _bfd_dwarf1_find_nearest_line. - * configure: Rebuilt. - -Mon Oct 5 10:06:22 1998 Catherine Moore <clm@cygnus.com> - - * elflink.h (elf_gc_sections): Do not allow garbage - collection if dynamic sections have been created. - -Mon Oct 5 09:07:37 1998 Catherine Moore <clm@cygnus.com> - - * elf32-v850.c: Add HOWTO entries for R_V850_GNU_VTINHERIT and - R_V850_GNU_VTENTRY. - (v850_elf_check_relocs): Handle VTINHERIT and VTENTRY relocs. - (v850_elf_perform_relocation): Likewise. - (v850_elf_final_link_relocate): Likewise. - (v850_elf_relocate_section): Likewise. - (v850_elf_gc_sweep_hook): New routine. - (v850_elf_gc_mark_hook): New routine. - (elf_backend_can_gc_sections): Define. - -Mon Oct 5 09:04:25 1998 Catherine Moore <clm@cygnus.com> - - * elf32-m68k.c (elf_m68k_gc_sweep_hook): Don't assume - that dynobj exists. - -Sun Oct 4 23:29:34 1998 David Edelsohn <edelsohn@mhpcc.edu> - - * rs6000-core.c (rs6000coff_core_file_matches_executable_p): - Declare size as bfd_size_type. - (rs6000coff_get_section_contents): Declare count as bfd_size_type. - -Sun Oct 4 20:38:29 1998 Jeffrey A Law (law@cygnus.com) - - * cpu-hppa.c (bfd_hppa20_arch): Define. Link it into the bfd_hppa_arch - structure. - * som.c (CPU_PA_RISC2_0): Define. - (_PA_RISC2_0_ID): Likewise. - (som_finish_writing): Use CPU_PA_RISC2_0 for the system_id as needed. - -Sun Oct 4 21:19:09 1998 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): When a versioned symbol - has a base which is already defined, only add the referenced - symbol to the dynamic symbol table if it is defined or referenced - by a regular file. - - * elf32-i386.c (elf_i386_info_to_howto_rel): Handle vtable relocs - correctly. - -1998-09-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elflink.h (elf_link_add_object_symbols): Undo last change. - -Wed Sep 23 16:09:31 1998 Richard Henderson <rth@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Don't record a dynamic - symbol for the indirect alias to a versioned symbol. - -Mon Sep 21 12:15:22 1998 Catherine Moore <clm@cygnus.com> - - * elf32-i386.c (elf32_i386_vtinherit_howto): New. - (elf32_i386_vtentry_howto): New. - (elf_i386_reloc_type_lookup): Return elf32_i386_vtentry_howto - or elf32_i386_vtinherit_howto on lookup. - -Sun Sep 20 00:48:07 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elf32-m68k.c: Include "elf/m68k.h". Remove definition of enum - reloc_type. Rename R_68K__max to R_68K_max. - (howto_table): Use _bfd_elf_rel_vtable_reloc_fn for a VTENTRY - reloc. - -Sun Sep 20 00:09:25 1998 Chris Torek <torek@bsdi.com> - - * libbfd.c (bfd_getb32): Rewrite expression to get better code. - (bfd_getl32, bfd_getb_signed_32, bfd_getl_signed_32): Likewise. - - * libbfd.c (bfd_log2): Cast to bfd_vma before shifting, not - after. - -Sat Sep 19 22:42:23 1998 Doug Rabson <dfr@nlsystems.com> - - * elflink.h (elf_link_add_object_symbols): Ensure that the warning - message has a null byte terminator. - -Fri Sep 18 14:35:29 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_perform_relocation): Ignore contents of - word subject to R_V850_32 relocation. - -Thu Sep 17 17:20:36 1998 Nick Clifton <nickc@cygnus.com> - - * dwarf2.c: Add comment describing problem computing line numbers - for undefined symbols at link time. - -Thu Sep 17 16:03:28 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't - transform a defweak into a plt entry. - (elf64_alpha_calc_dynrel_sizes): Allow room for secondary - plt entry references to receive a RELATIVE reloc. - (elf64_alpha_finish_dynamic_symbol): Fill them in. - (elf64_alpha_relocate_section): Assert we don't overrun - the allocated relocation space. - -Wed Sep 16 18:03:13 1998 Nick Clifton <nickc@cygnus.com> - - * elf.c (swap_out_syms): Always treat section symbols as - special, even if they are attached to a common section. - -Wed Sep 16 10:34:13 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_symbol_processing): Move symbols in - sections with v850 common section attributes into named v850 - common sections. - (v850_elf_add_symbol_hook): Move symbols in sections with v850 - common section attributes into named v850 common sections. - -Wed Sep 16 11:26:49 CDT 1998 Catherine Moore <clm@cygnus.com> - - * elf32-arm.c (elf32_arm_gc_mark_hook): Remove print - statement. - -1998-09-15 Geoff Keating <geoffk@ozemail.com.au> - - * elf32-ppc.c (ppc_elf_relocate_section): Reverse output_offset - part of Vladimir's change of 1998-08-19. Make a R_PPC_SDAREL16 - reloc to the wrong section a warning, not an error. .dynsbss - is not an output section, so there is no need to check for it. - -Tue Sep 15 12:40:05 1998 Catherine Moore <clm@cygnus.com> - - * elf-bfd.h: Add argument to elf_backend_get_symbol_type. - -Tue Sep 15 08:34:40 1998 Catherine Moore <clm@cygnus.com> - - * elf.c (swap_out_syms): Pass type to elf_backend_get_symbol_type. - * elf32-arm.c: Add HOWTO entries for R_ARM_GNU_VTINHERIT and - R_ARM_GNU_VTENTRY. - (elf32_arm_gc_mark_hook): New. - (elf32_arm_gc_sweep_hook): New. - (elf32_arm_check_relocs): New. - (elf32_arm_final_link_relocate): Handle VTINHERIT and VTENTRY - relocations. - (elf32_arm_relocate_section): Handle VTINHERIT and VTENTRY - relocations. - -1998-09-10 Geoff Keating <geoffk@ozemail.com.au> - - * elf32-ppc.c (ppc_elf_relocate_section): If dynobj is NULL, - assume there is no PLT or GOT. - -Wed Sep 9 14:24:12 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-arm.c (elf32_arm_find_nearest_line): New function: just - like _elf_bfd_find_nearest_line() except that STT_ARM_TFUNC is - also accepted as a function symbol type. - -Mon Sep 7 13:24:03 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de> - - * rs6000-core.c (_LONG_LONG): Define for AIX 4.x only. - -Sat Sep 5 20:40:18 1998 Ian Lance Taylor <ian@cygnus.com> - - * libbfd-in.h (_bfd_nolink_bfd_gc_sections): Correct definition to - match definition of _bfd_gc_sections field. - * libbfd.h: Rebuild. - -Fri Sep 4 13:54:23 1998 David Miller <davem@dm.cobaltmicro.com> - - * elf32-sparc.c (elf32_sparc_relocate_section): Properly adjust - the addend of a dynamic relocation referencing a section. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - (sparc64_elf_finish_dynamic_symbol): Fix the PLT relocation offset. - -Thu Sep 3 17:28:50 1998 Richard Henderson <rth@cygnus.com> - - * elflink.h (bfd_elfNN_size_dynamic_sections): Verify that the - bed has a size_dynamic_sections routine before trying to use it. - -Mon Aug 31 14:49:22 1998 Richard Henderson <rth@cygnus.com> - - * elf32-mips.c (elf_mips_gnu_vtentry_howto): Use - _bfd_elf_rel_vtable_reloc_fn. - -Mon Aug 31 10:23:40 1998 Catherine Moore <clm@cygnus.com> - - * Makefile.am: Add elf32-arm.c. - * Makefile.in: Rebuild. - * elf-bfd.h: Add elf_backend_get_symbol_type. - * elf.c (swap_out_syms): If defined, call - elf_backend_get_symbol_type. - * elf32-arm.c: Define elf_backend_get_symbol_type. - (elf32_arm_get_symbol-type): New routine. - (record_thumb_to_arm_glue): Change to use STT_ARM_TFUNC. - (bfd_elf32_arm_process_before_allocation): Change to - check for STT_ARM_TFUNC. - (elf32_arm_final_link_relocate): Likewise. - * elfxx-target.h: Add elf_backend_get_symbol_type. - -Fri Aug 28 19:44:07 1998 Richard Henderson <rth@cygnus.com> - - * archures.c (bfd_mach_alpha_ev[456]): New. - * cpu-alpha.c: Rework to match these types. - * bfd-in2.h: Rebuild. - -Fri Aug 28 19:38:53 1998 Richard Henderson <rth@cygnus.com> - - * elf-bfd.h (_bfd_elf_rel_vtable_reloc_fn): Declare. - * elf.c (_bfd_elf_rel_vtable_reloc_fn): New. - - * elf32-i386.c (elf_howto_table): Add vtable relocs. - (elf_i386_reloc_type_lookup): Recognize them. - (elf_i386_check_relocs): Pass them off to generic code. - (elf_i386_relocate_section): Ignore them. - (elf_i386_gc_mark_hook, elf_i386_gc_sweep_hook): New. - (elf_backend_can_gc_sections): True. - -Thu Aug 20 15:03:45 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-arm.c (elf32_thumb_to_arm_stub): Check sym_sec is not NULL - before looking at owner field. - (elf32_arm_to_thumb_stub): Ditto. - (elf32_arm_relocate_section): Compute name before calling - elf32_arm_final_link_relocate(). - -Thu Aug 20 11:30:17 1998 Michael Snyder <msnyder@cleaver.cygnus.com> - - * elf.c: comment and formatting cleanups. - * elfcore.h: ditto. - -Wed Aug 19 15:43:26 1998 Michael Snyder <msnyder@cleaver.cygnus.com> - - * elfcode.h (elf_object_p): Reject files of header type ET_CORE - (core files are treated differently than object files). - * elf-bfd.h (_bfd_elf_write_corefile_contents, - bfd_elf_mkcorefile): declare. - * elfxx-target.h (_bfd_elf_write_corefile_contents, - bfd_elf_mkcorefile): add to bfd_target vector. - * elfcore.h (elf_core_file_p): save the program header table, - and set the bfd architecture from the elf file header. - * elf.c (bfd_elf_mkcorefile): new function. - (_bfd_elf_write_corefile_contents): new function. - (assign_file_positions_for_segments): add cases for handling - PT_NOTE segments. (assign_file_positions_except_relocs): - core files should be handled the same as exec files. - (prep_headers): identify core files as type ET_CORE. - (copy_private_bfd_data): identify the sections belonging to - the PT_NOTE segment. - - * elf32-sparc.c (elf32_sparc_final_write_processing): - add break statement to default case. - -1998-08-19 Vladimir N. Makarov <vmakarov@cygnus.com> - - * elf32-ppc.c (ppc_elf_relocate_section): Check that output - section (not input) will be in sections ".sbss", ".sbss2", - ".sdata", and ".sdata" for R_PPC_SDAREL16, R_PPC_EMB_SDA2REL, - R_PPC_EMB_SDA21, R_PPC_EMB_RELSDA. In all these cases also ignore - output_offset for correct evaluation of addend. - -Tue Aug 18 11:48:12 1998 Catherine Moore <clm@cygnus.com> - - * elf32-arm.c: Add prefix bfd_ to elf32_arm_get_bfd_for_interworking, - elf32_arm_allocate_interworking_sections and - elf32_arm_process_before_allocation. - -Tue Aug 18 11:46:00 1998 Nick Clifton <nickc@cygnus.com> - - * bfd-in.h: Ammend prototype for - elf32_arm_process_before_allocation to remove surplus third - argument. - - * bfd-in2.h: Regenerate. - -Sat Aug 15 20:55:08 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_relax_section): Handle indirect symbols. - -Fri Aug 14 09:12:28 1998 Stan Cox <scox@cygnus.com> - - * aoutx.h (aout_link_input_section_ext): Use the relocation already - calculated for RELOC_SPARC_REV32 case. - -Thu Aug 13 14:02:02 1998 Catherine Moore <clm@cygnus.com> - - * bfd-in.h: Add prototypes for elf32_arm_get_bfd_for_interworking, - elf32_arm_allocate_interworking_sections and - elf32_arm_process_before_allocation. - * bfd-in2.h: Regenerated. - * elf32-arm.c Define elf32_arm_link_hash_table. - (insert_thumb_branch): New routine. - (find_thumb_glue): New routine. - (find_arm_glue): New routine. - (record_arm_to_thumb_glue): New routine. - (record_thumb_to_arm_glue): New routine. - (elf32_arm_link_hash_table_create): New routine. - (elf32_arm_get_bfd_for_interworking): New routine. - (elf32_arm_allocate_interworking_sections) New routine. - (elf32_arm_process_before_allocation) New routine. - (elf32_thumb_to_arm_stub): New routine. - (elf32_arm_to_thumb_stub): New routine. - (elf32_print_private_bfd_data): Fix typo. - (elf32_arm_final_link_relocate): Add argument sym_sec. - Check for branches to thumb symbols in case R_ARM_PC24. - Check for branches to arm symbols in case R_ARM_THM_PC22. - (elf32_arm_relocate_section): Pass symbol section to - elf32_arm_final_link_relocate. - -Wed Aug 12 19:00:39 1998 Geoff Keating <geoffk@ozemail.com.au> - - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Generate PLT - entries unless the symbol is defined in the executable; in - particular, undefined weak symbols get a PLT entry. - -Wed Aug 12 14:48:33 1998 Ian Lance Taylor <ian@cygnus.com> - - * libaout.h: Remove nested comment to avoid warning. - -Wed Aug 12 08:10:11 1998 Catherine Moore <clm@cygnus.com> - - * elf32-arm.c (elf32_arm_final_link_relocate): Rework - R_ARM_PC24 relocation. - -Tue Aug 11 14:42:26 1998 Catherine Moore <clm@cygnus.com> - - * elf32-arm.c (elf32_arm_final_link_relocate): Remove unused - argument is_local. Add argument sym_flags. Check sym_flags - in R_ARM_ABS32 case. Include addend for R_ARM_THM_PC22 case. - (elf32_arm_relocate_section): Don't pass local sym and pass - sym_flags to elf32_arm_final_link_relocate. - -Mon Aug 10 20:38:39 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Correct last change - to not count too few relocs for dynamicly linked executables. - -Mon Aug 10 15:35:34 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Never consider - symbols without a dynamic index dynamic. Consider all weak - symbols dynamic. - (elf64_alpha_strip_section_from_output): Don't assume 1-1 - correspondance between input and output sections. - -Mon Aug 10 15:31:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elflink.h (elf_gc_common_finalize_got_offsets): For backends - that use a .got.plt section start the got offset at zero. - -Mon Aug 10 17:31:21 1998 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_write_processor): Correct the processor ID written - out for bfd_arch_m68k, accommodating change of March 25. - -Sun Aug 9 20:55:44 1998 Catherine Moore <clm@cygnus.com> - - * elf32-arm.c (elf32_arm_final_link_relocate): Rework - R_ARM_THM_RPC22 relocations. - -Sat Aug 8 15:15:30 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Undef weak symbols - are always dynamic. - (elf64_alpha_calc_dynrel_sizes): Allow enough room for RELATIVE - .got relocs in -Bsymbolic shared objects. - -Wed Aug 5 15:48:08 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-arm.c: Add private flags to ELF header. - (elf32_arm_print_private_bfd_data): New Function. - (elf32_arm_set_private_flags): New Function. - (elf32_arm_copy_private_flags): New Function. - (elf32_arm_merge_private_bfd_data): New Function. - -Mon Aug 3 17:10:15 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf32-sparc.c (elf32_sparc_check_relocs): Permit WPLT30 against - a local symbol. - (elf32_sparc_relocate_section): Likewise. - -Sun Aug 2 03:19:23 1998 Richard Henderson <rth@cygnus.com> - - * elf32-ppc.c (ppc_elf_check_relocs): Init sgot to NULL. Create the - .got if any relocation referrs to _GLOBAL_OFFSET_TABLE_. - (ppc_elf_relocate_section): Pull sgot and splt search to the start - of the function. Recognize no .plt as static linking. - -1998-08-01 Ulrich Drepper <drepper@cygnus.com> - - * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Don't pass - ".liblist" string through gettext. - -Fri Jul 31 16:38:14 1998 Catherine Moore <clm@cygnus.com> - - * Makefile.am: Add support for elf32-arm.lo. - * Makefile.in: Rebuild. - * config.bfd (arm-*-elf): Define targ_defvec and targ_selvecs. - (thumb-*-elf): Define targ_defvec and targ_selvecs. - * configure.in: Handle bfd_elf32_littlearm_vec and bfd_elf32_bigarm_vec. - * configure: Regenerate. - * elf.c: (prep_headers): Support arch_type of EM_ARM. - * targets.c: Support new targets bfd_elf32_bigarm_vec and - bfd_target bfd_elf32_littlearm_vec. - * elf32-arm.c: New file. - -Tue Jun 28 19:05:28 1998 Stan Cox <scox@cygnus.com> - - * libaout.h (M_SPARCLITE_LE): New machine. - * sunos.c (MACHTYPE_OK): Add machine M_SPARCLITE_LE. - * aoutf1.h (sunos_set_arch_mach): Add machine M_SPARCLITE_LE. - (sunos_write_object_contents): Add machine bfd_mach_sparc_sparclite_le - * aoutx.h (howto_table_ext): Add relocation R_SPARC_REV32. - (NAME(aout,machine_type)) Add machine bfd_mach_sparc_sparclite_le - (aout_link_input_section_ext): Add RELOC_SPARC_REV32 support. - * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map, - elf32_sparc_relocate_section): Rename R_SPARC_32LE to be R_SPARC_REV32 - * libbfd.h (bfd_reloc_code_real_names): Rename BFD_RELOC_SPARC_32LE to - be BFD_RELOC_SPARC_REV32. - * reloc.c: Ditto. - * config.bfd (sparc86x-*-aout): New - -Fri Jul 24 13:54:19 1998 Nick Clifton <nickc@cygnus.com> - - * linker.c (_bfd_generic_final_link): Allocate NULL symbol before - actually mapping the output sections. - -Fri Jul 24 11:24:29 1998 Jeffrey A Law (law@cygnus.com) - - - * elf-m10300.c (mn10300_elf_howto): Add R_MN10300_24 entry. - (mn10300_elf_reloc_map): Similarly. - (mn10300_elf_final_link_relocate): Handle R_MN10300_24. - -Fri Jul 24 12:36:04 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (elf_mips_howto_table): Add reloc types used on - Irix 6. - (bfd_elf32_bfd_reloc_type_lookup): Add default case. - * elf64-mips.c: Replace all uses of mips_elf64_reloc_type with - elf_mips_reloc_type defined in elf/mips.h. - -1998-07-24 Ulrich Drepper <drepper@cygnus.com> - - * elf64-mips.c: Remove reloc_type definition completely. It's now - in elf/mips.h. - -Thu Jul 23 13:33:19 1998 Doug Evans <devans@canuck.cygnus.com> - - * elf64-mips.c (mips_elf64_reloc_type): #if 0 out more relocations - as they are defined in elf/mips.h now. - -Thu Jul 23 11:29:43 1998 Jeffrey A Law (law@cygnus.com) - - - * Re-add lost change: - * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field - "movm_stack_size". - (mn10300_elf_relax_section): Include stack space for register saves - in the imm8 field of a "call" instruction. - (compute_function_info): Determine how much stack is allocated by - the movm instruction. Fix typo. - (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size. - -Thu Jul 23 11:38:05 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf32-sparc.c (elf_backend_got_header_size): Define as 4. - * elf64-sparc.c (elf_backend_got_header_size): Define as 8. - -1998-07-22 Ulrich Drepper <drepper@cygnus.com> - - * elf32-ppc.c: Change use of pp_reloc_type to elf_ppc_reloc_type. - -Wed Jul 22 16:27:18 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-hppa.h: Let ELF header define the enum containing the - external reloc numbers. - * elf32-i386.h: Likewise. - -1998-07-22 14:57 Ulrich Drepper <drepper@cygnus.com> - - * elf-m10300.c: Let ELF header now define the macros to get the enum. - * elf32-mips.c: Likewise. - * elf32-ppc.c: Likewise. - -Wed Jul 22 13:53:52 1998 Nick Clifton <nickc@cygnus.com> - - * bfd-in2.h: Change type of 'class' parameter to 'unsigned int' in - bfd_coff_set_symbol_class(), in order to avoid K&R compatability - prblems. - * bfd-in.h: Regenerate. - * coffgen.c (bfd_coff_set_symbol_class): Change type of 'class' - parameter to 'unsigned int' to avoid K&R compatability problems. - -Wed Jul 22 16:43:24 1998 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_find_nearest_line): Change filename_ptr and - functionname_ptr to be const. Change line_ptr to be unsigned. - - * coffcode.h (coff_link_output_has_begun): Simplify handling when - macro is not defined. Change second parameter from bfd_link_info - to coff_final_link_info. Add prototype. - (coff_final_link_postscript): Simplify handling when macro is not - defined. Add prototype. - -1998-07-22 13:08 Ulrich Drepper <drepper@cygnus.com> - - * elf-mn10300.c: Before include system specific ELF header define - START_RELOC_NUMBERS, RELOC_NUMBER, and END_RELOC_NUMBERS. - * elf32-mips.c: Likewise. - * elf32-ppc.c: Likewise. - -Wed Jul 22 13:46:51 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf64-mips.c (mips_elf64_reloc_type): Copy Ulrich's elf32-mips.c - temporary patch over to elf64-mips.c as well. - -1998-07-21 Ulrich Drepper <drepper@cygnus.com> - - * elf32-mips.c (reloc_type): Temporarily disable definition of - standard relocation since they are now defined in elf/mips.h. - -Tue Jul 21 09:47:00 1998 Catherine Moore <clm@cygnus.com> - - * elf-m10200.c (mn10200_elf_final_link_relocate): - Modify range test for case R_MN10200_8. - - * elf-m10300.c (mn10300_elf_final_link_relocate): - Modify range test for case R_MN10300_8. - -Mon Jul 20 18:50:54 1998 Richard Henderson <rth@cygnus.com> - - * elf-bfd.h (struct elf_backend_data): Add got_ & plt_header_size. - * elf32-i386.c (elf_backend_got_header_size): Define. - (elf_backend_plt_header_size): Define. - * elf32-m68k.c, elf32-mips.c, elf32-ppc.c: Likewise. - * elf32-sparc.c, elf64-alpha.c, elf64-sparc.c: Likewise. - * elfxx-target.h: Provide a default of zero. - * elflink.c (_bfd_elf_create_got_section): Use got_header_size. - * elflink.h (elf_gc_common_finalize_got_offsets): Likewise. - - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't remove a PLT - entry from an executable, even if the plt refcount goes to 0. - -Mon Jul 20 12:47:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * aoutx.h (NAME(aout,find_nearest_line)): Also remember the - directory name at the line number. - - * elf.c (_bfd_elf_find_nearest_line): Also consider symbols - with an unspecified type. - -Wed Jul 15 11:20:01 1998 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c: Add undef of valid to avoid problem on SunOS. - -Tue Jul 14 15:30:59 1998 Richard Henderson <rth@cygnus.com> - - * config.bfd (i?86-pc-beos{pe,elf,}*): Recognize. - -Tue Jul 14 11:22:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elf32-m68k.c (elf_m68k_check_relocs): Also reference count - R_68K_PCxx and R_68K_xx relocations. Make sure that - ELF_LINK_HASH_NEEDS_PLT is always set for a PLT reloc reference. - (elf_m68k_gc_sweep_hook): Also reference count R_68K_PCxx and - R_68K_xx relocations. - (elf_m68k_adjust_dynamic_symbol): Reset the plt offset of a symbol - that has no plt entry. - (elf_m68k_relocate_section): Ignore the plt offset in a static - link. - * elflink.h (elf_adjust_dynamic_symbol): Reset the plt offset for - an ignored symbol. - (elf_gc_common_finalize_got_offsets): Set the got offsets also in - a static link. - - * elf32-m68k.c (R_68K_GNU_VTINHERIT, R_68K_GNU_VTENTRY): New reloc - types. - (howto_table, reloc_map): Add entries for them. - (elf_m68k_check_relocs): Handle them. Implement reference - counting for got and plt entries. - (elf_m68k_gc_mark_hook, elf_m68k_gc_sweep_hook): New functions. - (elf_m68k_adjust_dynamic_symbol): Handle unreferenced plt - symbols. - (rtype_to_howto_rel, elf_info_to_howto_rel): Delete. - (elf_m68k_relocate_section): Handle the new reloc types. - (bfd_elf32_bfd_final_link, elf_backend_gc_mark_hook, - elf_backend_gc_sweep_hook, elf_backend_can_gc_sections): Define. - * elflink.h (elf_link_add_object_symbols): When creating an - indirect reference for symbol versioning also copy the plt - offset. - (elf_fix_symbol_flags): When clearing the ELF_LINK_HASH_NEEDS_PLT - flag also reset the plt offset. - (elf_link_assign_sym_version): Likewise. - (elf_gc_common_finalize_got_offsets): Increment the got offset by - the size of the entry in bytes. - (elf_gc_allocate_got_offsets): Likewise. - -Tue Jul 14 11:18:14 1998 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_gc_sections): Return true rather than falling off - the bottom. - - * coffgen.c (bfd_coff_set_symbol_class): Call bfd_alloc, not - xmalloc. - -Mon Jul 13 11:06:31 1998 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c: Supress definition of TARGET_UNDERSCORE and add a - comment describing when it should be enabled. - Changed definition of USER_LABEL_PREFIX to "", to fall into line - with GCC sources. - -Mon Jul 13 13:06:54 1998 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_slurp_external_symbols): Handle call optimization - information ATN records. - -Fri Jul 10 16:31:06 1998 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_slurp_external_symbols): Select an appropriate - section for an absolute symbol in a fully linked file. Based on - patch from Christian Holland <CHolland@de.lucent.com>. - -Wed Jul 8 11:29:56 1998 Manfred Hollstein <manfred@s-direktnet.de> - - * coff-m88k.c (m88k_special_reloc): Don't lose the information - that a symbol is undefined. - -Tue Jul 7 21:47:02 1998 Jeffrey A Law (law@cygnus.com) - - * som.c (som_bfd_gc_sections): Define. - -Mon Jul 6 11:35:50 1998 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (aoutarm_std_reloc_howto): Do not complain about - overflows in ARM_26D patches, since they have already been - implmented. Patch submitted by Dr. R.J. Black <rjb@dcs.gla.ac.uk> - -Sat Jul 4 12:25:36 1998 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_write_object_contents): If we have any long - section names, call coff_write_symbols even if there are no - symbols. - -Fri Jul 3 13:11:35 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (copy_private_bfd_data): Only set phdr_included once for a - PT_LOAD segment, rather than only setting it once for the entire - file. - - * elf.c (_bfd_elf_make_section_from_shdr): When setting the LMA, - rather than ignoring every phdr with a p_paddr of 0, ignore all - the phdrs if they all have a p_paddr of 0. - - * stabs.c (_bfd_write_stab_strings): Check whether the .stabstr - section was discarded from the link. - -Fri Jul 3 14:39:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk> - - * coff-sh.c (sh_insn_uses_freg): Ignore lowest bit of register number. - -Fri Jul 3 14:35:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk> - - * coff-sh.c (sh_insns_conflict): Load of fpscr conflicts with - floating point operations. - -Thu Jul 2 18:37:25 1998 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (_bfd_coff_link_input_bfd): Skip undefined global - function symbols. - -Thu Jul 2 14:59:42 1998 Klaus Kaempf <kkaempf@rmi.de> - - Merge of vax/vms (read-only) support - * configure.com: Support Vax target. - * makefile.vms: Support Vax target. - * vms.h: Renamed from evax.h, merged vax/vms (read-only) support. - * vms.c: Renamed from evax-alpha.c, merged vax/vms (read-only) - support. - * vms-hdr.c: Renamed from evax-emh.c, merged vax/vms (read-only) - support. - * vms-gsd.c: Renamed from evax-egsd.c, merged vax/vms (read-only) - support. - * vms-tir.c: Renamed from evax-etir.c, merged vax/vms (read-only) - support. - * vms-misc.c: Renamed from evax-misc.c, merged vax/vms (read-only) - support. - * libbfd.c (real_read): Use unbuffered read on VMS/Vax. - * targets.c (bfd_target_ovax_flavour): New flavour. - (vms_alpha_vec): Renamed from evax_alpha_vec. - (vms_vax_vec): New. - (target_vector): Update accordingly. - * config.bfd (alpha*-*-*vms*): Use vms_alpha_vec, not - evax_alpha_vec. - (vax*-*-*vms*): New target. - * Makefile.am: Update for renamed files. Rebuild dependencies. - * bfd-in2.h: Rebuild. - * configure.in, Makefile.in, aclocal.m4: Rebuild. - -Thu Jul 2 13:31:55 1998 Ian Lance Taylor <ian@cygnus.com> - - Based on patch from Matt Semersky <matts@scd.hp.com>: - * linker.c (_bfd_generic_final_link): Force a trailing NULL - pointer on abfd->outsymbols. - (generic_add_output_symbol): Handle NULL sym parameter. - -Wed Jul 1 17:05:53 1998 Nick Clifton <nickc@cygnus.com> - - * elf.c (copy_private_bfd_data): Add support for changing VMA or - LMA of sections. - -Wed Jul 1 16:58:50 1998 Ian Lance Taylor <ian@cygnus.com> - - * coff-sh.c (sh_relax_delete_bytes): Correct address comparisons - when handling 32 bit immediate relocs. - * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise. - -Tue Jun 30 09:55:03 1998 Jeffrey A Law (law@cygnus.com) - - * section.c (STD_SECTION): Account for recently added gc_mark - field in struct asection. - - * elf-m10300.c (bfd_mn10300_elf_merge_private_bfd_data): New function. - (bfd_elf32_bfd_merge_private_bfd_data): Define. - -Thu Jun 25 18:31:41 1998 Richard Henderson <rth@cygnus.com> - - ELF Section-level Garbage Collection: - * bfd.c (bfd_gc_sections): New. - * aout-adobe.c: Hook to default implementation. - * aout-target.h, aout-tic30.c, binary.c, bout.c: Likewise. - * coff-alpha.c, coff-mips.c, coff-rs6000.c, coffcode.h: Likewise. - * evax-alpha.c, i386msdos.c, i386os9k.c, ieee.c: Likewise. - * ihex.c, nlm-target.h, oasys.c, ppcboot.c, srec.c: Likewise. - * tekhex.c, versados.c: Likewise. - * libbfd-in.h (_bfd_nolink_bfd_gc_sections): New. - * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_gc_sections. - - * reloc.c (BFD_RELOC_VTABLE_INHERIT, BFD_RELOC_VTABLE_ENTRY): New. - (bfd_generic_gc_sections): New. - * section.c (SEC_KEEP): New. - (asection): Add gc_mark member. - - * elfcode.h (elf_gc*): New name remappings. - * elflink.h (elf_link_input_bfd): Don't set contents on stabs - sections to be excluded. - (elf_gc_mark, elf_gc_sweep, elf_gc_sweep_symbol): New. - (elf_gc_propogate_vtable_entries_used): New. - (elf_gc_smash_unused_vtentry_relocs): New. - (elf_gc_sections, elf_gc_record_vtinherit, elf_gc_record_vtentry): New. - (elf_gc_common_finalize_got_offsets): New. - (elf_gc_allocate_got_offsets, elf_gc_common_final_link): New. - * elfxx-target.h: Add and default gc hooks. - - * elf-bfd.h (struct elf_link_hash_entry): Swap got_offset/plt_offset - for unions. - (struct elf_obj_tdata): Likewise for local_got_offsets. - * elf.c, elf-i386.c, elf32-m68k.c, elf32-mips.c: Update all uses. - * elf32-ppc.c, elf32-sparc.c, elf64-alpha.c: Likewise. - * elf64-sparc.c, elflink.h: Likewise. - - * elf-bfd.h (struct elf_link_hash_entry): Add vtable members. - (ELF_LINK_HASH_MARK): Define. - (struct elf_backend_data): Add GC hooks. - * elf.c (_bfd_elf_link_hash_newfunc): Zero vtable members. - - * elf-m10300.c (mn10300_elf_check_relocs): New. - (mn10300_elf_gc_mark_hook): New. - (R_MN10300_GNU_VTINHERIT, R_MN10300_GNU_VTENTRY): New. - (elf_mn10300_howto, mn10300_reloc_map): Handle them. - (mn10300_elf_final_link_relocate): Likewise. - (mn10300_elf_relocate_section): Likewise. - (elf_backend_can_gc_sections): Define. - * elf32-mips.c (R_MIPS_GNU_VTINHERIT, R_MIPS_GNU_VTENTRY): New. - (elf_mips_gnu_vtinherit_howto, elf_mips_gnu_vtentry_howto): New. - (bfd_elf32_bfd_reloc_type_lookup): Handle them. - (mips_info_to_howto_rel): Likewise. - (mips_elf_relocate_section): Likewise. - (mips_elf_check_relocs): Likewise. - (mips_elf_gc_mark_hook, mips_elf_gc_sweep_hook): New. - (elf_backend_can_gc_sections): Define. - * elf32-ppc.c (R_PPC_GNU_VTINHERIT, R_PPC_GNU_VTENTRY): New. - (ppc_elf_howto_raw): Handle them. - (ppc_elf_reloc_type_lookup): Likewise. - (ppc_elf_relocate_section): Likewise. - (ppc_elf_check_relocs): Reference count .got and .plt entries. - Handle new vtable relocs. - (ppc_elf_adjust_dynamic_symbol): Recognize unused .plt entries. - (ppc_elf_gc_mark_hook, ppc_elf_gc_sweep_hook): New. - (elf_backend_can_gc_sections): Define. - -Fri Jun 26 10:48:23 1998 Jeffrey A Law (law@cygnus.com) - - * archures.c (bfd_mach_mn10300): Define. - * elf-m10300.c: Include elf/mn10300.h - (elf_mn10300_mach): New function. - (_bfd_mn10300_elf_final_write_processing): Likewise. - (_bfd_mn10300_elf_object_p): Likewise. - (elf_backendfinal_write_processing): Define. - (elf_backend_object_p): Likewise. - -Thu Jun 25 18:31:08 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_perform_relocation): Fix HI16_S - relocation. - -Wed Jun 24 17:17:57 1998 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_bfd_final_link): Loop over input_bfds using the - link_next field, not the next field. - -Sun Jun 21 19:38:39 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (map_sections_to_segments): Check the section address - against the phdr size both with and without a modulo of - maxpagesize. - -Fri Jun 19 17:08:18 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (mips_elf_size_dynamic_sections): Only strip a - linker created empty input section if the output section has the - same name. - - * elflink.h (elf_link_output_extsym): Print an error message if - _bfd_elf_section_from_bfd_section fails. - - * elf.c (_bfd_elf_section_from_bfd_section): Call bfd_set_error on - failure. - -Tue Jun 16 11:55:55 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (copy_private_bfd_data): Improve handling of Solaris - native linker output. Avoid putting an empty section in more than - one segment. - -Fri Jun 12 13:30:17 1998 Tom Tromey <tromey@cygnus.com> - - * po/Make-in (all-yes): If maintainer mode, depend on .pot file. - ($(PACKAGE).pot): Unconditionally depend on POTFILES. - -Fri Jun 12 13:34:02 1998 Doug Evans <devans@canuck.cygnus.com> - - * elf.c (swap_out_syms): New arg relocatable_p. - Don't add section VMA to symbols for relocatable output. - (_bfd_elf_compute_section_file_positions): Update call to - swap_out_syms. - -Mon Jun 8 15:20:57 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_perform_relocation): Make comparisons - against 'addend' be signed rather than unsigned. - -Sat Jun 6 00:31:21 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-m32r.c: Add prototyps for static functions. - - * coff-arm.c: Add prototypes for static functions. - -Fri Jun 5 17:21:51 1998 Nick Clifton <nickc@cygnus.com> - - * elf.c (elf_sort_sections): Sort by LMA first then VMA, since the - LMA is used to order sections in a segment. - - * elf32-v850.c: Add prototypes for static functions. - Change type of addend parameter to bfd_vma in various functions. - -Fri Jun 5 18:09:58 1998 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (howto_table_ext): Change RELOC_BASE13 to use - complain_overflow_signed instead of complain_overflow_bitfield. - -Fri Jun 5 15:11:11 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elf.c (elf_map_symbols): Don't add section VMA to symbol value - when comparing against 0. - -Wed Jun 3 17:52:49 1998 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am (config.status): New target. - * Makefile.in: Rebuild. - -Wed Jun 3 12:18:24 1998 Stan Cox <scox@equinox.cygnus.com> - - * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Give an - error if previous object endianness doesn't match current object. - -Tue Jun 2 17:50:59 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_print_private_bfd_data): Call - _bfd_elf_print_private)bfd_data (). - -Tue Jun 2 15:29:35 1998 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_merge_symbol): Don't always set type_change_ok - and size_change_ok. - (elf_link_add_object_symbols): Set type_change_ok and - size_change_ok before calling elf_merge_symbol. - - * elf32-mips.c (mips_elf_relocate_section): If we issue an - undefined symbol error, don't also issue an overflow error. - -Tue Jun 2 13:51:00 1998 Geoff Keating <geoffk@ozemail.com.au> - - * elf32-ppc.c (ppc_elf_relocate_section): The target of an - R_PPC_LOCAL24PC relocation should be local; if not, print an error - message instead of crashing. - -Mon Jun 1 18:23:12 1998 Yuli Barcohen <yuli.barcohen@telrad.co.il> - - * archures.c (bfd_mach_cpu32): Define. - (bfd_default_scan): Add case for 68060. Fix 68332 case to use - bfd_mach_cpu32. - * cpu-m68k.c (arch_info_struct): Add m68k:cpu32. - * ieee.c: Include <ctype.h>. - (ieee_object_p): Parse out process ID string to make it more - likely to be acceptable for bfd_scan_arch. - * bfd-in2.h: Rebuild. - -Mon Jun 1 11:12:02 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-m32r.c (m32r_elf_print_private_bfd_data): Also call - _bfd_elf_print_private_bfd_data() so that the program header will - be displayed. - -Mon Jun 1 12:14:28 1998 Ian Lance Taylor <ian@cygnus.com> - - * peicode.h (coff_swap_sym_in): Check for C_SECTION rather than - 0x68. Reindent. Add some comments. - -Fri May 29 09:58:08 1998 Nick Clifton <nickc@cygnus.com> - - * elf.c (copy_private_bfd_data): Adjust physical address of - segment in output BFD to contain LMAs of its sections. - -Tue May 26 19:37:47 1998 Stan Cox <scox@equinox.cygnus.com> - - * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map, - elf32_sparc_relocate_section): Added R_SPARC_32LE for little - endian data 32 bit relocations. - (elf32_sparc_merge_private_bfd_data): Check if linking little - endian objects with big endian objects. - (elf32_sparc_object_p): Set bfd_mach_sparc_sparclite_le. - (elf32_sparc_final_write_processing): Set EF_SPARC_LEDATA in e_flags. - * libbfd.h (bfd_reloc_code_real_names): Added BFD_RELOC_SPARC_32LE. - * reloc.c: Same. - * cpu-sparc.c (arch_info_struct): Added sparc:sparclite_le - * archures.c (bfd_mach_sparc_sparclite_le): New. - * bfd-in2.h (BFD_RELOC_SPARC_32LE, bfd_mach_sparc_sparclite_le): New. - -Thu May 21 16:59:28 1998 Nick Clifton <nickc@cygnus.com> - - * peicode.h (add_data_entry): Fix precedence of operators in if () - statement. - -Tue May 19 18:41:19 1998 Ian Lance Taylor <ian@cygnus.com> - - * bfd-in.h: Move over patch to bfd-in2.h. - - * reloc.c (bfd_check_overflow): Add casts before shifts which may - not fit in 32 bits. - (_bfd_relocate_contents): Likewise. - -Mon May 18 14:44:15 1998 Nick Clifton <nickc@cygnus.com> - - * peicode.h (add_data_entry): If the section has no private data - then do not create a Data Dictionary entry for it. - -Mon May 18 00:09:28 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_relax_section): Set again on changes. - (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots, - elf64_alpha_size_got_sections): Rewrite, handling multiple got - subsections during relaxation more correctly. - -Thu May 14 14:22:58 1998 Nick Clifton <nickc@cygnus.com> - - * bfd-in2.h: Add new prototype: bfd_coff_set_symbol_class (). - Add extra argument to bfd_arm_process_before_allocation (). - * bfd-in.h: Reflect changes made in bfd-in2.h. - * coffgen.c (bfd_coff_set_symbol_class): New function. Set the - coff class of a BFD symbol. - * coff-arm.c: Add support for interworking between Thumb code and - non-interworking aware ARM code. - -Sun May 10 22:33:59 1998 Jeffrey A Law (law@cygnus.com) - - * po/Make-in (install-info): New target. - -Thu May 7 17:40:56 1998 Ian Lance Taylor <ian@cygnus.com> - - * filemode.c: Remove; not used. - - If sysdep.h includes a header file, don't include it again: - * aix386-core.c: Don't include <stdio.h>, <stddef.h>, or - <errno.h>. - * aoutx.h: Don't include <string.h>. Use "sysdep.h" rather than - <sysdep.h>. - * archive.c: Don't include <string.h> or <errno.h>. - * evax-alpha.c; Don't include <stdio.h>. - * evax-egsd.c: Likewise. - * evax-etir.c: Likewise. - * evax-misc.c: Likewise. - * evax-emh.c: Likewise. Also, don't include <sys/types.h>. - * hppabsd-core.c: Don't include <stdio.h>, <sys/types.h>, or - <errno.h>. - * hpux-core.c: Likewise. - * netbsd-core.c: Likewise. - * som.c: Likewise. - * libbfd.c: Don't include <sys/types.h>. - * nlmcode.h: Don't include <string.h>. - * osf-core.c: Don't include <string.h> or <stdio.h>. - * ptrace-core.c: Don't include <stdio.h>, <sys/types.h>, - <errno.h>, or <unistd.h>. - * trad-core.c: Don't include <stdio.h> or <sys/types.h>. - -Thu May 7 13:12:50 1998 Klaus Kaempf <kkaempf@progis.de> - - * configure.com: If the version number can not be found in - configure.in, set it to "unknown" rather than "2.8.1". - -Wed May 6 09:46:05 1998 Gavin Koch <gavin@cygnus.com> - - * elf32-mips.c (elf_mips_mach): New. - (_bfd_mips_elf_object_p): Use elf_mips_mach. - (_bfd_mips_elf_final_write_processing): Use the names - of machines, rather than the numbers. Set both the ARCH - and MACH in e_flags. Handle a few more specific machines. - (_bfd_mips_elf_merge_private_bfd_data): Merge both - EF_MIPS_ARCH and EF_MIPS_MACH. - -Tue May 5 21:01:53 1998 Richard Henderson <rth@cygnus.com> - - * syms.c (bfd_is_local_label): Revert last change. - * srec.c (srec_write_symbols): Discard debugging symbols. - -Tue May 5 23:36:06 1998 Ian Lance Taylor <ian@cygnus.com> - - * som.c: Include <ctype.h>. - * som.h: Don't include sysdep.h. - -Tue May 5 18:29:24 1998 Tom Tromey <tromey@cygnus.com> - - * libbfd.h: Rebuilt. - * libbfd-in.h: Removed gettext includes and defines. - * sysdep.h: Moved gettext-related includes and defines here. - -Tue May 5 16:47:54 1998 Richard Henderson <rth@cygnus.com> - - * srec.c (srec_write_symbols): Use bfd_is_local_label rather than - an ad-hoc test. Kill bogus #if 0 code. - * syms.c (bfd_is_local_label): Consider BSF_DEBUGGING symbols local. - -Mon May 4 16:10:33 1998 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (sunos_check_dynamic_reloc): Don't use the PLT address - when generating a normal executable for a symbol defined in a - regular file. When copying a reloc into the output file, adjust - the addend for a PC relative reloc against a global symbol. - -Mon May 4 10:08:18 1998 Tom Tromey <tromey@cygnus.com> - - * libbfd.h: Rebuilt. - * libbfd-in.h (_): Define as dgettext. - -Mon May 4 11:02:23 1998 Ian Lance Taylor <ian@cygnus.com> - - * coff-arm.c (coff_arm_relocate_section): Cast to bfd_signed_vma, - not signed. - * peicode.h (pe_saved_coff_bfd_print_private_bfd_data): Use PARAMS - when declaring parameter types. - (pe_saved_coff_bfd_copy_private_bfd_data): Likewise. - -Wed Apr 29 15:35:03 1998 Ian Lance Taylor <ian@cygnus.com> - - * config.bfd: If we include any ELF targets in targ_defvec and/or - targ_selvecs, then add the generic ELF targets to targ_selvecs. - * elf32-gen.c (dummy): New static const variable. - (elf_generic_info_to_howto): New static function. - (elf_generic_info_to_howto_rel): New static function. - (elf_info_to_howto): Define as elf_generic_info_to_howto. - (elf_info_to_howto_rel): Define as elf_generic_info_to_howto_rel. - * elf64-gen.c: Same changes as elf32-gen.c. - * elfcode.h (elf_object_p): For the generic target, ignore a - failure of bfd_default_set_arch_mach. Fix indentation a bit. - -Tue Apr 28 20:05:52 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure.in (WIN32LIBADD): Add -lintl on cygwin32. - * configure: Rebuild. - -Tue Apr 28 12:16:57 1998 Jason Molenda (crash@bugshack.cygnus.com) - - * config.bfd: Update OSR5/Unixware patterns. - -Mon Apr 27 18:02:24 1998 Richard Henderson <rth@cygnus.com> - - * elf.c (assign_file_positions_for_segments): Allow for holes - between sections added by a link script. - -Mon Apr 27 11:49:55 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Change version number to 2.9.4 - * configure: Rebuild. - - Based on patch from H.J. Lu <hjl@gnu.org>: - * elf.c (bfd_elf_get_bfd_needed_list): New function. - * bfd-in.h (bfd_elf_get_bfd_needed_list): Declare. - * bfd-in2.h: Rebuild. - -Sat Apr 25 20:07:53 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (struct alpha_relax_info): Replace elfsym with other. - Change all users. - -Sat Apr 25 18:29:07 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (struct alpha_relax_info): Add tsec & elfsym members. - (elf64_alpha_relax_section): Fill them in. - (elf64_alpha_relax_opt_call): Implement more than a stub. - (elf64_alpha_add_symbol_hook): Don't set SEC_LOAD or default - alignment on .scommon. - (elf64_alpha_merge_gots): Merge use counts as well. - -Sat Apr 25 14:07:29 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_relax_section): Use the proper section - for calculating a local symbol's address. - (elf64_alpha_calc_got_offsets): Skip entries with 0 use count. - Set the .got's cooked size as well as the raw size. - -Fri Apr 24 09:16:00 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_print_private_bfd_data): Add - internationalisation of printed information. - - * coff-arm.c (coff_arm_print_private_bfd_data): Add - internationalisation of printed information. - -Fri Apr 24 12:09:18 1998 Ian Lance Taylor <ian@cygnus.com> - - * syms.c (struct indexentry): Change directory_name, file_name, - and function_name fields to char *. - (struct stab_find_info): Change cached_file_name field to char *. - -Thu Apr 23 08:13:04 1998 Nick Clifton <nickc@cygnus.com> - - * peicode.h (dir_names): Add missing N_() macros to dir_names array. - -Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com> - - * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir). - -Wed Apr 22 17:48:48 1998 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am (install-data-local): Make $(includedir). - * Makefile.in: Rebuild. - -Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com> - - * libbfd-in.h: Use `gettext' and not `dgettext' for now. - -Wed Apr 22 12:53:40 1998 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am (INCLUDES): Add -I$(srcdir)/../intl -I../intl. - * Makefile.in: Rebuild. - - * bfd-in2.h: Rebuild for Nick's changes. - -Tue Apr 21 23:11:51 1998 Richard Henderson <rth@cygnus.com> - - * archive.c (_bfd_generic_read_ar_hdr_mag): Fix lossage in last - change wrt length == max_namelen. - -Tue Apr 21 21:19:36 1998 Tom Tromey <tromey@scribbles.cygnus.com> - - * Many files: Added gettext invocations around user-visible - strings. - * libbfd-in.h: Added gettext includes and defines. - * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY, - HAVE_LC_MESSAGES): Define. - * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and - po/Makefile. - * Makefile.am (SUBDIRS): Added po. - (POTFILES): New macro. - (po/POTFILES.in): New target. - (SOURCE_HFILES): New macro. - (HFILES): Use it. - * po/Make-in, po/POTFILES.in, po/bfd.pot: New files. - -Tue Apr 21 13:38:18 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) - - * elfcore.h (bfd_prstatus): Copy core_prstatus from the first - NT_PRSTATUS note section encountered, it contains the status of - the currently executing thread when the core file was written. - -Tue Apr 21 10:00:12 1998 Nick Clifton <nickc@cygnus.com> - - * libcoff.h: Add extra parameter to - bfd_coff_link_output_has_begun overrideable function. - * cofflink.c: Pass extra parameter to - bfd_coff_link_output_has_begun function. - * bfd-in.h: Add prototypes for exported ARM interworking - functions. - * peicode.h: ARM specific code reorganised to conform to BFD - coding conventions. - * coffcode.h: ARM specific code reorganised to conform to BFD - coding conventions. - * coff-arm.c: Code reorganised to conform to the BFD coding - conventions. Global variables have been moved into an ARM - specific hash table structure and a new function: - bfd_arm_get_bfd_for_interworking() has been created which is - called from the linker scripts. - -Tue Apr 21 00:11:51 1998 Richard Henderson <rth@cygnus.com> - - * archive.c (_bfd_generic_read_ar_hdr_mag): Simplify end-of-name test. - - * elf64-alpha.c (elf64_alpha_find_reloc_at_ofs): Renamed from - elf64_alpha_relax_find_reloc_ofs. Changed all callers. - (elf64_alpha_add_symbol_hook): Put small commons in .scommon not .sbss. - (elf64_alpha_size_got_sections): Don't merge .got sections twice. - -Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com> - - * config.bfd: Added sparc86x support. - -Fri Apr 17 22:29:04 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (mips_elf_relocate_section): Do not complain about - an out of range pc-relative jump/call to an undefined weak symbol. - -Thu Apr 16 13:49:00 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_do_reloc_gpdisp): Do all gpdisp - comparisons signed. - -Thu Apr 16 11:43:33 1998 Ian Lance Taylor <ian@cygnus.com> - - * archive.c (bfd_generic_archive_p): If a slurp subroutine returns - an error other than bfd_error_system_call, set the error to - bfd_error_wrong_format. - - * targets.c (bfd_target_vector) [SELECT_VECS not defined]: Add - bfd_elf32_powerpcle_vec. - - * elf.c (copy_private_bfd_data): If all the p_paddr fields in the - program segments are zero, don't set p_paddr_valid. - -Wed Apr 15 22:15:16 1998 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c: Initial implementation of relaxation -- - (struct alpha_elf_link_hash_entry): Add use_count member. - (elf64_alpha_check_relocs): Initialize and increment it. - (elf64_alpha_can_merge_gots): Check it when considering merging. - (elf64_alpha_merge_gots): Drop entries with zero use. - (elf64_alpha_calc_got_offsets_for_symbol): Likewise. - (elf64_alpha_always_size_sections): Split out got sizing ... - (elf64_alpha_size_got_sections): ... here. New function. - (elf64_alpha_relax_find_reloc_ofs): New function. - (elf64_alpha_relax_with_lituse): Likewise. - (elf64_alpha_relax_without_lituse): Likewise. - (elf64_alpha_relax_opt_call): Likewise. - (elf64_alpha_relax_section): Likewise. - (elf64_alpha_add_symbol_hook): Likewise. - (elf64_alpha_howto_table): Implement GPRELHIGH/LOW & IMMED_GP_16. - (elf64_alpha_relocate_section): Likewise. - (bfd_elf64_bfd_relax_section): Define. - (elf_backend_add_symbol_hook): Likewise. - -Wed Apr 15 16:08:46 1998 Richard Henderson <rth@cygnus.com> - - * elf.c (prep_headers): Use new EM_SPARCV9 symbol. - * elf64-sparc.c (ELF_MACHINE_CODE): Likewise. - (ELF_MACHINE_ALT1): New. Set to EM_OLD_SPARC64. - -Wed Apr 15 11:34:33 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Add -lkernel32 to WIN32LIBADD on cygwin32. - * configure: Rebuild. - -Mon Apr 13 16:46:27 1998 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am (libbfd_la_LIBADD): Add @WIN32LIBADD@. - (libbfd_la_LDFLAGS): Add @WIN32LDFLAGS@. - * configure.in: Define and substitute WIN32LDFLAGS and - WIN32LIBADD. - * aclocal.m4: Rebuild with new libtool. - * configure, Makefile.in: Rebuild. - -Fri Apr 10 13:44:27 1998 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_write_object_contents): Move a PE COMDAT symbol - before any other symbols in the same section. - -Wed Apr 8 14:50:23 1998 Michael Meissner <meissner@cygnus.com> - - * config.bfd (powerpc*-*-*): Remove PowerPC NT support from ELF - systems. - -Tue Apr 7 16:25:31 1998 Gavin Romig-Koch <gavin@cygnus.com> - - * dwarf2.c (comp_unit): Move it earlier in the source. Add - addr_size. - (read_address): Replace 'bdf*' argument with 'comp_unit*' argument. - Use addr_size for address size, rather than sizeof(bfd_vma). - (read_attribute): Replace bdf* argument with 'comp_unit*' argument. - Fix call to read_address. - (decode_line_info): Replace bdf* argument with 'comp_unit*' argument. - Scrap other unneeded arguments. Fix call to read_address. - (scan_unit_for_functions): Fix call to read_attribute. - (parse_comp_unit): We now handle more values for addr_size. - Set addr_size in unit. Fix call to read_attribute and - decode_line_info. - -Tue Apr 7 15:44:47 1998 Gavin Romig-Koch <gavin@cygnus.com> - - * dwarf2.c (parse_comp_unit): Drop use of unit->name when it is null. - -Tue Apr 7 12:35:18 1998 Ian Lance Taylor <ian@cygnus.com> - - * archures.c (bfd_default_scan): Add m68k cases back to default - switch, reverting patch of March 25, since IEEE support depends - upon them. - -Mon Apr 6 14:06:40 1998 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am (diststuff): New target. - * Makefile.in: Rebuild. - -Sun Apr 5 16:21:44 1998 Jeffrey A Law (law@cygnus.com) - - * som.c (som_bfd_ar_write_symbol_stuff): Fix computation of - som_offset when we have an extended name table. - -Sun Apr 5 16:04:39 1998 H.J. Lu <hjl@gnu.org> - - * Makefile.am (stamp-lib): Check that .libs/libbfd.a exists before - trying to copy it. - * Makefile.in: Rebuild. - -Fri Apr 3 11:09:42 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elf32-m68k.c (elf_m68k_size_dynamic_sections): Generate section - symbols when creating a shared library. - (elf_m68k_adjust_dynindx): New function, used by above code. - (elf_m68k_finish_dynamic_sections): Initialize the section - symbols. - (elf_m68k_relocate_section): Change abort to BFD_ASSERT. - -Wed Apr 1 16:04:02 1998 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (in_reloc_p): Use ARM_RVA32 in place of constant - value 11. - -Wed Apr 1 13:36:58 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elf32-m68k.c (elf_m68k_relocate_section, case R_68K_PLT*O): Fix - assertion. - -Tue Mar 31 00:12:12 1998 Jeffrey A Law (law@cygnus.com) - - * elf-m10300.c (mn10300_elf_relax_section): Correctly handle - absolute symbols. - -Mon Mar 30 12:46:15 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Set version to 2.9.1. - * configure: Rebuild. - - * Branched binutils 2.9. - -Mon Mar 30 12:20:50 1998 Brent Baccala <baccala@freesoft.org> - - * syms.c (ENABLE_CACHING): Define. - (struct indexentry): Define. - (struct stab_cache): Remove. - (cmpindexentry): New static function. - (struct stab_find_info): Add new fields: indextable, - indextablesize, cached_indexentry, cached_offset, cached_stab, and - cached_file_name. Remove fields: file_cache, function_cache, and - line_cache. - (_bfd_stab_section_find_nearest_line): Rewrite to build a sorted - index table and search it. - -Mon Mar 30 10:39:34 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (_bfd_elf_copy_private_section_data): Call - copy_private_bfd_data once we've seen the last SEC_ALLOC section. - - * cpu-mips.c: Remove trailing comma at end of enumeration list. - -Sat Mar 28 16:33:02 1998 Ian Lance Taylor <ian@cygnus.com> - - * coff-arm.c: Define all globally visible variables and functions - only when COFF_WITH_PE is not defined. - * configure.in (armpe_little_vec, armpe_big_vec): Add - coff-arm.lo. - * configure: Rebuild. - -Fri Mar 27 16:06:02 1998 Ian Lance Taylor <ian@cygnus.com> - - Fix some gcc -Wall warnings: - * aout-arm.c (MY(fix_pcrel_26)): Add casts to avoid warnings. - * archive.c (_bfd_generic_read_ar_hdr_mag): Likewise. - * archures.c (bfd_default_scan): Likewise. - * bfd.c (bfd_scan_vma): Likewise. - * binary.c (mangle_name): Likewise - * coff-arm.c (aoutarm_fix_pcrel_26): Likewise. - * coff-sh.c (sh_relocate_section): Likewise. - * coff-stgo32.c (create_go32_stub): Likewise. - * coffcode.h (coff_slurp_line_table): Likewise. - * ecoff.c (_bfd_ecoff_write_armap): Likewise. - * elf.c (_bfd_elf_make_section_from_shdr): Likewise. - (assign_file_positions_for_segments): Likewise. - * elf32-mips.c (mips_elf_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise. - * oasys.c (oasys_write_sections): Likewise. - * ppcboot.c (ppcboot_object_p): Likewise. - (mangle_name): Likewise. - * riscix.c (riscix_fix_pcrel_26): Likewise. - * srec.c (srec_scan): Likewise. - * stabs.c (_bfd_write_section_stabs): Likewise. - * sunos.c (sunos_add_dynamic_symbols): Likewise. - * aout-ns32k.c (_bfd_ns32k_relocate_contents): Add default case to - switch. Declare parameters for function pointers. - * archures.c (bfd_default_scan): Add braces to avoid ambiguous if - warning. - * elf.c (elf_sort_sections): Likewise. - * coff-arm.c (coff_thumb_pcrel_common): Initialize relocation. - Add default cases to switches. - (coff_arm_relocate_section): Remove unused local variables. - Always set rstat. - (coff_arm_bfd_set_private_flags): Change flag variable to type - flagword. - * coff-mips.c (mips_relocate_section): Initialize use_lo. - * coff-ppc.c (ppc_record_toc_entry): Change i to unsigned int. - (dump_toc): Change cat to const, and initialize it. - * coff-sh.c (sh_relax_delete_bytes): Initialize start and voff. - * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise. - (sh_elf_relocate_section): Initialize r_symndx. - * coffcode.h (coff_compute_section_file_positions): Only declare - old_sofar if ALIGN_SECTIONS_IN_FILE. - (coff_write_object_contents): Initialize csym. - * coffgen.c (coff_pointerize_aux): Make type and class unsigned. - * cpu-ns32k.c (_bfd_ns32k_get_displacement): Add default case to - switch. - * dwarf2.c: Include libiberty.h. - (read_2_signed_bytes, read_4_signed_bytes): Comment out. - (decode_line_info): Remove unused local variables. - * elf32-m32r.c (m32r_elf_sda16_reloc): Likewise. - (m32r_elf_relocate_section): Likewise. - * elf32-v850.c (v850_elf_store_addend_in_insn): Likewise. - (v850_elf_reloc): Likewise. - * elf-bfd.h (elf_linker_section_t): Make alignment unsigned. - (struct elf_obj_tdata): Make cverdefs and cverrefs unsigned. - * elf.c (assign_file_positions_for_segments): Always set adjust. - * elf32-d30v.c (bfd_elf_d30v_reloc): Initialize tmp_addr. Fully - parenthesize expression. - * elf32-m32r.c (m32r_elf_relocate_section): Always initialize h. - (m32r_elf_object_p): Return a value. - (m32r_elf_print_private_bfd_data): Change fprintf format string. - * elf32-mips.c (mips_elf_final_link): Initialize last. - (mips_elf_finish_dynamic_sections): Initialize last and dindx. - * elf32-v850.c (v850_elf_object_p): Return a value. - (v850_elf_print_private_bfd_data): Change fprintf format string. - * elfcode.h (elf_slurp_symbol_table): Change symcount and i to - unsigned long. - * elflink.h (elf_link_add_object_symbols): Change vernum to - unsigned int, and initialize it. Change fprintf format string. - (NAME(bfd_elf,size_dynamic_sections)): Cast -1 to bfd_size_type - when setting or comparing to soname_indx. - (elf_create_pointer_linker_section): Change num_symbols to - unsigned int. - * libcoff-in.h (coff_data_type): Change flags to flagword. - * peicode.h (pe_print_idata): Initialize idx. Change j to - bfd_size_type. Initialize hint_member. Remove useless test to - time_stamp. - (pe_print_edata): Change num_functions and num_names in struct - EDT_type to unsigned long. Remove cast. Change fprintf format - string. - * ppcboot.c (ppcboot_object_p): Change i to size_t. - * reloc.c (bfd_get_reloc_size): Change return type to unsigned - int. - * reloc16.c (bfd_coff_reloc16_relax_section): Change shrinks to - int *. Update uses. Change j to long. - * bfd-in2.h, libcoff.h: Rebuild. - -Fri Mar 27 10:10:46 1998 Catherine Moore <clm@cygnus.com> - - * elf32-v850.c Remove definition of USE_REL. - (v850_elf_info_to_howto_rela): New function. - (v850_elf_perform_relocation): Renamed from - v850_elf_store_addend_in_insn. Removed replace argument. - (v850_elf_reloc): store the relocation in the addend field instead - of the insn. - (v850_elf_final_link_relocate): Now calls - v850_elf_perform_relocation. - (v850_elf_relocate_section): Remove code to generate REL - relocations. - -Thu Mar 26 13:32:17 1998 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_new_section_hook): Set the type and storage - class in the native symbol information allocated for a new section - symbol. - -Thu Mar 26 10:13:41 1998 Nick Clifton <nickc@cygnus.com> - - * peicode.h: Chain together calls to - coff_bfd_copy_private_bfd_data and - coff_bfd_print_private_bfd_data. - - * coff-arm.c: Add prototypes for - coff_arm_bfd_print_private_bfd_data and - coff_arm_bfd_copy_private_bfd_data. - -Wed Mar 25 15:45:55 1998 Nick Clifton <nickc@cygnus.com> - - * coffcode.h (coff_mkobject_hook): Set private falgs even for a PE - build. - - * peicode.h: Call arm-coff private data functions after handling - pe private data. - - * coff-arm.c: Turn statics into globals so that they can be shared - both pe and pei backends. - -Wed Mar 25 15:19:38 1998 Ian Lance Taylor <ian@cygnus.com> - - * aoutf1.h (sunos_set_arch_mach): Use bfd_mach_m68* rather than - plain numbers. - (sunos_write_object_contents): Likewise. - * aoutx.h (NAME(aout,machine_type)): Likewise. - * coffcode.h (coff_set_arch_mach_hook): Likewise. - -Wed Mar 25 13:59:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * archures.c (bfd_mach_m68*): Add definitions for various m68k - variants. - (bfd_default_scan): Remove m68k special cases. - * bfd-in2.h: Rebuild. - * mipsbsd.c (MY(write_object_contents)): Use bfd_mach_m68* rather - than plain numbers. - * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise. - * cpu-m68k.c (arch_info_struct): Likewise. Add entry for - m68k:68000. - (bfd_m68k_arch): Set mach field to zero to signal no explicit - selection, change printable_name to just "m68k" and make that the - default instead of m68k:68020. - - * aout-tic30.c (NAME): Define this to avoid multiple definitions - from aoutx.h. - (MY_get_section_contents): Define as aout_32_get_section_contents - rather than NAME(aout,get_section_contents). - - * elf-m10300.c (elf32_mn10300_link_hash_table_create): Fix cast. - - * evax-alpha.c (evax_set_arch_mach): Only accept bfd_arch_alpha - and call bfd_default_set_arch_mach to do the real work. - -Wed Mar 25 10:41:35 1998 Richard Henderson <rth@cygnus.com> - - * bout.c (BALX): Include return register g14 as part of the insn. - (BALX_MASK): New. - (calljx_callback): Use it. - -Wed Mar 25 11:19:28 1998 Ian Lance Taylor <ian@cygnus.com> - - * libbfd-in.h (BFD_ALIGN): Cast this parameter to bfd_vma. - * libbfd.h: Rebuild. - - * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Change - byte_count to unsigned int. - (mn10300_elf_relax_section): Initialize internal_relocs. Remove - unused local variables. - - * evax-alpha.c (evax_close_and_cleanup): Remove unused local - variables er and er1. - - * cpu-v850.c: Include <ctype.h>. - (scan): Case isdigit argument to unsigned char. - - From Yan Meroth <YAN.MEROTH@st.com>: - * ihex.c (ihex_scan): Add extbase variable so that getting an - extended linear address record does not ignore any previous - extended address. - (ihex_write_object_contents): When writing out an extended linear - address record, zero out any previous extended address. - -Tue Mar 24 16:09:43 1998 Manfred Hollstein <manfred@s-direktnet.de> - - * ieee.c (do_one): Check section before dereferencing it. - (ieee_canonicalize_reloc): Likewise with src->relent.sym_ptr_ptr. - (ieee_generic_stat_arch_elt): Likewise with abfd->my_archive. - -Mon Mar 23 18:51:47 1998 Joel Sherrill <joel@OARcorp.com> - - * config.bfd: (sh*-*-rtems*): Switched from ELF to COFF. - -Mon Mar 23 14:23:36 1998 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c: Add interworking functions to pe backends. - -Fri Mar 20 18:47:20 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Use AM_DISABLE_SHARED. - * aclocal.m4, configure: Rebuild with libtool 1.2. - -Fri Mar 20 11:25:41 1998 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (coff_arm_relocate_section): Better error messages - when interowrking conflucts occur. Courtesy of Jonathan Walton - and Tony Thompson. - (aoutarm_std_reloc_howto): Fixed bitsize fields of rightshifted - relocations. Patch courtesy of Jonathan Walton and Tony - Thompson. - -Fri Mar 20 02:26:43 1998 Richard Henderson <rth@cygnus.com> - - * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Revert - part of Feb 22 change controling when to override the existing - symbol with the .plt entry. - -Wed Mar 18 09:26:25 1998 Nick Clifton <nickc@cygnus.com> - - * config.bfd (targ_cpu): Add thumb-pe target. - - * coffcode.h (OTHER_GLOBAL_CLASS): Support thumb external - functions in PE build. - -Sun Mar 8 23:37:26 1998 Stan Cox <scox@equinox.cygnus.com> - - * config.bfd (sparclite-*-elf*): Added. - -Mon Feb 23 19:31:19 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Add elf.lo to elf shell variable. - * Makefile.am (BFD_LIBS): Remove elf.lo. - (BFD_LIBS_CFILES): Remove elf.c. - (BFD32_BACKENDS): Add elf.lo. - (BFD32_BACKENDS_CFILES): Add elf.c. - * configure, Makefile.in: Rebuild. - -1998-02-23 15:53 Richard Henderson <rth@cygnus.com> - - * elf32-i386.c (elf_i386_relocate_section): A pc-relative - relocation against a non-local symbol should not have a dynamic - relocation. - -Mon Feb 23 16:17:08 1998 Ian Lance Taylor <ian@cygnus.com> - - * peicode.h (coff_swap_filehdr_in): Don't set BFD flag HAS_SYMS in - COFF filehdr flags. - (pe_print_private_bfd_data): Print PE flags. From Mikey - <jeffdb@netzone.com>. - -Sun Feb 22 20:39:00 1998 Richard Henderson <rth@cygnus.com> - - * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Don't create - a plt entry when we can determine that we authoritatively define - the symbol. - -Sun Feb 22 20:33:05 1998 Richard Henderson <rth@cygnus.com> - - * configure.in (COREFILE selection): Remove sparc-*-linux*. They - don't actually use trad-core, but a SunOS-style core file handled - by gdb directly. - * hosts/sparclinux.h: Remove. - -Wed Feb 18 15:31:06 1998 Ian Lance Taylor <ian@cygnus.com> - - * peicode.h (pe_print_idata): If there is no .idata section, look - for the import tables in some other section. Make the initial - label line up better with the data. Print the import address - table even if there is no import name table. If the import - address table holds actual addresses, print them. - -Tue Feb 17 12:58:34 1998 Ian Lance Taylor <ian@cygnus.com> - - * libbfd.c (bfd_seek): If fseek fails, save errno around call to - bfd_tell. If errno is EINVAL, set bfd_error_file_truncated, not - bfd_error_system_call. - -Fri Feb 13 13:11:33 1998 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am (AUTOMAKE_OPTIONS): Define. - * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e. - - From H.J. Lu <hjl@gnu.org>: - * Makefile.am (libbfd_la_LDFLAGS): Define. - * Makefile.in: Rebuild. - -Thu Feb 12 17:31:11 1998 Ian Lance Taylor <ian@cygnus.com> - - NetBSD patches from Gordon W. Ross <gwr@mc.com>: - * netbsd.h (MACHTYPE_OK): Define. - (MY(write_object_contents)): Use DEFAULT_ARCH and DEFAULT_MID when - calling N_SET_MACHTYPE, rather than having a switch. - * libaout.h (enum machine_type): Add M_PMAX_NETBSD, M_VAX_NETBSD, - and M_ALPHA_NETBSD. - * i386netbsd.c (MACHTYPE_OK): Don't define. - (DEFAULT_MID): Define. - * m68k4knetbsd.c (SEGMENT_SIZE): Don't define. - (MACHTYPE_OK): Don't define. - (DEFAULT_MID): Define. - * m68knetbsd.c: (MACHTYPE_OK): Don't define. - (DEFAULT_MID): Define. - * ns32knetbsd.c (MACHTYPE_OK): Don't define. - (DEFAULT_MID): Define. - * sparcnetbsd.c (MACHTYPE_OK): Don't define. - (DEFAULT_MID): Define. - - NetBSD patches from Gordon W. Ross <gwr@mc.com>: - * vaxnetbsd.c: New file. - * netbsd-core.c: Clean up. Remove unused macros. Use netbsd - rather than netbsd_core. - * targets.c (vaxnetbsd_vec): Declare. - (bfd_target_vector): Add vaxnetbsd_vec. If NETBSD_CORE is - defined, add netbsd_core_vec. - * configure.in: Set COREFILE for alpha*-*-netbsd* and - powerpc-*-netbsd* to netbsd-core.lo. If COREFILE is - netbsd-core.lo, set COREFLAG to -DNETBSD_CORE. - * config.bfd (alpha*-*-netbsd*): New target. - * Makefile.am: Rebuild dependencies. - (BFD32_BACKENDS): Add vaxnetbsd.lo. - (BFD32_BACKENDS_CFILES): Add vaxnetbsd.c. - * configure, Makefile.in: Rebuild. - - * configure.host: Remove the old shared library build stuff. We - now use libtool instead. - -Wed Feb 11 17:13:09 1998 Richard Henderson <rth@cygnus.com> - - * tekhex.c (tekhex_write_object_contents): Call tekhex_init. - -Tue Feb 10 19:23:28 1998 H.J. Lu <hjl@gnu.org> - - * configure.in: Take stab-syms.lo out of sparclinux_vec list. - * configure: Rebuild. - -Tue Feb 10 15:16:38 1998 Nick Clifton <nickc@cygnus.com> - * elf32-v850.c (remember_hi16s_reloc): New function. - (find_remembered_hi16s_reloc): New function. - (v850_elf_store_addend_in_insn): Use the above new functions to - match up HI6S relocs with LO16 relocs. - -Tue Feb 10 15:01:39 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Change -linux* to -linux-gnu*. - * config.bfd, configure.host: Likewise. - * configure: Rebuild. - -Mon Feb 9 19:40:59 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_store_addend_in_insn): Fix another - LO16/HI16S bug and improve comments about what is going on. - -Sat Feb 7 15:27:03 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure, aclocal.m4: Rebuild with new libtool. - -Fri Feb 6 14:48:20 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_merge_private_bfd_data): Do not complain - when merging v850 code into v850e/v850ea code. Do not initialise - output flags if the input is the default architecture. - -Fri Feb 6 11:50:22 1998 Jeffrey A Law (law@cygnus.com) - - * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): For BFD_RELOC_CTOR - get the size from bfd_arch_bits_per_address instead of directly - from the isa. - -Thu Feb 5 14:21:34 1998 Michael Meissner <meissner@cygnus.com> - - * libbfd-in.h (BFD_ALIGN): If rounding up would cause the address - to wrap, just return all 1's bits instead. - * libbfd.h: Regenerate. - -Thu Feb 5 11:51:05 1998 Ian Lance Taylor <ian@cygnus.com> - - * coff-i386.c (coff_pe_i386_relocate_section): New static function - if COFF_WITH_PE. - (coff_relocate_section): If COFF_WITH_PE, define as - coff_pe_i386_relocate_section. - * coffcode.h (coff_write_object_contents): If COFF_IMAGE_WITH_PE, - skip empty sections, to match coff_write_object_contents. - - * elf64-mips.c (mips_elf64_swap_reloca_out): Swap out r_addend, - rather than swapping out r_offset twice. From Luke Deller - <luked@cse.unsw.edu.au>. - -Wed Feb 4 19:11:28 1998 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Set libtool_enable_shared rather than - libtool_shared. Remove diversion hack. - * configure, Makefile.in, doc/Makefile.in, aclocal.m4: Rebuild - with new libtool. - -Wed Feb 4 16:10:21 1998 Brent Baccala <baccala@freesoft.org> - - * syms.c (struct stab_cache): Define. - (struct stab_find_info): Remove cached_offset, cached_stab, - cached_str, and cached_stroff fields. Add file_cache, - function_cache, and line_cache fields. - (_bfd_stab_section_find_nearest_line): Use extensive caching to - speed up searches. - -Wed Feb 4 13:34:22 1998 Ian Lance Taylor <ian@cygnus.com> - - * peicode.h (pe_print_idata): Check for import of ordinal rather - than name. - (pe_print_edata): If there is no .edata section, look for the - export data in some other section. - -Mon Feb 2 20:05:42 1998 Jason Molenda (crash@bugshack.cygnus.com) - - * configure.in: Change version to 2.8.4. - * configure: Regenerated. - -Mon Feb 2 17:39:39 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU> - - Add tms320c30 support: - * cpu-tic30.c: New file. - * aout-tic30.c: New file. - * coff-tic30.c: New file. - * archures.c (bfd_arch_tic30): Define. - (bfd_tic30_arch): Declare. - (bfd_archures_list): Add bfd_tic30_arch. - * targets.c (bfd_target_vector): Add tic30_aout_vec and - tic30_coff_vec. - * reloc.c (BFD_RELOC_TIC30_LDP): Define. - * coffcode.h (coff_set_arch_mach_hook): Add tic30 case. - (coff_set_flags): Likewise. - * config.bfd (tic30-*-*aout*, tic30-*-*coff*): New targets. - * configure.in (tic30_aout_vec, tic30_coff_vec): New vectors. - * Makefile.am: Rebuild dependencies. - (ALL_MACHINES): Add cpu-tic30.lo. - (ALL_MACHINES_CFILES): Add cpu-tic30.c. - (BFD32_BACKENDS): Add aout-tic30.lo and coff-tic30.lo. - (BFD32_BACKENDS_CFILES): Add aout-tic30.c and coff-tic30.c. - * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild. - -Mon Feb 2 12:25:12 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_store_addend_in_insn): Allow HI16_S reloc - to lag behind LO16 reloc by a couple of instructions. - -Mon Feb 2 14:09:46 1998 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am ($(srcdir)/bfd-in2.h): Add dummy command to force - make to reexamine the file timestamp. - ($(srcdir)/libbfd.h, $(srcddir)/libcoff.h): Likewise. - - * elf64-alpha.c (ELF_MAXPAGESIZE): Change to 0x10000 from - 0x100000. - -Fri Jan 30 19:07:07 1998 Geoff Keating <geoffk@ozemail.com.au> - - * elf32-ppc.c (ppc_elf_create_dynamic_sections): New procedure - to create .dynsbss and .rela.sbss sections. - (ppc_elf_adjust_dynamic_symbol): Put space for small data to be - copied from dynamic objects into .sbss. - (ppc_elf_size_dynamic_sections): Strip .rela.sbss if we don't - use it. Correct typo of .rela.sdata2. - (ppc_elf_finish_dynamic_symbol): Generate reloc to where we - put the data, which may now be in .sbss. - (ppc_elf_relocate_section): A SDAREL16 reloc can be in dynsbss. - (elf_backend_create_dynamic_sections): Define as - ppc_elf_create_dynamic_sections. - - * elf32-ppc.c (ppc_elf_check_relocs): Don't emit R_PPC_REL* relocs - against _GLOBAL_OFFSET_TABLE_. - (ppc_elf_relocate_section): Don't emit R_PPC_REL32 relocs in - shared libraries which refer to local symbols. Make sure that the - test for allocating space for a reloc in a shared object is the - same as the test for emitting a reloc. - -Thu Jan 29 15:55:35 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl> - - * config.bfd (i[3456]-*-mingw32*): New target. - * acinclude.m4 (BFD_BINARY_OPEN): Check for mingw32. - * aclocal.m4, configure: Rebuild. - -Wed Jan 28 13:41:26 1998 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (_bfd_elf_close_and_cleanup): Only check the strtab if we - have a bfd_object. - -Tue Jan 27 21:43:55 1998 Richard Henderson <rth@cygnus.com> - - Sparc v9 ABI compliant PLT: - * elf64-sparc.c (PLT_HEADER_SIZE): V9 ABI uses 4 entries. - (plt_templates, sparc64_elf_build_plt_entry): Delete. - (LARGE_PLT_THRESHOLD): New define. - (GOT_RESERVED_ENTRIES): V9 ABI only uses 1. - (sparc64_elf_build_plt): New function. - (sparc64_elf_plt_entry_offset): Likewise. - (sparc64_elf_plt_ptr_offset): Likewise. - (sparc64_elf_adjust_dynamic_symbol): Change h->plt_offset to - contain the index for convenience. Skip the initial entries - in .rela.plt. - (sparc64_elf_size_dynamic_sections): Zero the allocated contents - memory for the benefit of .rela.plt. - (sparc64_elf_relocate_section): Call sparc64_elf_plt_entry_offset. - (sparc64_elf_finish_dynamic_symbol): Kill template stuff. Use - sparc64_elf_plt_entry_offset & sparc64_elf_plt_ptr_offset for reloc. - (sparc64_elf_finish_dynamic_sections): DT_PLTGOT points to .plt. - Call sparc64_elf_build_plt. - (elf_backend_want_got_plt): No. - (elf_backend_plt_readonly): No. - (elf_backend_plt_alignment): 8. - - * elf.c (_bfd_elf_close_and_cleanup): New function; free the shstrtab. - * elf-bfd.h (_bfd_elf_close_and_cleanup): Declare it. - * elfxx-target.h (bfd_elfNN_close_and_cleanup): Arrange for it - to be called. - -Tue Jan 27 21:45:15 1998 Jeffrey A Law (law@cygnus.com) - - * archures.c (bfd_mach_mips*): Add definitions for various MIPS - processors. - * cpu-mips.c (arch_info_struct): Add mips variants. - * bfd-in2.h: Rebuilt. - -Tue Jan 27 15:06:04 1998 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (coff_arm_relocate_section): Preserve the contents of - t2a3_b_insn. - -Tue Jan 27 12:47:27 1998 Robert Lipe <robertl@dgii.com> - - * config.bfd (i[3456]86-sco3.2v5*): ELF now the default. - (i[3456]86sco3.2v5*coff): New target. - -Mon Jan 26 15:41:30 1998 Ian Lance Taylor <ian@cygnus.com> - - * bfd-in2.h: Rebuild with changes to chew--tab expansion. - -Thu Jan 22 21:26:48 1998 Richard Henderson <rth@cygnus.com> - - * bfd.c (bfd_get_error_handler): Add orthogonal function. - * bfd-in2.h: Regenerate. - -Thu Jan 22 21:13:39 1998 Richard Henderson <rth@cygnus.com> - - * tekhex.c (tekhex_write_object_contents): Check for no symbols. - -Wed Jan 21 21:19:03 1998 Ian Lance Taylor <ian@cygnus.com> - - * coff-i386.c (coff_i386_rtype_to_howto): If COFF_WITH_PE, don't - adjust addend for an output common symbol (from Jimmy Blair - <jimmyb@wrs.com>). If COFF_WITH_PE, adjust addend for PC relative - defined symbol to counteract adjustment made in generic relocation - code. - - * dwarf2.c: Include sysdep.h, not stdio.h and stdlib.h. - -Wed Jan 21 21:16:06 1998 Manfred Hollstein <manfred@s-direktnet.de> - - * coff-m88k.c (GET_SCNDHR_NRELOC): Fix typo in macro name. - (GET_SCNDHR_NLNNO): Likewise. - -Mon Jan 19 12:49:52 1998 Ian Lance Taylor <ian@cygnus.com> - - * cpu-sh.c (arch_info_struct): Correct next field of sh3e. - -Wed Jan 14 17:23:27 1998 Nick Clifton <nickc@cygnus.com> - - * elf32-m32r.c: Add macros to handle NOP insertion. - -Wed Jan 14 16:15:22 1998 Richard Henderson <rth@cygnus.com> - - * xcofflink.c (xcoff_mark_symbol): Don't mark the absolute section. - (xcoff_mark): Likewise. - (xcoff_build_ldsyms): Mark absolute symbols. - -Wed Jan 14 16:03:11 1998 Richard Henderson <rth@cygnus.com> - - * bout.c (b_out_write_object_contents): Sort symbols before output - to keep {CALL,BAL}NAME symbols adjacent. - (b_out_symbol_cmp): New function. - -For older changes see ChangeLog-9697 +For older changes see ChangeLog-9899 Local Variables: mode: change-log |