| 2001-12-31 Jakub Jelinek <jakub@redhat.com> |
| |
| * elflink.h (elf_bfd_final_link): Check if dynobj is not NULL |
| before looking for .eh_frame_hdr section. |
| * elf-eh-frame.c (_bfd_elf_write_section_eh_frame_hdr): If |
| .eh_frame_hdr section is being stripped from output, don't do |
| anything. |
| |
| 2001-12-27 Tom Rix <trix@redhat.com> |
| |
| * coff-rs6000.c (xcoff_generate_rtinit): Clean data_buffer alloc/free. |
| * coff64-rs6000.c (xcoff64_generate_rtinit): Same. |
| (xcoff_write_archive_contents_big): Rewrite. |
| (xcoff_write_armap_big): Rewrite. |
| (xcoff_write_one_armap_big): Delete. |
| * libxcoff.h : Clean up. |
| |
| 2001-12-21 Tom Rix <trix@redhat.com> |
| |
| * xcofflink.c (bfd_xcoff_link_generate_rtinit): New function. |
| Interface to linker for generation of __rtinit. |
| * libxcoff.h (struct xcoff_backend_data_rec): Add new ops to xcoff |
| backend to generate special linker symbol __rtinit. |
| * coff-rs6000.c (bfd_xcoff_backend_data, bfd_pmac_xcoff_backend_data) |
| : Add new rtinit ops |
| * coff64-rs6000.c (bfd_xcoff_aix5_backend_data, |
| bfd_xcoff_backend_data): Same. |
| * bfd-in.h: Add bfd_xcoff_link_generate_rtinit. |
| * bfd-in2.h : Regenerate. |
| |
| 2001-12-21 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf32-sparc.c (_bfd_sparc_elf_howto_table): Fix dst_mask for |
| R_SPARC_DISP32. Support R_SPARC_PLT32. |
| (sparc_reloc_map): Add BFD_RELOC_16_PCREL and BFD_RELOC_SPARC_PLT32. |
| (elf32_sparc_check_relocs): Handle R_SPARC_PLT32. |
| (elf32_sparc_relocate_section): Likewise. |
| * elf64-sparc.c (sparc64_elf_howto_table): Fix dst_mask for |
| R_SPARC_DISP32. Support R_SPARC_PLT32 and R_SPARC_PLT64. |
| (sparc_reloc_map): Add BFD_RELOC_16_PCREL, BFD_RELOC_64_PCREL |
| and BFD_RELOC_SPARC_PLT32. |
| (sparc64_elf_check_relocs): Handle R_SPARC_PLT32 and R_SPARC_PLT64. |
| (sparc64_elf_relocate_section): Likewise. |
| * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SPARC_PLT32. |
| * bfd-in2.h, libbfd.h: Rebuilt. |
| |
| 2001-12-20 Tom Rix <trix@redhat.com> |
| |
| * coffcode.h (coff_compute_section_file_positions): Add special AIX |
| loader alignment of text section. |
| |
| 2001-12-20 Jason Thorpe <thorpej@wasabisystems.com> |
| |
| * config.bfd (mips-dec-netbsd*): Delete alias for mips*el-*-netbsd*. |
| |
| * config.bfd (arm-*-netbsdelf*): Add target. |
| * configure.in: Include netbsd-core.lo for native arm-*-netbsd*. |
| * configure: Regenerate. |
| |
| 2001-12-20 Alan Modra <amodra@bigpond.net.au> |
| |
| * elfcode.h (elf_slurp_symbol_table): Test elf_elfsections for NULL, |
| as can happen with a core file, before dereferencing. |
| |
| 2001-12-19 Michael Snyder <msnyder@redhat.com> |
| |
| * elf32-i386.c (elf_i386_grok_psinfo): Fix copy-and-paste error: |
| target is i386 (not mips), and size of descdata is 124 (not 128). |
| |
| 2001-12-19 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): If new_size |
| is 0, temporarily grow it to minimal CIE size. |
| (_bfd_elf_write_section_eh_frame): If input .eh_frame section would |
| end up empty, build a fake minimal CIE. |
| |
| 2001-12-19 Steve Ellcey <sje@cup.hp.com> |
| |
| * config.bfd (bfd_elf32_ia64_hpux_big_vec): New vector for |
| ia64*-*-hpux* target. |
| (bfd_elf64_ia64_hpux_big_vec): Likewise. |
| * targets.c: Ditto. |
| * configure.in: Ditto. |
| * configure: Regenerate |
| * elfxx-ia64.c (elfNN_ia64_final_write_processing): Replace use of |
| alloca with bfd_malloc. |
| (get_local_sym_hash): Likewise. |
| (elfNN_hpux_post_process_headers): New function. |
| #include elfNN-target.h again with values for IA64 HP-UX vector. |
| |
| 2001-12-18 Michael Snyder <msnyder@redhat.com> |
| |
| * elf.c (assign_file_positions_for_segments): Don't sort PT_NOTE |
| sections of corefiles. Also it makes no sense to sort if count == 1. |
| |
| 2001-12-18 H.J. Lu <hjl@gnu.org> |
| |
| * elf.c (_bfd_elf_copy_private_bfd_data): Also copy GP. |
| |
| 2001-12-18 H.J. Lu <hjl@gnu.org> |
| |
| * elf.c (_bfd_elf_copy_private_bfd_data): Update comments. |
| |
| 2001-12-18 H.J. Lu <hjl@gnu.org> |
| |
| * elf-bfd.h (_bfd_elf_copy_private_bfd_data): New. Prototype. |
| (_bfd_mips_elf_copy_private_bfd_data): Removed. |
| |
| * elf.c (_bfd_elf_copy_private_bfd_data): New. Copy e_flags in |
| the ELF header. |
| |
| * elf32-i370.c (??_elf_copy_private_bfd_data): Removed. |
| (bfd_elf??_bfd_copy_private_bfd_data): Removed. |
| * elf32-m32r.c: Likewise. |
| * elf32-m68k.c: Likewise. |
| * elf32-mcore.c: Likewise. |
| * elf32-mips.c: Likewise. |
| * elf32-ppc.c: Likewise. |
| * elf32-v850.c: Likewise. |
| * elf64-ppc.c: Likewise. |
| * elf64-sparc.c: Likewise. |
| * elfxx-ia64.c: Likewise. |
| |
| * elf64-mips.c (bfd_elf64_bfd_copy_private_bfd_data): Removed. |
| |
| * elfxx-target.h (bfd_elfNN_bfd_copy_private_bfd_data): Defined |
| to _bfd_elf_copy_private_bfd_data. |
| |
| 2001-12-18 Martin Schwidefsky <schwidefsky@de.ibm.com> |
| |
| * elf32-s390 (elf_s390_check_relocs): Pass addend to |
| gc_record_vtentry. |
| * elf64-s390 (elf_s390_check_relocs): Likewise. |
| Fix by Andreas Jaeger <aj@suse.de>. |
| |
| 2001-12-18 Jason Thorpe <thorpej@wasabisystems.com> |
| |
| * configure.host: Correctly match all NetBSD/mips |
| hosts. |
| |
| 2001-12-18 matthew green <mrg@eterna.com.au> |
| |
| * config.bfd (m68*-*-netbsdelf*): New target. |
| (m68*-*-netbsd): Also include bfd_elf32_m68k_vec. |
| (m68*-*-netbsdaout*): New alias for m68*-*-netbsd. |
| |
| 2001-12-18 Jakub Jelinek <jakub@redhat.com> |
| |
| * elflink.h (size_dynamic_sections): Skip anonymous version tag. |
| (elf_link_assign_sym_version): Don't count anonymous version tag. |
| |
| 2001-12-18 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf-eh-frame.c (struct cie): Add make_lsda_relative. |
| (struct eh_cie_fde): Add lsda_encoding, lsda_offset, |
| make_lsda_relative. |
| (read_value, write_value): New. |
| (_bfd_elf_discard_section_eh_frame): Inicialize |
| lsda_encoding, lsda_offset and make_lsda_relative. |
| (_bfd_elf_eh_frame_section_offset): If make_lsda_relative, |
| request no dynamic reloc for LSDA field of FDE. |
| (_bfd_elf_write_section_eh_frame): Handle make_lsda_relative. |
| If a non-DW_EH_PE_absptr value is 0, don't adjust it by base |
| or pcrel. Fix address computation for DW_EH_PE_pcrel relocs. |
| Update LSDA field if LSDA encoding is DW_EH_PE_pcrel, because |
| . might have changed due to deleted FDE or CIEs. |
| |
| 2001-12-18 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf-strtab.c (struct elf_strtab_hash_entry): Add u.next. |
| (last_eq): Remove. |
| (_bfd_elf_strtab_finalize): Don't use a hash table for last |
| character chains, instead use an array. |
| |
| 2001-12-18 Jason Thorpe <thorpej@wasabisystems.com> |
| |
| * elf.c (elfcore_netbsd_get_lwpid): New function. |
| (elfcore_grok_netbsd_procinfo): New function. |
| (elfcore_grok_netbsd_note): New function. |
| (elfcore_read_notes): Call elfcore_grok_netbsd_note to process |
| NetBSD ELF core file notes. |
| |
| 2001-12-18 Alan Modra <amodra@bigpond.net.au> |
| |
| * elfcode.h (struct bfd_preserve): New. |
| (elf_object_p): Replace preserved_* vars with instance of above. |
| Save and restore arch_info pointer rather than arch, mach so that |
| more cases can be restored. Save and restore new section_tail, |
| section_htab structure, and init appropriately. Move "rest of |
| section header" code so that i_shdrp needs no NULL initialisation. |
| Free old section_htab on success. |
| * elfcore.h (elf_core_file_p): Likewise. |
| |
| 2001-12-17 Tom Rix <trix@redhat.com> |
| |
| * coffcode.h (sec_to_styp_flags): Add STYP_EXCEPT and STYP_TYPCHK for |
| xcoff. |
| |
| 2001-12-17 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf-bfd.h (elf_discarded_section): Define. |
| * elflink.h (elf_link_input_bfd): Use it. |
| (elf_reloc_symbol_deleted_p): Likewise. |
| |
| * elf64-alpha.c (elf64_alpha_relocate_section): Don't warn about |
| overflows for pc relative relocs against discarded sections. |
| |
| 2001-12-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * elf32-mips.c (_bfd_mips_elf_relocate_section): Formatting. |
| * elf64-mips.c: Add most of the fixes and tweaks done in elf32-mips.c |
| over the last months. Add some code for mips16 handling. |
| (mips_elf64_check_mips16_stubs): New function. |
| (mips_elf64_stub_section_p): Likewise. |
| (mips_elf64_calculate_relocation): Change interface to support mips16. |
| (mips_elf64_perform_relocation): Likewise. |
| |
| 2001-12-17 Alan Modra <amodra@bigpond.net.au> |
| |
| Support for more than 64k ELF sections. |
| * elf-bfd.h (elf_size_info <swap_symbol_out>): Add shndx param. |
| (bfd_elf32_swap_symbol_in): Likewise. |
| (bfd_elf32_swap_symbol_out): Likewise. |
| (bfd_elf64_swap_symbol_in): Likewise. |
| (bfd_elf64_swap_symbol_out): Likewise. |
| (elf_reloc_cookie): Add locsym_shndx field. Make locsyms a PTR. |
| (elf_obj_tdata): Add num_elf_sections, symtab_shndx_hdr and |
| symtab_shndx_section. |
| (elf_numsections): Define. |
| (elf_symtab_shndx): Define. |
| * elf.c (setup_group): Use elf_numsections rather than header e_shnum. |
| (bfd_elf_find_section): Likewise. |
| (bfd_section_from_elf_index): Likewise. |
| (bfd_section_from_shdr): Likewise. Handle SHT_SYMTAB_SHNDX. |
| (bfd_section_from_r_symndx): Read symbol shndx extension, and |
| translate st_shndx for > SHN_HIRESERVE. |
| (assign_section_numbers): Skip reserved sections. Assign |
| symtab_shndx_section and elf_numsections. Exclude reserved |
| sections from e_shnum. Set up symtab_shndx_hdr. |
| (_bfd_elf_compute_section_file_positions): Handle symtab_shndx_hdr. |
| (map_sections_to_segments): Don't map eh_frame_hdr unless required. |
| (assign_file_positions_except_relocs): Use elf_numsections rather |
| than header e_shnum. Skip reserved sections and symtab_shndx_section. |
| (prep_headers): Set name for symtab_shndx_hdr. |
| (_bfd_elf_assign_file_positions_for_relocs): Use elf_numsections. |
| (_bfd_elf_write_object_contents): Likewise. Skip reserved sections. |
| (_bfd_elf_section_from_bfd_section): Check bfd_{abs,com,und}_section |
| first. Use elf_section_data if available. Use elf_numsections. |
| Start scan at index 1. |
| (copy_private_bfd_data ): Comment fixes. |
| (MAP_ONESYMTAB): Define above SHN_HIOS. |
| (MAP_DYNSYMTAB): Likewise. |
| (MAP_STRTAB): Likewise. |
| (MAP_SHSTRTAB): Likewise. |
| (MAP_SYM_SHNDX): New define. |
| (_bfd_elf_copy_private_symbol_data): Handle symtab_shndx_section. |
| (swap_out_syms): Swap out SHT_SYMTAB_SHNDX section too. |
| * elfcode.h (elf_swap_symbol_in): Add shndx param, and handle shndx |
| extension. |
| (elf_swap_symbol_out): Likewise. |
| (elf_object_p): Set elf_numsections, and use instead of e_shnum. |
| Initialialise reserved elf_elfsections to point at shdr[0]. Remove |
| redundant bfd_release calls. |
| (elf_slurp_symbol_table): Read symbol shndx extension, and use with |
| elf_swap_symbol_in. Translate st_shndx for > SHN_HIRESERVE too. |
| * elflink.h (elf_link_is_defined_archive_symbol): Read symbol shndx |
| extension, and use with elf_swap_symbol_in. |
| (elf_link_record_local_dynamic_symbol): Likewise. |
| (elf_link_add_object_symbols): Likewise. Also translate st_shndx |
| for elf sections > SHN_HIRESERVE. |
| (NAME(bfd_elf,size_dynamic_sections)): Adjust elf_swap_symbol_out |
| call. |
| (struct elf_final_link_info): Add locsym_shndx and symshndxbuf. |
| (elf_bfd_final_link): Allocate the above, and tidy code allocating |
| other buffers. Use elf_numsections instead of e_shnum. Adjust |
| elf_swap_symbol_out calls. |
| (elf_link_output_sym): Swap out symbol shndx extension too. |
| (elf_link_flush_output_syms): And flush them to disk. |
| (elf_link_output_extsym): Use SHN_BAD. Adjust elf_swap_symbol_out |
| calls. |
| (elf_gc_mark): Read symbol shndx extension, and use with |
| elf_swap_symbol_in. |
| (elf_link_input_bfd): Likewise, Translate st_shndx for elf sections |
| > SHN_HIRESERVE too. Use SHN_BAD. |
| (elf_reloc_symbol_deleted_p): Use symbol shndx extensions with |
| elf_swap_symbol_in. Translate st_shndx > SHN_HIRESERVE too. |
| (elf_bfd_discard_info): Read symbol shndx extension. Don't attempt |
| to continue after a bfd error. |
| * elf-m10200.c (mn10200_elf_relax_section): Only read local syms. |
| Stash them immediately to symtab_hdr->contents rather than later |
| in multiple places. Clean up afterwards. Read symbol shndx |
| extension, and use with swap_symbol_in. Translate SHN_UNDEF, |
| SHN_ABS, SHN_COMMON and elf sections > SHN_HIRESERVE to bfd |
| sections too. Remove dead code. |
| (mn10200_elf_relax_delete_bytes): Use symbol shndx extension |
| when swapping in symbols. Tidy code adjusting global syms. |
| Don't swap in global syms. |
| (mn10200_elf_symbol_address_p): Likewise. Remove extsyms param. |
| (mn10200_elf_get_relocated_section_contents): Read symbol shndx |
| extension, and use with swap_symbol_in. Rename "size" -> "amt" |
| to maximize code in common with other files. Translate st_shndx |
| for > SHN_HIRESERVE too. Remove dead code. |
| * elf-m10300.c (mn10300_elf_relax_section): Only read local syms. |
| Stash them immediately to symtab_hdr->contents rather than later |
| in multiple places. Clean up afterwards. Read symbol shndx |
| extension, and use with swap_symbol_in. Remove dead code. |
| (mn10300_elf_relax_delete_bytes): As for elf-m10200.c. |
| (mn10300_elf_symbol_address_p): Likewise. |
| (mn10300_elf_get_relocated_section_contents): Likewise. |
| * elf32-h8300.c (elf32_h8_relax_section): As for elf-m10300.c. |
| (elf32_h8_relax_delete_bytes): Likewise. |
| (elf32_h8_symbol_address_p): Likewise. |
| (elf32_h8_get_relocated_section_contents): Likewise. |
| * elf32-hppa.c (elf32_hppa_size_stubs): Read symbol shndx |
| extension, and use with swap_symbol_in. |
| * elf64-hppa.c (elf64_hppa_check_relocs): Likewise. |
| * elf32-i370.c (i370_elf_finish_dynamic_sections): Adjust call to |
| bfd_elf32_swap_symbol_out. |
| * elf32-m32r.c (m32r_elf_get_relocated_section_contents): Translate |
| elf sections > SHN_HIRESERVE too. |
| * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Only read |
| local syms. Read symbol shndx extension, and use with swap_symbol_in. |
| * elf32-mips.c (_bfd_mips_elf_final_write_processing): Use |
| elf_numsections rather than header e_shnum. |
| * elf32-sh.c (sh_elf_relax_section): As for elf-m10300.c. |
| (sh_elf_relax_delete_bytes): Likewise. |
| (sh_elf_get_relocated_section_contents): Likewise. Only read local |
| symbols. |
| * elf32-v850.c (v850_elf_symbol_processing): Use an unsigned int to |
| hold section index. Use elf_numsections rather than e_shnum. |
| Rename "index" -> "indx" to avoid shadowing warning. |
| (v850_elf_add_symbol_hook): Likewise. |
| * elf64-alpha.c (elf64_alpha_relax_section): Only read local syms. |
| Read symbol shndx extension, and use with swap_symbol_in. |
| * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise. |
| Translate SHN_COMMON and elf sections > SHN_HIRESERVE too. |
| * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise. |
| (elfNN_ia64_aix_add_symbol_hook): Use elf_numsections. |
| |
| * elf-m10300.c (mn10300_elf_gc_mark_hook): Remove unnecessary checks |
| before calling bfd_section_from_elf_index on local syms. |
| * elf32-arm.h (elf32_arm_gc_mark_hook): Likewise. |
| * elf32-avr.c (elf32_avr_gc_mark_hook): Likewise. |
| * elf32-cris.c (cris_elf_gc_mark_hook): Likewise. |
| * elf32-d10v.c (elf32_d10v_gc_mark_hook): Likewise. |
| * elf32-fr30.c (fr30_elf_gc_mark_hook): Likewise. |
| * elf32-hppa.c (elf32_hppa_gc_mark_hook): Likewise. |
| * elf32-i386.c (elf_i386_gc_mark_hook): Likewise. |
| * elf32-m32r.c (m32r_elf_gc_mark_hook): Likewise. |
| * elf32-m68k.c (elf_m68k_gc_mark_hook): Likewise. |
| * elf32-mcore.c (mcore_elf_gc_mark_hook): Likewise. |
| * elf32-mips.c (_bfd_mips_elf_gc_mark_hook): Likewise. |
| * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Likewise. |
| * elf32-ppc.c (ppc_elf_gc_mark_hook): Likewise. |
| * elf32-s390.c (elf_s390_gc_mark_hook): Likewise. |
| * elf32-sh.c (sh_elf_gc_mark_hook): Likewise. |
| * elf32-sparc.c (elf32_sparc_gc_mark_hook): Likewise. |
| * elf32-v850.c (v850_elf_gc_mark_hook): Likewise. |
| * elf32-xstormy16.c (xstormy16_elf_gc_mark_hook): Likewise. |
| * elf64-mips.c (mips_elf64_gc_mark_hook): Likewise. |
| * elf64-mmix.c (mmix_elf_gc_mark_hook): Likewise. |
| * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise. |
| * elf64-s390.c (elf_s390_gc_mark_hook): Likewise. |
| * elf64-x86-64.c (elf64_x86_64_gc_mark_hook): Likewise. |
| |
| 2001-12-17 Alan Modra <amodra@bigpond.net.au> |
| |
| Hash bfd sections for fast lookup and create. |
| * bfd.c (struct _bfd): Add section_htab, section_tail. |
| * libbfd-in.h (_bfd_delete_bfd): Declare. |
| (bfd_section_hash_newfunc): Declare. |
| * opncls.c (_bfd_new_bfd): Free memory on failure. Init |
| section_htab and section_tail. |
| (_bfd_delete_bfd): New function. |
| (bfd_openr): Use it. |
| (bfd_fdopenr): Likewise. |
| (bfd_openstreamr): Likewise. |
| (bfd_openw): Likewise. |
| (bfd_close): Likewise. |
| (bfd_close_all_done): Likewise. |
| (bfd_release): Comment. |
| * section.c (struct section_hash_entry): New. |
| (bfd_section_hash_newfunc): New function. |
| (section_hash_lookup): Define. |
| (bfd_section_init): New function, split out from |
| bfd_make_section_anyway. |
| (bfd_get_section_by_name): Lookup via hash table. |
| (bfd_get_unique_section_name): Likewise. |
| (bfd_make_section_old_way): Rewrite to use hash table. |
| (bfd_make_section_anyway): Likewise. |
| (bfd_make_section): Likewise. Return NULL for attempts to make |
| BFD_{ABS,COM,UND,IND}_SECTION_NAME. |
| (_bfd_strip_section_from_output): Adjust section_tail if needed. |
| * configure.in: Bump bfd version. |
| * configure: Regenerate. |
| * libbfd.h: Regenerate. |
| * bfd-in2.h: Regenerate. |
| |
| 2001-12-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * elf64-mips.c (mips_elf64_link_hash_entry): New link hash. |
| (mips_elf64_high): New Function. |
| (mips_elf64_higher): Likewise. |
| (mips_elf64_highest): Likewise. |
| (mips_elf64_info_to_howto_rel): Likewise. |
| (mips_elf64_info_to_howto_rela): Likewise. |
| (mips_elf64_write_rel): Likewise. |
| (mips_elf64_write_rela): Likewise. |
| (mips_elf64_link_hash_newfunc): Likewise. |
| (mips_elf64_hi16_reloc): Likewise. |
| (mips_elf64_higher_reloc): Likewise. |
| (mips_elf64_highest_reloc): Likewise. |
| (mips_elf64_gprel16_reloc): Likewise. |
| (mips_elf64_gprel16_reloca): Likewise. |
| (mips_elf64_literal_reloc): Likewise. |
| (mips_elf64_gprel32_reloc): Likewise. |
| (mips_elf64_shift6_reloc): Likewise. |
| (mips_elf64_got16_reloc): Likewise. |
| (mips_elf64_assign_gp): Likewise. |
| (mips_elf64_final_gp): Likewise. |
| (gprel16_with_gp): Likewise. |
| (mips_elf64_additional_program_headers): Likewise. |
| (mips_elf64_link_hash_table_create): Likewise. |
| (mips_elf64_got_offset_from_index): Likewise. |
| (_mips_elf64_got_info): Likewise. |
| (mips_elf64_sign_extend): Likewise. |
| (mips_elf64_overflow_p): Likewise. |
| (mips_elf64_global_got_index): Likewise. |
| (mips_elf64_sort_hash_table_f): Likewise. |
| (mips_elf64_sort_hash_table): Likewise. |
| (mips_elf64_swap_msym_out): Likewise. |
| (mips_elf64_create_local_got_entry): Likewise. |
| (mips_elf64_local_got_index): Likewise. |
| (mips_elf64_got_page): Likewise. |
| (mips_elf64_got16_entry): Likewise. |
| (mips_elf64_local_relocation_p): Likewise. |
| (mips_elf64_next_relocation): Likewise. |
| (mips_elf64_create_dynamic_relocation): Likewise. |
| (mips_elf64_calculate_relocation): Likewise. |
| (mips_elf64_obtain_contents): Likewise. |
| (mips_elf64_perform_relocation): Likewise. |
| (mips_elf64_relocate_section): Likewise. |
| (mips_elf64_create_dynamic_sections): Likewise. |
| (mips_elf64_adjust_dynamic_symbol): Likewise. |
| (mips_elf64_always_size_sections): Likewise. |
| (mips_elf64_size_dynamic_sections): Likewise. |
| (mips_elf64_finish_dynamic_symbol): Likewise. |
| (mips_elf64_finish_dynamic_sections): Likewise. |
| (mips_elf64_gc_mark_hook): Likewise. |
| (mips_elf64_gc_sweep_hook): Likewise. |
| (mips_elf64_create_got_section): Likewise. |
| (mips_elf64_record_global_got_symbol): Likewise. |
| (mips_elf64_create_msym_section): Likewise. |
| (mips_elf64_allocate_dynamic_relocations): Likewise. |
| (mips_elf64_check_relocs): Likewise. |
| (mips_elf64_output_extsym): Likewise. |
| (mips_elf64_swap_gptab_in): Likewise. |
| (mips_elf64_swap_gptab_out): Likewise. |
| (gptab_compare): Likewise. |
| (mips_elf64_final_link): Likewise. |
| (prev_reloc_addend): Remenber addend of previous parts of a combined |
| reloc. |
| (ELF_MIPS_GP_OFFSET): New define. |
| (STUB_LW,STUB_MOVE,STUB_JALR,STUB_LI16): Likewise. |
| (MIPS_FUNCTION_STUB_SIZE): Likewise. |
| (mips_elf64_howto_rel): Fix HOWTO defines. |
| (mips_elf64_howto_rela): Likewise. |
| (mips_elf64_swap_reloca_out): Fix signedness. |
| (mips_elf64_be_swap_reloc_in): Use ELF64* instead of ELF32*. |
| (mips_elf64_be_swap_reloca_in): Likewise. |
| (mips_elf64_be_swap_reloc_out): Likewise. Preserve extended type info. |
| (mips_elf64_be_swap_reloca_out): Likewise. |
| |
| 2001-12-15 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf-bfd.h (_bfd_elf_maybe_strip_eh_frame_hdr): New prototype. |
| * elf-eh-frame.c (struct eh_frame_hdr_info): Add strip. |
| (_bfd_elf_discard_section_eh_frame): Don't create .eh_frame_hdr |
| sec_info here. Free ehbuf. |
| (_bfd_elf_discard_section_eh_frame_hdr): Don't size the section |
| if hdr_info->strip. |
| (_bfd_elf_maybe_strip_eh_frame_hdr): New. |
| * elflink.h (size_dynamic_sections): Call it. |
| |
| 2001-12-14 Alan Modra <amodra@bigpond.net.au> |
| |
| * elflink.h (elf_bfd_discard_info): Fix segfault when dynobj NULL. |
| |
| 2001-12-13 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf-bfd.h (enum elf_link_info_type): New. |
| (struct bfd_elf_section_data): Remove stab_info and merge_info |
| fields, add sec_info and sec_info_type. |
| (struct elf_obj_tdata): Add eh_frame_hdr field. |
| (_bfd_elf_discard_section_eh_frame): New prototype. |
| (_bfd_elf_discard_section_eh_frame_hdr): Likewise. |
| (_bfd_elf_eh_frame_section_offset): Likewise. |
| (_bfd_elf_write_section_eh_frame): Likewise. |
| (_bfd_elf_write_section_eh_frame_hdr): Likewise. |
| * Makefile.am (BFD32_BACKENDS): Add elf-eh-frame.lo. |
| (BFD32_BACKENDS_CFILES): Add elf-eh-frame.c. |
| (elf-eh-frame.lo): New. |
| * Makefile.in: Rebuilt. |
| * configure.in (elf): Add elf-eh-frame.lo. |
| * configure: Rebuilt. |
| * elf.c (_bfd_elf_print_private_bfd_data): Support PT_GNU_EH_FRAME. |
| (map_sections_to_segments): Create PT_GNU_EH_FRAME if requested. |
| (get_program_header_size): Take into account PT_GNU_EH_FRAME |
| segment. |
| (_bfd_elf_rela_local_sym): Use sec_info_type and sec_info. |
| (_bfd_elf_rel_local_sym): Likewise. |
| (_bfd_elf_section_offset): Likewise. Call |
| _bfd_elf_eh_frame_section_offset too. |
| * elfxx-ia64.c (elfNN_ia64_relocate_section): Use sec_info_type and |
| sec_info. |
| * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. |
| * elf-eh-frame.c: New file. |
| * elflink.h (elf_link_add_object_symbols): Don't optimize SHF_MERGE |
| .stab sections. Set sec_info_type, use sec_info instead |
| of merge_info and stab_info. |
| (elf_link_create_dynamic_sections): Create .eh_frame_hdr section |
| if --eh-frame-hdr. |
| (elf_bfd_final_link): Write .eh_frame_hdr section. |
| (elf_link_sec_merge_syms): Use sec_info_type and sec_info. |
| (elf_link_input_bfd): Likewise. |
| Call _bfd_elf_write_section_eh_frame to write .eh_frame sections. |
| (elf_bfd_discard_info): Add output_bfd argument. |
| Call _bfd_elf_discard_section_eh_frame and |
| _bfd_elf_discard_section_eh_frame_hdr. |
| (elf_section_ignore_discarded_relocs): Use sec_info_type, not section |
| names. |
| * bfd-in.h (bfd_elf32_discard_info, bfd_elf64_discard_info): Adjust |
| prototypes. |
| * bfd-in2.h (bfd_elf32_discard_info, bfd_elf64_discard_info): Likewise. |
| |
| 2001-12-12 Richard Henderson <rth@redhat.com> |
| |
| * syms.c (_bfd_generic_read_minisymbols): Early return for |
| no symbols. Patch from FreeBSD folk; exact origin unknown. |
| |
| 2001-12-11 Alan Modra <amodra@bigpond.net.au> |
| |
| * elfcode.h (elf_swap_ehdr_out): Adjust value written for e_shnum |
| and e_shstrndx if out of range. |
| (elf_object_p): Read extended values for e_shnum and e_shstrndx |
| from the first section header. Allocate space in elf_elfsections |
| for reserved sections and set to NULLs. |
| (elf_write_shdrs_and_ehdr): Set overflow fields in first section |
| header. Skip reserved sections in elf_elfsections. Remove |
| duplicate size calculation. |
| |
| 2001-12-07 Geoffrey Keating <geoffk@redhat.com> |
| Richard Henderson <rth@redhat.com> |
| Corinna Vinschen <vinschen@redhat.com> |
| |
| * Makefile.am: Add support for xstormy16. |
| * archures.c: Add support for xstormy16. |
| * config.bfd: Add support for xstormy16. |
| * configure.in: Add support for xstormy16. |
| * reloc.c: Add support for xstormy16. |
| * targets.c: Add support for xstormy16. |
| * cpu-xstormy16.c: New file. |
| * elf32-xstormy16.c: New file. |
| * Makefile.in: Regenerated. |
| * bfd-in2.h: Regenerated. |
| * configure: Regenerated. |
| * libbfd.h: Regenerated. |
| |
| 2001-12-07 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elf.c (assign_file_positions_for_segments): Combine sentance |
| fragments into a single sentance in order to permit better |
| translation into foreign languages. |
| |
| 2001-12-07 Jim Blandy <jimb@redhat.com> |
| |
| * elf32-s390.c (elf32_s390_grok_prstatus): New function. |
| (elf_backend_grok_prstatus): Define. |
| |
| 2001-12-07 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf32-sparc.c (elf32_sparc_relocate_section): Revert |
| 2001-09-14 change. |
| |
| 2001-12-07 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf.c (_bfd_elf_rela_local_sym): Only call |
| _bfd_merged_section_offset if merge_info is non-NULL. |
| (_bfd_elf_rel_local_sym, _bfd_elf_section_offset): New. |
| * elf-bfd.h (_bfd_elf_rel_local_sym, _bfd_elf_section_offset): New |
| prototypes. |
| * elf32-arm.h (elf32_arm_final_link_relocate): Use |
| _bfd_elf_section_offset. |
| (elf32_arm_relocate_section): Use _bfd_elf_rel_local_sym. |
| * elf32-i386.c (elf_i386_relocate_section): Use |
| _bfd_elf_section_offset and _bfd_elf_rel_local_sym. |
| * elf32-sh.c (sh_elf_relocate_section): Likewise. |
| * elf32-sparc.c (elf32_sparc_relocate_section): Use |
| _bfd_elf_section_offset. |
| * elf32-cris.c (cris_elf_relocate_section): Likewise. |
| * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. |
| * elf32-i370.c (i370_elf_relocate_section): Likewise. |
| * elf32-m68k.c (elf_m68k_relocate_section): Likewise. |
| * elf32-mips.c (mips_elf_create_dynamic_relocation): Likewise. |
| * elf32-ppc.c (ppc_elf_relocate_section): Likewise. |
| * elf32-s390.c (elf_s390_relocate_section): Likewise. |
| * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. |
| * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. |
| * elf64-s390.c (elf_s390_relocate_section): Likewise. |
| * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. |
| * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. |
| * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise. |
| |
| 2001-12-07 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-hppa.c (clobber_millicode_symbols): Don't do anything if |
| already forced local. |
| |
| 2001-12-05 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elf32-arm.h (elf32_arm_merge_private_bfd_data): Combine |
| fragmented sentence parts into a whole sentence to permit |
| better translation into foreign languages. |
| |
| 2001-12-06 Hans-Peter Nilsson <hp@bitrange.com> |
| |
| * configure: Regenerate. |
| * Makefile.in: Regenerate. |
| |
| 2001-12-05 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * Makefile.am: split up BFD_LIBS like statements in BFD32_LIBS and |
| BFD64_LIBS, make the latter depending on the availability of BFD64. |
| Add archive64.c source file. |
| * archive64.c: New file implementing bfd_elf64_archive_slurp_armap |
| and bfd_elf64_archive_write_armap, code from elf64-mips.c |
| * archive.c (bfd_slurp_armap): Add ELF64 archive support. |
| * config.bfd (mips*-*-irix6*): Allow with BFD64 only. |
| (mips64*el-*-linux*): Likewise. |
| (mips*el-*-linux*): Likewise. Reorder entries. |
| * configure.in (bfd_libs): Define in dependency of BFD64 and |
| AC_SUBST it. |
| * elf64-mips.c (mips_elf64_slurp_armap): Remove, use |
| bfd_elf64_archive_slurp_armap instead. |
| (mips_elf64_write_armap): Remove, use bfd_elf64_archive_write_armap |
| instead. |
| |
| 2001-12-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * config.bfd: Remove trailing blanks. |
| * elf32-mips.c (gprel16_with_gp): Remove superfluous casts. |
| |
| 2001-12-04 Alexandre Oliva <aoliva@redhat.com> |
| |
| * elf32-d10v.c (elf_d10v_howto_table): Adjust bit-size of |
| R_D10V_10_PCREL_L, R_D10V_10_PCREL_R, R_D10V_18, |
| R_D10V_18_PCREL. Check 10_PCREL relocations as signed. |
| Disable pointless overflow checking of NONE and 32. |
| |
| 2001-12-04 Alan Modra <amodra@bigpond.net.au> |
| |
| * reloc.c (bfd_install_relocation): Correct reloc address test. |
| (bfd_perform_relocation): Formatting fix. |
| * bfd-in2.h: Regenerate for 2001-12-02 reloc.c change. |
| |
| 2001-12-03 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * configure.in (LINGUAS): Add tr. |
| * configure: Regenerate. |
| * po/tr.po: Import from translation project's web site. |
| |
| 2001-12-03 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-hppa.c (hppa_get_stub_entry): Remove debug message that |
| happens to trigger on undefined symbols. |
| (final_link_relocate): Return bfd_reloc_undefined for undefined |
| stubs. |
| (elf32_hppa_relocate_section): Don't say we can't handle a reloc |
| if we have already warned about an undefined symbol. |
| |
| 2001-12-02 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * elf32-mips.c (NEWABI_P): New define. |
| (USE_REL): Remove, replaced by |
| (elf_backend_may_use_rel_p): New define. |
| (elf_backend_may_use_rela_p): Likewise. |
| (elf_backend_default_use_rela_p): Likewise. |
| (elf_mips_howto_table): Rename to elf_mips_howto_table_rel. |
| Fix some relocation definitions. |
| (elf_mips_howto_table_rela): New RELA relocation definitions for |
| NewABI support. |
| (mips32_64bit_reloc): Use the renamed elf_mips_howto_table_rel. |
| (bfd_elf32_bfd_reloc_type_lookup): Likewise. |
| (mips_rtype_to_howto): Likewise. |
| (_bfd_mips_elf_relocate_section): Likewise. |
| (_bfd_mips_elf_object_p): Typo. |
| (elf_backend_sign_extend_vma): Reordered together with many other |
| defines nearby to resemble the order of declaration in the header |
| file. |
| |
| 2001-12-02 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * coff-mips.c (mips_bfd_reloc_type_lookup): Replace |
| BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16. |
| * pe-mips.c (mips_bfd_reloc_type_lookup): Likewise. |
| * elf32-mips.c (mips_reloc_map): Likewise. Replace |
| BFD_RELOC_MIPS_GPREL32 by BFD_RELOC_GPREL32. |
| * elf64-mips.c (mips_reloc_map): Likewise. |
| * reloc.c (BFD_RELOC_MIPS_GPREL): Remove. |
| (BFD_RELOC_MIPS_GPREL32): Remove. |
| |
| 2001-11-30 H.J. Lu <hjl@gnu.org> |
| |
| * elflink.h (elf_add_default_symbol): New. |
| (elf_link_add_object_symbols): Call elf_add_default_symbol () |
| to create an indirect symbol from the default for the symbol |
| with the default version if needed. |
| |
| 2001-11-29 "Peter.Schauer" <Peter.Schauer@regent.e-technik.tu-muenchen.de> |
| |
| * elf.c (elfcore_grok_prstatus): Do not overwite the core signal |
| if it has already been set by another thread. |
| |
| 2001-11-28 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf64-alpha.c (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Defined. |
| (elf64_alpha_relocate_section): Translate local_got_entries |
| for STT_SECTION symbol to SHF_MERGE section the first time |
| we see it. |
| * elfxx-ia64.c (struct elfNN_ia64_local_hash_entry): Add |
| sec_merge_done. |
| (get_local_sym_hash): New, extracted from get_dyn_sym_info. |
| (get_dyn_sym_info): Use it. |
| (elfNN_ia64_relocate_section): Translate local dyn entries |
| for STT_SECTION symbol to SHF_MERGE section the first time |
| we see it. |
| |
| 2001-11-27 H.J. Lu <hjl@gnu.org> |
| |
| * elflink.h (elf_bfd_discard_info): Skip if the input bfd isn't |
| ELF. |
| |
| 2001-11-26 Jeffrey A Law (law@cygnus.com) |
| |
| * stabs.c (_bfd_discard_section_stabs): Use PARAMS in function |
| prototypes. |
| |
| 2001-11-24 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-hppa.c (elf32_hppa_size_stubs): Decrease default stub |
| group sizes to accommodate c++. |
| |
| 2001-11-23 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf32-sparc.c (elf32_sparc_relocate_section): Don't clear |
| relocations in non-alloced sections against global symbols |
| defined in shared library being built. |
| * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. |
| |
| 2001-11-23 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf.c (_bfd_elf_rela_local_sym): New. |
| * elflink.h (elf_link_input_bfd): Don't consider empty |
| merged sections as removed in relocation tests. |
| * elf-bfd.h (_bfd_elf_rela_local_sym): Add prototype. |
| * elf32-i386.c (elf_i386_relocate_section): Handle relocs |
| against STT_SECTION symbol of SHF_MERGE section. |
| * elf32-arm.h (elf32_arm_relocate_section): Likewise. |
| * elf32-avr.c (elf32_avr_relocate_section): Call |
| _bfd_elf_rela_local_sym. |
| * elf32-cris.c (cris_elf_relocate_section): Likewise. |
| * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. |
| * elf32-fr30.c (fr30_final_link_relocate): Likewise. |
| * elf32-h8300.c (elf32_h8_relocate_section): Likewise. |
| * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. |
| * elf32-i370.c (i370_elf_relocate_section): Likewise. |
| * elf32-i860.c (elf32_i860_relocate_section): Likewise. |
| * elf32-m32r.c (m32r_elf_relocate_section): Likewise. |
| * elf32-m68k.c (elf_m68k_relocate_section): Likewise. |
| * elf32-mcore.c (mcore_elf_relocate_section): Likewise. |
| * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise. |
| * elf32-ppc.c (ppc_elf_relocate_section): Likewise. |
| * elf32-s390.c (elf_s390_relocate_section): Likewise. |
| * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. |
| * elf32-v850.c (v850_elf_relocate_section): Likewise. |
| * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. |
| * elf64-mmix.c (mmix_elf_relocate_section): Likewise. |
| * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. |
| * elf64-s390.c (elf_s390_relocate_section): Likewise. |
| * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. |
| * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. |
| * elf-hppa.h (elf_hppa_relocate_section): Likewise. |
| * elf-m10200.c (mn10200_elf_relocate_section): Likewise. |
| * elf-m10300.c (mn10300_elf_relocate_section): Likewise. |
| * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. |
| * elf32-sh.c (sh_elf_relocate_section): Likewise for |
| !partial_inplace relocs. Handle relocs against STT_SECTION |
| symbol of SHF_MERGE for partial_inplace relocs. |
| |
| 2001-11-21 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * po/Make-in (distclean): Move SRC-POTFILES.in and |
| BLD-POTFILES.in to maintainer-clean target. |
| |
| 2001-11-21 Alan Modra <amodra@bigpond.net.au> |
| |
| * elfxx-ia64.c (elfNN_ia64_relocate_section): Test r_symndx rather |
| than sym_sec->output_section to detect relocs against discarded |
| sections. |
| |
| 2001-11-19 H.J. Lu <hjl@gnu.org> |
| |
| * elflink.h (elf_link_input_bfd): Assert r_symndx != 0 when |
| discarding relocations. |
| |
| 2001-11-19 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * section.c (bfd_is_const_section): New macro. Return true if the |
| given seciton is one of the special, constant, sections. |
| * bfd-in2.h: Regenerate. |
| * coffgen.c (coff_count_linenumbers): Use bfd_is_const_section. |
| (coff_write_native_symbol): Use bfd_is_const_section. |
| |
| 2001-11-19 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-hppa.c (clobber_millicode_symbols): Dec dynstr refcount. |
| |
| * elf32-hppa.c (elf32_hppa_size_stubs): Don't consider undefined |
| millicode syms as candidates for import stubs. |
| |
| * elf32-hppa.c (PLABEL_PLT_ENTRY_SIZE): Delete. |
| (allocate_PIC_calls): Rename to allocate_plt_static. |
| (allocate_dynrelocs): Move most of code handling .plt entries to.. |
| (allocate_plt_static): ..here. Don't drop plabel entries. |
| |
| 2001-11-19 Hans-Peter Nilsson <hp@bitrange.com> |
| |
| * mmo.c: Adjust documentation tags to use texinfo 4 features. |
| |
| 2001-11-16 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * section.c (bfd_is_const_section): New macro. Return true if the |
| section pointer refers to one of the special, constant sections. |
| * bfd-in2.h: Regenerate. |
| |
| * coffgen.c (coff_count_linenumbers): Only update the line number |
| count in non-special sections. |
| (coff_write_native_symbol): Only update the line number file |
| position in non-special sections. |
| |
| 2001-11-15 Daniel Jacobowitz <drow@mvista.com> |
| |
| * elflink.h (elf_reloc_symbol_deleted_p): Catch all relocs against |
| local syms from discarded sections. Update comment. |
| |
| 2001-11-15 Alan Modra <amodra@bigpond.net.au> |
| |
| * po/SRC-POTFILES.in: Regenerate. |
| |
| * elflink.h (elf_link_input_bfd): Complain about all relocs |
| against local syms from discarded sections. K&R fixes. |
| (elf_reloc_symbol_deleted_p): Don't try to swap in external syms. |
| K&R fixes. |
| |
| 2001-11-15 Alexandre Oliva <aoliva@redhat.com> |
| |
| * elf64-sparc.c (sparc64_elf_relocate_section): Disregard |
| overflows in the .stab section. |
| |
| 2001-11-14 Daniel Jacobowitz <drow@mvista.com> |
| |
| * bfd-in.h (bfd_elf32_discard_info): Add prototype. |
| (bfd_elf64_discard_info): Likewise. |
| * bfd-in2.h: Regenerate. |
| * elf-bfd.h (struct elf_reloc_cookie): New. |
| (struct elf_backend_data): Add elf_backend_discard_info, |
| elf_backend_ignore_discarded_relocs, and elf_backend_write_section. |
| (_bfd_elf32_reloc_symbol_deleted_p): Add prototype. |
| (_bfd_elf64_reloc_symbol_deleted_p): Likewise. |
| * elf32-mips.c (_bfd_elf32_mips_discard_info): New. |
| (_bfd_elf32_mips_ignore_discarded_relocs): New. |
| (_bfd_elf32_mips_write_section): New. |
| (elf_backend_discard_info): Define. |
| (elf_backend_ignore_discarded_relocs): Define. |
| (elf_backend_write_section): Define. |
| * elfcode.h (elf_bfd_discard_info): Define. |
| (elf_reloc_symbol_deleted_p): Define. |
| * elflink.h (elf_link_input_bfd): Check |
| elf_section_ignore_discarded_relocs. Call |
| bed->elf_backend_write_section if available. |
| (elf_reloc_symbol_deleted_p): New. |
| (elf_bfd_discard_info): New. |
| (elf_section_ignore_discarded_relocs): New. |
| * elfxx-target.h (elf_backend_discard_info): Define. |
| (elf_backend_ignore_discarded_relocs): Define. |
| (elf_backend_write_section): Define. |
| (elfNN_bed): Add elf_backend_discard_info, |
| elf_backend_ignore_discarded_relocs, and |
| elf_backend_write_section. |
| * libbfd-in.h (_bfd_discard_section_stabs): Add prototype. |
| * libbfd.h: Regenerate. |
| * stabs.c (_bfd_discard_section_stabs): New. |
| |
| 2001-11-14 Martin Schwidefsky <schwidefsky@de.ibm.com> |
| |
| * elf32-s390.c (elf_s390_relocate_section): Use the "unresolved_reloc" |
| scheme to get rid of an ugly complicated test. |
| * elf64-s390.c (elf_s390_relocate_section): Likewise. |
| |
| 2001-11-14 Andreas Jaeger <aj@suse.de> |
| |
| * cpu-i386.c (bfd_x86_64_arch_intel_syntax,bfd_x86_64_arch): Use |
| x86-64 for display. |
| |
| 2001-11-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * dwarf2.c (struct line_head) [total_length]: Change type to |
| bfd_vma. |
| (struct dwarf2_debug): Add dwarf_str_buffer and dwarf_str_size. |
| (struct comp_unit): Add stash and offset_size. |
| (read_8_bytes): Return bfd_vma. |
| (read_indirect_string): New. |
| (read_attribute): Handle DW_FORM_strp. |
| (decode_line_info): Support 64-bit DWARF format. |
| (_bfd_dwarf2_find_nearest_line): Likewise. |
| (parse_comp_unit): Set offset_size and stash. |
| |
| 2001-11-13 Keith Walker <keith.walker@arm.com> |
| |
| * dwarf2.c (read_attribute_value): New function to handle |
| DW_FORM_indirect. |
| (read_attribute): Use it. |
| |
| 2001-11-13 Geoffrey Keating <geoffk@redhat.com> |
| |
| * dwarf2.c (decode_line_info): Properly deal with unknown standard |
| opcodes. |
| |
| 2001-11-13 John Marshall <jmarshall@acm.org> |
| Alan Modra <amodra@bigpond.net.au> |
| |
| * section.c (bfd_make_section_anyway): Don't increment section_id |
| and the BFD's section_count if adding the section failed. |
| * vms.c (vms_new_section_hook): Adjust for bfd_make_section_anyway |
| change. |
| |
| 2001-11-12 Orjan Friberg <orjanf@axis.com> |
| |
| * elf32-cris.c (cris_elf_grok_prstatus): Adjust values to match new |
| core dump format. |
| |
| 2001-11-11 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Call |
| _bfd_elf_strtab_size instead of _bfd_stringtab_size. |
| |
| * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Change |
| dynstr type to `struct elf_strtab_hash *'. |
| |
| 2001-11-11 Hans-Peter Nilsson <hp@bitrange.com> |
| |
| * elf-strtab.c (_bfd_elf_strtab_finalize): Make first variable i |
| size_t. Rename second i to j. |
| |
| 2001-11-10 Jeffrey A Law (law@cygnus.com) |
| |
| * binary.c: Include safe-ctype.h after bfd.h and sysdep.h. |
| |
| 2001-11-10 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-arm.h (elf32_arm_final_link_relocate): Don't copy STN_UNDEF |
| relocs into shared libs. |
| * elf32-cris.c (cris_elf_relocate_section): Likewise. |
| * elf32-i370.c (i370_elf_relocate_section): Likewise. |
| * elf32-m68k.c (elf_m68k_relocate_section): Likewise. |
| * elf32-mips.c (mips_elf_calculate_relocation): Likewise. |
| * elf32-ppc.c (ppc_elf_relocate_section): Likewise. |
| * elf32-sh.c (sh_elf_relocate_section): Likewise. |
| * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. |
| * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. |
| * elf64-s390.c (elf_s390_relocate_section): Likewise. |
| * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. |
| * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. |
| * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. |
| |
| * elf.c (bfd_section_from_r_symndx): New function. |
| * elf-bfd.h (LOCAL_SYM_CACHE_SIZE): Define. |
| (struct sym_sec_cache): New. |
| (bfd_section_from_r_symndx): Declare. |
| (struct bfd_elf_section_data): Change local_dynrel type to PTR. |
| * elflink.h (elf_link_input_bfd): Don't test for removed linkonce |
| relocs when relocatable. Don't zero entire reloc, just zero the |
| addend and sym. |
| * elf32-hppa.c (struct elf32_hppa_link_hash_table): Add sym_sec. |
| (elf32_hppa_link_hash_table_create): Init it. |
| (elf32_hppa_check_relocs): Track dynamic relocs needed for local |
| syms on a per-section basis as we do for globals. |
| (elf32_hppa_gc_sweep_hook): Update for local_dynrel change. |
| (allocate_dynrelocs): Warning fix. |
| (elf32_hppa_size_dynamic_sections): Don't allocate relocs when |
| section has been discarded. |
| (elf32_hppa_relocate_section): Don't copy STN_UNDEF relocs |
| into shared libs. |
| * elf32-i386.c (struct elf_i386_link_hash_table): Add sym_sec. |
| (elf_i386_link_hash_table_create): Init it. |
| (elf_i386_check_relocs): Track dynamic relocs needed for local |
| syms on a per-section basis as we do for globals. |
| (elf_i386_gc_sweep_hook): Update for local_dynrel change. |
| Remove dead code. |
| (allocate_dynrelocs): Warning fix. |
| (elf_i386_size_dynamic_sections): Don't allocate relocs when |
| section has been discarded. |
| (elf_i386_relocate_section): Don't copy STN_UNDEF relocs |
| into shared libs. |
| * elf32-s390.c (struct elf_s390_link_hash_table): Add sym_sec. |
| (elf_s390_link_hash_table_create): Init it. |
| (elf_s390_check_relocs): Track dynamic relocs needed for local |
| syms on a per-section basis as we do for globals. |
| (elf_s390_gc_sweep_hook): Update for local_dynrel change. |
| Remove dead code. |
| (allocate_dynrelocs): Warning fix. |
| (elf_s390_size_dynamic_sections): Don't allocate relocs when |
| section has been discarded. |
| (elf_s390_relocate_section): Don't copy STN_UNDEF relocs |
| into shared libs. |
| * elf64-ppc.c (struct ppc_link_hash_table): Add sym_sec. |
| (ppc64_link_hash_table_create): Init it. |
| (ppc64_elf_check_relocs): Track dynamic relocs needed for local |
| syms on a per-section basis as we do for globals. |
| (ppc64_elf_gc_sweep_hook): Update for local_dynrel change. |
| (allocate_dynrelocs): Call the correct record_dynamic_dymbol |
| function. Warning fix. |
| (ppc64_elf_size_dynamic_sections): Don't allocate relocs when |
| section has been discarded. |
| (ppc64_elf_relocate_section): Don't copy STN_UNDEF relocs |
| into shared libs. |
| * elf64-s390.c (struct elf_s390_link_hash_table): Add sym_sec. |
| (elf_s390_link_hash_table_create): Init it. |
| (elf_s390_check_relocs): Track dynamic relocs needed for local |
| syms on a per-section basis as we do for globals. |
| (elf_s390_gc_sweep_hook): Update for local_dynrel change. |
| Remove dead code. |
| (allocate_dynrelocs): Warning fix. |
| (elf_s390_size_dynamic_sections): Don't allocate relocs when |
| section has been discarded. |
| (elf_s390_relocate_section): Don't copy STN_UNDEF relocs |
| into shared libs. |
| |
| 2001-11-08 Martin Schwidefsky <schwidefsky@de.ibm.com> |
| |
| * elf32-s390: Major rework that introduces all recent changes to |
| the s390 backends. Get a closer match to elf32-i386. |
| (elf_s390_relocate_section): Make use of dynamic section short-cuts. |
| Localise vars, and delay setting. Better error reporting, replace |
| BFD_ASSERT with abort. Check ELF_LINK_HASH_DEF_DYNAMIC to see if a |
| symbol is not defined in the regular object file and tread the weak |
| definition as the normal one. Don't discard relocs for undefweak or |
| undefined symbols and check !DEF_REGULAR as well as DEF_DYNAMIC in |
| test for avoided copy relocs. Reinstate fudge for unresolved relocs |
| in debugging sections. |
| (elf32_s390_adjust_dynamic_symbol): Handle nocopyreloc. Don't do copy |
| reloc processing for weakdefs. Remove redundant casts and aborts. |
| Delay setting of vars until needed. Move creation of dynamic symbols |
| and allocation of .plt and .rela.plt to allocate_dynrelocs. Replace |
| BFD_ASSERT with abort. Discard .plt entries for everything with |
| plt.refcount <= 0. |
| (elf_s390_check_relocs): Don't allocate space for dynamic relocs, |
| .got or .relgot here but do it in allocate_dynrelocs. Reference count |
| possible .plt and .got entries. Don't test input section SEC_READONLY |
| here to try to avoid copy relocs, and keep dyn_relocs regardless of |
| ELF_LINK_NON_GOT_REF. Don't set DF_TEXTREL here. Delay setting of |
| variables until needed. Remove separate switch stmt for creating .got |
| section. Initialise local_got_refcounts to 0. Cache pointer to |
| "sreloc" section in elf_section_data. Tweak condition under which .got |
| created. Report files with bad relocation section names. |
| (elf_s390_finish_dynamic_symbol): Don't copy relocs for symbols that |
| have been forced local. Use same test to decide if we can use a |
| relative reloc for got as elf_s390_relocate_section. Expand SHN_UNDEF |
| comment. Move expressions out of function calls. Replace BFD_ASSERT |
| with abort. |
| (elf_s390_finish_dynamic_sections): Migrate common code out of switch |
| statement. Replace BFD_ASSERT with abort. |
| (elf_s390_size_dynamic_sections): Call readonly_dynrelocs. Rename "i" |
| to "ibfd". Allocate space for local dyn relocs. Use DF_TEXTREL flag |
| instead of looking up section names for DT_TEXTREL. Replace |
| BFD_ASSERT with abort. Zero out the dynamic allocated content space. |
| Add a comment to remind us that one day this ought to be fixed. |
| (struct elf_s390_link_hash_entry): Rename "root" to "elf". |
| (struct elf_s390_link_hash_table): Likewise. |
| (elf_s390_link_hash_newfunc): Rename to link_hash_newfunc and get |
| rid of unnecessary casts. |
| (struct elf_s390_dyn_relocs): Add "sec", and "pc_count" fields. |
| Remove "section" field. |
| (elf_s390_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. |
| Reference count possible .plt entries. Don't deallocate .got and |
| .relgot space here. |
| (struct elf_s390_pcrel_relocs_copied): Rename to elf_s390_dyn_relocs. |
| Update comment. |
| (struct elf_s390_link_hash_entry): Rename pcrel_relocs_copied to |
| dyn_relocs. |
| (elf_s390_discard_copies): Delete. |
| (elf_s390_link_hash_traverse): Delete. |
| (bfd_elf32_bfd_final_link): Delete. (ie. use regular final link |
| rather than gc variety). |
| (struct elf_s390_link_hash_table): Add sgot, sgotplt, srelgot, splt, |
| srelplt, sdynbss, srelbss fields. |
| (elf_s390_link_hash_table_create): Init them. |
| (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. |
| (allocate_dynrelocs): New function. |
| (create_got_section): New function. |
| (elf_backend_can_refcount): Define. |
| (elf_backend_copy_indirect_symbol): Define. |
| (elf_s390_copy_indirect_symbol): New function. |
| (elf_s390_create_dynamic_sections): New function. |
| (readonly_dynrelocs): New function. |
| * elf64-s390.c: Likewise. |
| |
| 2001-11-07 Jakub Jelinek <jakub@redhat.com> |
| |
| * Makefile.am (BFD32_BACKENDS): Add elf-strtab.lo. |
| (BFD32_BACKENDS_CFILES): Add elf-strtab.c. |
| (elf-strtab.lo): Add rule. |
| * Makefile.in: Rebuilt. |
| * configure.in (elf): Add elf-strtab.lo. |
| * configure: Rebuilt. |
| * elf-bfd.h (elf_strtab_hash): Forward declare. |
| (struct elf_link_hash_table): Change dynstr type to |
| struct elf_strtab_hash *. |
| (struct elf_obj_tdata): Change strtab_ptr type to |
| struct elf_strtab_hash *. |
| (_bfd_elf_strtab_init, _bfd_elf_strtab_free, _bfd_elf_strtab_add, |
| _bfd_elf_strtab_addref, _bfd_elf_strtab_delref, |
| _bfd_elf_strtab_clear_all_refs, _bfd_elf_strtab_size, |
| _bfd_elf_strtab_offset, _bfd_elf_strtab_emit, |
| _bfd_elf_strtab_finalize): New prototypes. |
| * elf-strtab.c: New file. |
| * elflink.h (elf_link_add_object_symbols): Use _bfd_elf_strtab_add |
| and _bfd_elf_strtab_size instead of _bfd_stringtab calls. |
| Call _bfd_elf_strtab_delref if DT_NEEDED entry is not needed or |
| when forcing dynamic symbol to local. |
| (elf_link_create_dynamic_sections): Call |
| _bfd_elf_strtab_init instead of elf_stringtab_init. |
| (elf_link_record_local_dynamic_symbol): Likewise, change |
| dynstr type. Use _bfd_elf_strtab functions instead of |
| _bfd_stringtab calls. |
| (size_dynamic_sections): Use _bfd_elf_strtab functions instead of |
| _bfd_stringtab calls. For DT_RUNPATH and Verdaux vda_name fields, |
| call _bfd_elf_strtab_addref. Call elf_finalize_dynstr. |
| (elf_adjust_dynstr_offsets, elf_finalize_dynstr): New functions. |
| (elf_fix_symbol_flags): Call _bfd_elf_strtab_delref when forcing |
| dynamic symbol to local. |
| (elf_link_assign_sym_version): Likewise. |
| (elf_bfd_final_link): Call _bfd_elf_strtab_emit instead of |
| _bfd_stringtab_emit. |
| * elflink.c (_bfd_elf_link_record_dynamic_symbol): Change dynstr |
| type. Call _bfd_elf_strtab functions instead of |
| _bfd_stringtab functions. |
| * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. |
| * elf.c (_bfd_elf_init_reloc_shdr): Likewise. |
| (elf_fake_sections): Likewise. |
| (assign_section_numbers): Call _bfd_elf_strtab_clear_all_refs |
| on shstrtab hash table, call _bfd_elf_strtab_addref on each section |
| name in the output. Call _bfd_elf_strtab_finalize and |
| use _bfd_elf_strtab_offset to finalize sh_name section header fields. |
| (_bfd_elf_compute_section_file_positions): Use _bfd_elf_strtab_size |
| instead of _bfd_stringtab_size. |
| (prep_headers): Change shstrtab type. |
| Use _bfd_elf_strtab calls instead of _bfd_stringtab calls. |
| |
| 2001-11-07 Alan Modra <amodra@bigpond.net.au> |
| |
| * elflink.h (elf_link_input_bfd <removed linkonce relocs>): Fix |
| bad symtab segfault. Formatting and warning fixes. Improve |
| error message for internationalisation. |
| |
| 2001-11-06 H.J. Lu (hjl@gnu.org) |
| |
| * elflink.h (elf_link_input_bfd): Complain about relocs against |
| discarded sections. |
| |
| 2001-11-03 Alan Modra <amodra@bigpond.net.au> |
| |
| * elfxx-target.h (elfNN_bed): Correct want_got_sym, want_dynbss order. |
| |
| 2001-11-02 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (mips_elf_calculate_relocation): Don't create |
| dynamic relocation for symbols defined in regular objects when |
| creating executables. |
| |
| 2001-11-02 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * configure.in (ALL_LINGUAS): Add "fr". |
| * configure: Regenerate. |
| * po/fr.po: New file. |
| |
| * coffgen.c (coff_object_p): Add comment to H.J.'s recent patch. |
| |
| 2001-11-02 John David Anglin <dave@hiauly1.hia.nrc.ca> |
| |
| * som.c (setup_sections): Initialize subspace_sections. |
| |
| 2001-11-02 H.J. Lu (hjl@gnu.org) |
| |
| * coffgen.c (coff_object_p): Return 0 if the header is too big. |
| |
| 2001-11-02 Hans-Peter Nilsson <hp@axis.com> |
| |
| * elfcore.h (elf_core_file_p): Preserve and clear abfd section |
| information. Save bfd arch and mach values. Restore on error. |
| |
| 2001-11-02 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-hppa.c (hppa_handle_PIC_calls): Rename to mark_PIC_calls. |
| (allocate_PIC_calls): New function. |
| (allocate_dynrelocs): Don't allocate pic_call plt entries here. |
| (elf32_hppa_size_dynamic_sections): Call allocate_PIC_calls. |
| (elf32_hppa_finish_dynamic_symbol): Remove dead code. |
| |
| 2001-11-02 Hans-Peter Nilsson <hp@axis.com> |
| |
| * elf32-cris.c (cris_elf_grok_prstatus): New function. |
| (cris_elf_grok_psinfo): New function. |
| (elf_backend_grok_prstatus): Define. |
| (elf_backend_grok_psinfo): Define. |
| |
| 2001-11-01 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf64-ppc.c (ppc64_elf_relocate_section): Correct branch |
| prediction bits. |
| |
| 2001-10-31 Chris Demetriou <cgd@demetriou.com> |
| |
| * elf32-mips.c (_bfd_mips_elf_hi16_reloc): Handle PC-relative |
| relocations properly. |
| |
| 2001-10-31 H.J. Lu <hjl@gnu.org> |
| |
| * elflink.h (elf_link_output_extsym): Don't clear the visibility |
| field for relocateable. |
| |
| 2001-11-01 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Don't count |
| .plt relocs in DT_RELASZ. |
| |
| 2001-10-29 NIIBE Yutaka <gniibe@m17n.org> |
| |
| * config.bfd: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu |
| targets. |
| |
| 2001-10-31 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * targets.c: Fix typo: bfd_mmo_mmix_vec => bfd_mmo_vec. |
| |
| 2001-10-30 Hans-Peter Nilsson <hp@bitrange.com> |
| |
| * Makefile.am (ALL_MACHINES): Add cpu-mmix.lo. |
| (BFD64_BACKENDS): Add elf64-mmix.lo and mmo.lo. |
| (BFD64_BACKENDS_CFILES): Add elf64-mmix.c and mmo.c. |
| Regenerate dependencies. |
| * configure.in (bfd_elf64_mmix_vec, bfd_mmo_vec): New vectors. |
| * config.bfd: [BFD64] (mmix-*-*): New case. |
| * cpu-mmix.c, mmo.c, elf64-mmix.c: New files. |
| * archures.c (enum bfd_architecture): Add bfd_arch_mmix. |
| (bfd_mmix_arch): Declare. |
| (bfd_archures_list): Add bfd_mmix_arch. |
| * targets.c (enum bfd_flavour): Add bfd_target_mmo_flavour. |
| (bfd_elf64_mmix_vec, bfd_mmo_vec): Declare. |
| (bfd_target_vect) [BFD64]: Add bfd_elf64_mmix_vec and |
| bfd_mmo_mmix_vec. |
| * reloc.c: Add MMIX relocations. |
| * bfd.c (struct _bfd, tdata): Add mmo_data. |
| * Makefile.in: Regenerate. |
| * configure: Regenerate. |
| * libbfd.h: Regenerate. |
| * bfd-in2.h: Regenerate. |
| * configure: Rebuild. |
| |
| 2001-10-30 Richard Earnshaw (rearnsha@arm.com) |
| |
| * elf.c (_bfd_elf_make_section_from_shdr): Set the LMA based on the |
| p_paddr of the segment that contains it. |
| (copy_private_bfd_data): If the LMA for a segment is known, use it |
| for matching sections to segments. |
| (assign_file_positions_for_segments): Use the LMA when adjusting |
| for inter-section alignment padding. |
| |
| 2001-10-29 Kazu Hirata <kazu@hxi.com> |
| |
| * README: Fix a typo. |
| |
| 2001-10-24 Richard Henderson <rth@redhat.com> |
| |
| * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Copy |
| timestamp to time_t for ctime. |
| |
| 2001-10-24 Hans-Peter Nilsson <hp@axis.com> |
| |
| * elf32-cris.c (cris_reloc_type_lookup): Change loop to use |
| unsigned, increasing index. |
| |
| 2001-10-23 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Check |
| m != NULL before accessing it. |
| |
| 2001-10-23 Alan Modra <amodra@bigpond.net.au> |
| |
| * elflink.h (elf_link_input_bfd): Zero the reloc instead of doing |
| bfd_reloc_type_lookup (bfd, BFD_RELOC_NONE) as bfd_reloc_type_lookup |
| doesn't accept BFD_RELOC_* on some targets, eg. hppa. |
| |
| * elf32-hppa.c (elf32_hppa_link_hash_entry): Remove plt_abs. |
| (hppa_link_hash_newfunc): Likewise. |
| (elf32_hppa_finish_dynamic_symbol): Likewise. |
| (allocate_dynrelocs): Always allocate .got relocs if shared. |
| (elf32_hppa_relocate_section): Output them too. Similarly |
| consolidate .plt reloc code, and no longer initialise .plt |
| when a reloc is output. |
| (elf32_hppa_finish_dynamic_symbol): Only initialise .plt entries |
| when no reloc is output. |
| |
| From Herbert Xu <herbert@gondor.apana.org.au> |
| * elf32-hppa.c (final_link_relocate): Call bfd_set_error for |
| unreachable branches. |
| |
| 2001-10-22 H.J. Lu <hjl@gnu.org> |
| |
| * configure.in (WIN32LIBADD): Use -L../libiberty for |
| mips*-*-linux*. |
| * configure: Rebuild. |
| |
| 2001-10-21 H.J. Lu <hjl@gnu.org> |
| |
| * configure.in (WIN32LIBADD): Include -L../libiberty/pic -liberty |
| if shared library is enabled only for Linux hosts. |
| * configure: Rebuild. |
| |
| 2001-10-21 H.J. Lu <hjl@gnu.org> |
| |
| * configure.in (WIN32LIBADD): Check if PICFLAG is defined in |
| ../libiberty/Makefile instead of $enable_shared. |
| * configure: Rebuild. |
| |
| 2001-10-21 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-cris.c (cris_reloc_type_lookup): Use int for index. Cover |
| index 0. |
| |
| 2001-10-20 H.J. Lu <hjl@gnu.org> |
| |
| * configure.in (WIN32LIBADD): Include -L../libiberty/pic -liberty |
| if shared library is enabled. |
| * configure: Rebuild. |
| |
| 2001-10-20 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-cris.c (cris_reloc_type_lookup): Allow index 0. |
| |
| 2001-10-19 H.J. Lu <hjl@gnu.org> |
| |
| * elfcode.h (elf_object_p): Don't clear D_PAGED if the section |
| size is empty. |
| |
| 2001-10-18 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-i370.c (i370_elf_relocate_section): Ignore R_XXX_NONE. |
| * elf32-ppc.c (ppc_elf_relocate_section): Likewise. |
| |
| 2001-10-18 Jakub Jelinek <jakub@redhat.com> |
| |
| * section.c (_bfd_strip_section_from_output): Don't count |
| SEC_EXCLUDE sections as references. Set SEC_EXCLUDE. |
| |
| 2001-10-17 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf-m10200.c (mn10200_elf_relax_section): Cast assignment to |
| Elf_Internal_Shdr.contents now that it's no longer a PTR. |
| * elf-m10300.c (mn10300_elf_relax_section): Likewise. |
| * elf32-h8300.c (elf32_h8_relax_section): Likewise. |
| * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise. |
| * elf32-sh.c (sh_elf_relax_section): Likewise. |
| * elf64-alpha.c (elf64_alpha_relax_section): Likewise. |
| * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise. |
| * elf.c (setup_group): Warning fixes. |
| * elflink.h (elf_link_sort_relocs): Likewise. |
| * pdp11.c (slurp_reloc_table): Likewise. |
| |
| 2001-10-16 Jeff Holcomb <jeffh@redhat.com> |
| |
| * elflink.h (elf_link_sort_relocs): Remove unnecessary pointer |
| casts. |
| |
| 2001-10-15 H.J. Lu <hjl@gnu.org> |
| |
| * elflink.h (elf_link_input_bfd): Set type to BFD_RELOC_NONE |
| for relocations against discarded link-once section. |
| |
| 2001-10-15 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-i386.c (elf_i386_relocate_section): Report some detail on |
| bfd_reloc_outofrange and similar errors. |
| |
| * elf.c (_bfd_elf_link_hash_copy_indirect): Test ind->root.type |
| rather than ind->weakdef. |
| * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise. |
| * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise. |
| * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise. |
| * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. |
| * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise. |
| |
| 2001-10-15 Alan Modra <amodra@bigpond.net.au> |
| H.J. Lu <hjl@gnu.org> |
| |
| * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Merge dyn_reloc |
| counts for aliases instead of aborting. |
| * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise. |
| * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. |
| |
| * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Set plt.offset |
| to -1 for non-function symbols. |
| * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. |
| * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. |
| * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. |
| * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. |
| * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise. |
| * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Refer to |
| plt.offset instead of plt.refcount when setting to -1. |
| |
| 2001-10-12 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elf32-arm.h (elf32_arm_relocate_section): Treat R_ARM_THM_PC22 |
| like R_ARM_PC24. Include reloc number in error message about |
| unresolvable relocs. |
| |
| 2001-10-10 Jakub Jelinek <jakub@redhat.com> |
| |
| * elflink.h (elf_link_sort_cmp2): Don't mix PLT and non-PLT |
| relocations against the same symbol in .rel{,a}.dyn section. |
| |
| 2001-10-10 Kazu Hirata <kazu@hxi.com> |
| |
| * aout-encap.c: Fix comment typos. |
| * aoutx.h: Likewise. |
| * archive.c: Likewise. |
| * bout.c: Likewise. |
| * coff64-rs6000.c: Likewise. |
| * coffcode.h: Likewise. |
| * coffgen.c: Likewise. |
| * cofflink.c: Likewise. |
| * coff-mips.c: Likewise. |
| * ecoff.c: Likewise. |
| * elf32-m32r.c: Likewise. |
| * libcoff-in.h: Likewise. |
| * libecoff.h: Likewise. |
| * libxcoff.h: Likewise. |
| * nlm32-i386.c: Likewise. |
| * pdp11.c: Likewise. |
| * section.c: Likewise. |
| * som.c: Likewise. |
| * som.h: Likewise. |
| * bfd-in2.h: Regenerate. |
| * libcoff.h: Likewise. |
| |
| 2001-10-10 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf.c (elf_map_symbols): Don't create new section symbols; Use |
| existing section syms. Update comments. |
| (copy_private_bfd_data): Formatting fixes. |
| (elfcore_grok_win32pstatus): Likewise. |
| (swap_out_syms): Likewise. Remove unnecessary level of braces. |
| |
| 2001-10-09 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf-bfd.h (struct bfd_elf_section_data): Rename "group" to |
| "group_name". |
| (elf_group_name): Define. |
| (elf_next_in_group): Define. |
| * elf.c: Make use of elf_group_name and elf_next_in_group throughout. |
| (setup_group): Don't use sec->lineno for SHT_GROUP section to store |
| first member section; Instead use elf_next_in_group. |
| (bfd_section_from_shdr): Likewise. |
| (set_group_contents): Likewise. Use elf_section_syms, not sec->symbol. |
| |
| 2001-10-09 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf-bfd.h (struct bfd_elf_section_data): Add "group" and |
| "next_in_group". Fix gp and gp_size comments. |
| * elf.c (union elf_internal_group): New. |
| (setup_group): New function. |
| (_bfd_elf_make_section_from_shdr): Set BFD flags for SHT_GROUP. |
| Call setup_group for SHF_GROUP sections. |
| (bfd_section_from_shdr): Build a BFD section for SHT_GROUP. |
| (elf_fake_sections): Set header type for SEC_GROUP, and header |
| flags for sections in a group. |
| (set_group_contents): New function. |
| (_bfd_elf_compute_section_file_positions): Call it. |
| (assign_section_numbers): Set sh_link for SHT_GROUP. |
| |
| * elflink.h (gc_mark_hook): Handle section groups. |
| * elfxx-target.h: Add SEC_GROUP to applicable_flags. |
| * section.c (SEC_GROUP): Define. |
| (struct sec): Comment fixes. |
| * bfd-in2.h: Regenerate. |
| |
| * elf.c (bfd_elf_print_symbol): Formatting fix; migrate expression |
| out of function args. |
| (_bfd_elf_canonicalize_reloc): Similarly. |
| (_bfd_elf_get_symtab): Here too. |
| (_bfd_elf_canonicalize_dynamic_symtab): And here. |
| * elfcode.h (elf_slurp_symbol_table): Don't recalculate size for |
| bfd_bread, and remove unnecessary cast. |
| |
| 2001-10-08 Aldy Hernandez <aldyh@redhat.com> |
| |
| * config.bfd (targ_cpu): Add arm9e-*-elf. |
| |
| 2001-10-06 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
| |
| * dwarf2.c (comp_unit_find_nearest_line): Check for end of |
| compilation unit. |
| |
| 2001-10-06 Alan Modra <amodra@bigpond.net.au> |
| |
| * bfd.c (bfd_assert): Report bfd version. |
| (_bfd_abort): Likewise. |
| |
| * elflink.h (elf_link_input_bfd): Don't zero discarded link-once |
| section sym values. Instead replace any relocs against them with |
| relocs against STN_UNDEF, which has a zero value. |
| |
| * elf32-arc.c (elf_arc_howto_table): Set partial_inplace for all |
| relocs. |
| |
| 2001-10-05 Jeff Law <law@redhat.com> |
| |
| * som.h (som_exec_data): New field "version_id". |
| * som.c (som_object_setup): Record the version_id if it |
| exists. |
| (som_prep_headers): Do not initialize version_id here. |
| (som_finish_writing): Initialize version_id here. |
| |
| 2000-10-05 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * elf32-mips.c (elf_mips_howto_table): Fix some relocation howtos |
| according to the MIPS/SGI ELF64 ABI Draft. |
| (mips_elf_sort_hash_table): Typo. |
| |
| 2001-10-04 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): Comment typo. |
| |
| * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): Bail out after |
| copying flags if this is a weakdef. |
| |
| 2001-10-04 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf-bfd.h (struct elf_link_hash_entry): Reorganise for better |
| packing. |
| |
| * elf32-mips.c (mips_elf_record_global_got_symbol): Set got.offset |
| to 1 rather than 0 to avoid confusing copy_indirect_symbol. |
| (mips_elf_sort_hash_table_f): Compare got.offset against 1. |
| |
| * Makefile.am (BFD_H_DEPS): Add symcat.h. Ensure everything |
| depends on $(BFD_H) $(BFD_H_DEPS) $(LOCAL_H_DEPS), not just those |
| backends we configure. Run "make dep-am". |
| (install-data-local): Install symcat.h. |
| * dep-in.sed: Remove symcat.h from dependencies. |
| * Makefile.in: Regenerate. |
| |
| 2001-10-03 Vassili Karpov <malc@pulsesoft.com> |
| |
| * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Handle nocopyreloc. |
| |
| 2001-10-03 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * elf64-mips.c (elf_backend_may_use_rela_p): New define. |
| (elf_backend_default_use_rela_p): New define. |
| |
| 2001-10-03 Alan Modra <amodra@bigpond.net.au> |
| |
| * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Fix typos in last |
| change. |
| |
| * configure.in (AC_OUTPUT <bfd-in3.h>): Remove version.h. |
| * configure: Regenerate. |
| * Makefile.am (BFD_H_FILES): Add version.h. |
| * Makefile.in: Regenerate. |
| * po/SRC-POTFILES.in: Regenerate. |
| |
| * elflink.h (elf_fix_symbol_flags): Copy flags to weakdef using |
| elf_backend_copy_indirect_symbol so that backend has a chance to |
| copy other necessary fields. |
| * elf-bfd.h (struct elf_backend_data): Update description of |
| elf_backend_copy_indirect_symbol. |
| * elf.c (_bfd_elf_link_hash_copy_indirect): Bail out after |
| copying flags if this is a weakdef. |
| * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise. |
| (elfNN_ia64_aix_add_symbol_hook): Use elf_link_hash_lookup rather |
| than bfd_link_hash_lookup. |
| * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Don't do copy |
| reloc processing for weakdefs. |
| * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. |
| * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. |
| |
| 2001-10-02 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf64-ppc.c (ppc64_elf_check_relocs): Use a local var and cast |
| result of ELF64_R_TYPE to enum before using in a switch. |
| (ppc64_elf_gc_mark_hook): Likewise. |
| (ppc64_elf_gc_sweep_hook): Likewise. |
| (ppc64_elf_reloc_type_class): Likewise. |
| |
| 2001-10-02 Alan Modra <amodra@bigpond.net.au> |
| |
| * version.h: New file. |
| * bfd-in.h: (BFD_VERSION): Substitute bfd_version. |
| (BFD_VERSION_DATE): Define. |
| (BFD_VERSION_STRING): Define. |
| * configure.in: AC_SUBST bfd_version, bfd_version_date and |
| bfd_version_string. |
| (AC_OUTPUT <bfd-in3.h>): Depend on version.h. |
| * bfd-in2.h: Regenerate. |
| * configure: Regenerate. |
| * Makefile.am: Run "make dep-am". |
| * Makefile.in: Regenerate. |
| |
| * bfd-in.h: Include "symcat.h". |
| (CONCAT4): Redefine as for old CAT4. |
| * aout-arm.c: Use equivalent CONCAT* macro in place of CAT* macros. |
| Add warning regarding whitespace. |
| * aout-cris.c: Likewise. |
| * aout-ns32k.c: Likewise. |
| * aout-sparcle.c: Likewise. |
| * aout-tic30.c: Likewise. |
| * aout0.c: Likewise. |
| * armnetbsd.c: Likewise. |
| * demo64.c: Likewise. |
| * elf-bfd.h: Likewise. |
| * gen-aout.c: Likewise. |
| * host-aout.c: Likewise. |
| * hp300bsd.c: Likewise. |
| * hp300hpux.c: Likewise. |
| * i386aout.c: Likewise. |
| * i386bsd.c: Likewise. |
| * i386dynix.c: Likewise. |
| * i386freebsd.c: Likewise. |
| * i386linux.c: Likewise. |
| * i386lynx.c: Likewise. |
| * i386mach3.c: Likewise. |
| * i386netbsd.c: Likewise. |
| * libaout.h: Likewise. |
| * m68k4knetbsd.c: Likewise. |
| * m68klinux.c: Likewise. |
| * m68klynx.c: Likewise. |
| * m68knetbsd.c: Likewise. |
| * m88kmach3.c: Likewise. |
| * mipsbsd.c: Likewise. |
| * newsos3.c: Likewise. |
| * ns32knetbsd.c: Likewise. |
| * pc532-mach.c: Likewise. |
| * pdp11.c: Likewise. |
| * riscix.c: Likewise. |
| * sparclinux.c: Likewise. |
| * sparclynx.c: Likewise. |
| * sparcnetbsd.c: Likewise. |
| * sunos.c: Likewise. |
| * targets.c: Likewise. |
| * vaxnetbsd.c: Likewise. |
| * vms-hdr.c: Likewise. |
| |
| 2001-10-01 Alan Modra <amodra@bigpond.net.au> |
| |
| * bfd-in.h: Remove comments regarding generated files. |
| * libbfd-in.h: Likewise. |
| * libcoff-in.h: Likewise. |
| * bfd-in2.h: Regenerate. |
| * libbfd.h: Likewise. |
| * libcoff.h: Likewise. |
| |
| 2001-09-30 kaz Kojima <kkojima@rr.iij4u.or.jp> |
| Hans-Peter Nilsson <hp@bitrange.com> |
| |
| * elf32-sh.c (sh_elf_howto_table, R_SH_REL32): Make |
| partial_inplace, matching assembler output. Set src_mask to |
| all ones. |
| (sh_elf_relocate_section): Delete misplaced comment. |
| For relocatable linking against section symbol, call |
| _bfd_relocate_contents for partial_inplace relocs and adjust |
| rel->r_addend for others. |
| <case R_SH_DIR32, R_SH_REL32>: Fetch partial_inplace addend with |
| bfd_get_32, not at rel->r_addend. |
| |
| 2001-09-30 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf.c (_bfd_elf_link_hash_copy_indirect): Set ind refcounts to |
| the old dir refcount, so we indirectly set them to init_refcount. |
| Short-circuit asserts when we've just verified they are true. |
| |
| 2001-09-29 Alan Modra <amodra@bigpond.net.au> |
| |
| * section.c (struct sec): Remove kept_section. |
| (STD_SECTION): Remove kept_section initialisation. |
| (bfd_make_section_anyway): Here too. |
| * ecoff.c (bfd_debug_section): Remove kept_section initialisation. |
| * cofflink.c (_bfd_coff_link_input_bfd): Don't test kept_section. |
| * elflink.h (elf_link_input_bfd): Set discarded link-once section |
| symbols to zero, and remove all code involved with kept_section |
| and tracking section symbol values. |
| * bfd-in2.h: Regenerate. |
| * configure.in: Bump version number. |
| * configure: Regenerate. |
| |
| 2001-09-29 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf64-ppc.c (struct ppc_dyn_relocs): New. |
| (IS_ABSOLUTE_RELOC): Define. |
| (struct ppc_link_hash_entry): New. |
| (struct ppc_link_hash_table): New. |
| (ppc_hash_table): Define. |
| (link_hash_newfunc): New function. |
| (ppc64_elf_link_hash_table_create): New function. |
| (create_got_section): New function. |
| (ppc64_elf_create_dynamic_sections): Call create_got_section. Stash |
| pointers to our dynamic sections in hash table. |
| (ppc64_elf_copy_indirect_symbol): New function. |
| (ppc64_elf_check_relocs): Remove DEBUG code. Use short-cuts to |
| dynamic sections. Localise vars. Modify code for refcounts |
| starting from zero. Don't allocate here, or force symbols dynamic. |
| Don't copy all relocs if shared, select ones we need. Add code |
| to track possible copy relocs for non-shared link. |
| (ppc64_elf_gc_mark_hook): Update comment. |
| (ppc64_elf_gc_sweep_hook): Sweep dynrelocs too. |
| (ppc64_elf_adjust_dynamic_symbol): Remove DEBUG code. Rewrite .plt |
| code for reference counting garbage collection. Don't create .plt |
| entries for functions that don't comply with ABI naming convention, |
| and don't allocate .plt space here. Use short-cuts to dynamic |
| sections. If possible, keep dynamic relocations instead of using |
| copy relocs. Remove confused comments. |
| (ppc_adjust_dynindx): Delete. |
| (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. |
| (allocate_dynrelocs): New function. |
| (readonly_dynrelocs): New function. |
| (ppc64_elf_size_dynamic_sections): Rewrite. Allocate local .got |
| space here, and call allocate_dynrelocs to allocate space for |
| global .plt, .got and reloc sections. Use short-cuts to dynamic |
| sections. Call readonly_dynrelocs to determine whether we need |
| DT_TEXTREL. Don't generate section symbols here, the generic |
| ELF linker code does it for us. |
| (ppc64_elf_final_link): Call regular ELF backend linker rather than |
| gc variety, since we do our own .got handling. |
| (ppc64_elf_relocate_section): Remove DEBUG code. Make use of |
| dynamic section short-cuts. Localise vars, and delay setting. |
| Handle unknown relocs in main switch statement. Replace ugly |
| complicated tests for unresolvable relocs with a simple direct |
| scheme using "unresolved_reloc" var. Test ELF_ST_VISIBILITY |
| before allowing an undefined sym in a shared lib. Do R_*_DS tests |
| after main switch, when we've set addend. Do non-addend insn |
| tweaks before main swithc. Ignore input_section->vma when |
| calculating reloc offsets as it's always zero. Rewrite dynamic |
| reloc handling. Consolidate R_*_HA handling. Handle more relocs. |
| (ppc64_elf_finish_dynamic_symbol): Remove DEBUG code. Make use |
| of dynamic section short-cuts. Reorganise .plt handling code. |
| Remove confused comments. Take note of ELF_LINK_FORCED_LOCAL. |
| Move expressions out of swap_reloca_out function calls. |
| (ppc64_elf_reloc_type_class): New function. |
| (ppc64_elf_info_to_howto): Move common expression to local var. |
| (ppc64_elf_finish_dynamic_sections): Remove DEBUG code. Make use |
| of dynamic section short-cuts. Don't fiddle with section syms |
| here as the ELF linker does it for us. |
| (elf_backend_can_refcount): Define. |
| (bfd_elf64_bfd_link_hash_table_create): Define. |
| (elf_backend_copy_indirect_symbol): Define. |
| (elf_backend_reloc_type_class): Define. |
| (elf_backend_*, bfd_elf64_bfd_* defines): Sort. |
| |
| 2001-09-29 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf-bfd.h (struct elf_link_local_dynamic_entry): Add init_refcount. |
| (struct elf_backend_data): Add can_refcount. |
| * elf.c (_bfd_elf_link_hash_newfunc): Get rid of a few casts. Set |
| got.refcount and plt.refcount from init_refcount. |
| (_bfd_elf_link_hash_table_init): Set up init_refcount. |
| (_bfd_elf_link_hash_copy_indirect): Reference got/plt.refcount |
| rather than got/plt.offset, and test for <= 0 rather than -1. |
| * elflink.h (size_dynamic_sections): Set init_refcount to -1. |
| * elfxx-target.h (elf_backend_can_refcount): Define. |
| (elfNN_bed): Init can_refcount. |
| * linker.c (_bfd_link_hash_newfunc): Get rid of a few casts. |
| (_bfd_generic_link_hash_newfunc): Likewise. |
| * elf32-cris.c (cris_elf_check_relocs): Modify for refcounts |
| starting from zero. |
| (elf_backend_can_refcount): Define. |
| * elf32-hppa.c (elf32_hppa_check_relocs): Modify for refcounts |
| starting from zero. |
| (elf32_hppa_copy_indirect_symbol): Make static to agree with |
| prototype. |
| (elf_backend_can_refcount): Define. |
| * elf32-i386.c (elf_i386_check_relocs): Modify for refcounts |
| starting from zero. |
| (allocate_dynrelocs): Set plt/got.offset rather than *.refcount. |
| (elf_i386_finish_dynamic_symbol): Expand SHN_UNDEF comment. |
| (elf_i386_finish_dynamic_sections): Use local var so line < 80 chars. |
| (elf_backend_can_refcount): Define. |
| (elf_i386_copy_indirect_symbol): Make static to agree with |
| prototype. Formatting fix. |
| * elf32-m68k.c (elf_m68k_check_relocs): Modify for refcounts |
| starting from zero. |
| (elf_backend_can_refcount): Define. |
| * elf32-ppc.c (ppc_elf_check_relocs): Modify for refcounts |
| starting from zero. |
| (elf_backend_can_refcount): Define. |
| * elf32-s390.c (elf_s390_check_relocs): Modify for refcounts |
| starting from zero. |
| (elf_backend_can_refcount): Define. |
| * elf64-s390.c (elf_s390_check_relocs): Modify for refcounts |
| starting from zero. |
| (elf_backend_can_refcount): Define. |
| * elf64-x86-64.c (elf64_x86_64_check_relocs): Modify for refcounts |
| starting from zero. |
| (elf_backend_can_refcount): Define. |
| |
| * som.c (som_write_symbol_strings): Cast current_offset in |
| bfd_seek call to match param type. |
| |
| 2001-09-28 J. Brobecker <brobecker@gnat.com> |
| |
| * som.c (som_write_symbol_strings): Fix incorrect type of |
| current_offset to match the function definition. Fixes a build |
| failure on HPUX-11.00. |
| |
| 2001-09-28 Richard Henderson <rth@redhat.com> |
| |
| * elfxx-target.h [section_flags]: Add SEC_ARCH_BIT_0, SEC_SMALL_DATA, |
| SEC_MERGE, SEC_STRINGS. |
| |
| * section.c (SEC_ARCH_BIT_0): New; replace unused SEC_BALIGN. |
| * bfd-in2.h: Rebuild. |
| |
| 2001-09-28 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf64-x86-64.c (elf64_x86_64_reloc_type_lookup): Don't map bfd |
| reloc code using x86_64_reloc_map. |
| |
| * elf32-hppa.c (elf32_hppa_check_relocs): Update comment since we |
| no longer allocate here. Localise some vars to blocks where they |
| are used. |
| (elf32_hppa_adjust_dynamic_symbol): Correct a comment. Delay |
| setting of vars until needed. |
| (allocate_dynrelocs): Don't create a .plt entry without a reloc |
| when symbol visibilty makes a function local. |
| (elf32_hppa_finish_dynamic_symbol): Move expressions out of |
| swap_reloca_out function calls. |
| (elf32_hppa_relocate_section): Likewies. Comment typo fix. |
| (elf32_hppa_finish_dynamic_sections): Migrate common code out of |
| switch statement. |
| |
| * elf32-i386.c (elf_i386_check_relocs): Update comment since we |
| no longer allocate here. Localise some vars to blocks where they |
| are used. Remove separate switch stmt for creating .got sec. |
| (elf_i386_adjust_dynamic_symbol): Correct a comment. Remove |
| redundant casts and aborts. Delay setting of vars until needed. |
| (allocate_dynrelocs): Remove redundant casts and aborts. |
| (elf_i386_size_dynamic_sections): Move comment. |
| (elf_i386_finish_dynamic_symbol): Move expressions out of function |
| calls. |
| (elf_i386_relocate_section): Likewise. Comment typo fix. |
| (elf_i386_finish_dynamic_sections): Migrate common code out of |
| switch statement. |
| (elf_backend_* defines): Sort. |
| |
| * elf32-i386.c (allocate_dynrelocs): Don't create a .plt entry |
| without a reloc when symbol visibilty makes a function local. |
| |
| 2001-09-27 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix detection of |
| conflicting float flags. |
| |
| 2001-09-26 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-i386 (elf_i386_copy_indirect_symbol): New function. |
| (elf_backend_copy_indirect_symbol): Define. |
| (struct elf_i386_link_hash_entry): Rename "root" to "elf". |
| (struct elf_i386_link_hash_table): Likewise. |
| (link_hash_newfunc): Get rid of unnecessary casts. |
| (elf_i386_link_hash_table_create): Likewise. |
| (elf_i386_check_relocs): Initialise local_got_refcounts to 0. |
| Don't test input section SEC_READONLY here to try to avoid copy |
| relocs, and keep dyn_relocs regardleas of ELF_LINK_NON_GOT_REF. |
| (elf_i386_adjust_dynamic_symbol): Check output section SEC_READONLY |
| here to properly test whether we need copy relocs. Do so for weak |
| syms too. |
| |
| * elf32-hppa (elf32_hppa_copy_indirect_symbol): New function. |
| (elf_backend_copy_indirect_symbol): Define. |
| (struct elf32_hppa_link_hash_table): Rename "root" to "elf". |
| (stub_hash_newfunc): Get rid of unnecessary casts. |
| (hppa_link_hash_newfunc): Likewise. |
| (elf32_hppa_check_relocs): Initialise local_got_refcounts to 0. |
| Don't test input section SEC_READONLY here to try to avoid copy |
| relocs, and keep dyn_relocs regardleas of ELF_LINK_NON_GOT_REF. |
| (elf32_hppa_adjust_dynamic_symbol): Check output section SEC_READONLY |
| here to properly test whether we need copy relocs. Do so for weak |
| syms too. |
| |
| 2001-09-26 Alan Modra <amodra@bigpond.net.au> |
| |
| * bfd.c (_bfd_default_error_handlerl): Define using VPARAMS, |
| VA_OPEN, VA_FIXEDARG, VA_CLOSE. |
| (bfd_archive_filename): Cast bfd_malloc arg to the correct size. |
| |
| 2001-09-25 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf64-sparc.c (sparc64_elf_build_plt): Fix .plt[32768+] slot |
| computation. |
| |
| 2001-09-25 H.J. Lu <hjl@gnu.org> |
| |
| * bfd-in2.h: Regenerated. |
| |
| 2001-09-25 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-i386.c: Add comment re linker function names and ordering. |
| (elf_i386_link_hash_newfunc): Rename to link_hash_newfunc. |
| (elf_i386_grok_prstatus): Move before linker functions. |
| (elf_i386_grok_psinfo): Likewise. |
| (elf_i386_fake_sections): Move so that functions are ordered. |
| (elf_i386_reloc_type_class): Likewise. Comment function purpose. |
| |
| 2001-09-25 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-hppa.c: Rename occurrences of "hplink" to "htab" |
| throughout file. |
| |
| * elf32-hppa.c: (LONG_BRANCH_PIC_IN_SHLIB): Delete. Remove all |
| code handling this option. |
| (LONG_BRANCH_VIA_PLT): Likewise. |
| (RELATIVE_DYNRELOCS): Define as zero. |
| (struct elf32_hppa_dyn_reloc_entry): Add "sec", and |
| "pc_count" fields. Remove "section" field. |
| (elf32_hppa_link_hash_entry): Rename reloc_entries to dyn_relocs. |
| (elf32_hppa_check_relocs): Don't allocate space for dynamic |
| relocs here. Instead, record all needed dynamic relocs via |
| dyn_relocs and local_dynrel. Cache pointer to "sreloc" section |
| in elf_section_data. |
| (elf32_hppa_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. |
| (allocate_plt_and_got_and_discard_relocs): Rename to |
| allocate_dynrelocs. Allocate rather than discarding dyn relocs. |
| (readonly_dynrelocs): New function. |
| (elf32_hppa_size_dynamic_sections): Mark output_bfd unused. |
| Call readonly_dynrelocs to determine need for DT_TEXTREL. |
| Rename "i" to "ibfd". Allocate space for local dyn relocs. |
| (elf32_hppa_relocate_section): Make use of cached sreloc. |
| (elf32_hppa_reloc_type_class): New function. |
| (elf_backend_reloc_type_class): Define. |
| |
| 2001-09-25 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf-bfd.h (struct bfd_elf_section_data): Add "local_dynrel" |
| and "sreloc" fields. |
| * elf32-i386.c (struct elf_i386_dyn_relocs): Add "sec", and |
| "pc_count" fields. Remove "section" field. |
| (elf_i386_check_relocs): Don't set DF_TEXTREL here. Don't |
| allocate space for dynamic relocs here. Instead, record all |
| needed dynamic relocs via dyn_relocs and local_dynrel. Cache |
| pointer to "sreloc" section in elf_section_data. |
| (elf_i386_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. |
| (allocate_plt_and_got_and_discard_relocs): Rename to |
| allocate_dynrelocs. Allocate rather than discarding dyn relocs. |
| (readonly_dynrelocs): New function. |
| (elf_i386_size_dynamic_sections): Call readonly_dynrelocs. |
| Rename "i" to "ibfd". Allocate space for local dyn relocs. |
| (elf_i386_relocate_section): Make use of cached sreloc. |
| |
| 2001-09-24 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf-bfd.h (elf_backend_reloc_type_class): Pass in the entire |
| reloc rather than just the type. |
| (_bfd_elf_reloc_type_class): Likewise. |
| * elf.c (_bfd_elf_reloc_type_class): Likewise. |
| * elf32-arm.h (elf32_arm_reloc_type_class): Likewise. |
| * elf32-cris.c (elf_cris_reloc_type_class): Likewise. |
| * elf32-i386.c (elf_i386_reloc_type_class): Likewise. |
| * elf32-m68k.c (elf32_m68k_reloc_type_class): Likewise. |
| * elf32-ppc.c (ppc_elf_reloc_type_class): Likewise. |
| * elf32-s390.c (elf_s390_reloc_type_class): Likewise. |
| * elf32-sh.c (sh_elf_reloc_type_class): Likewise. |
| * elf32-sparc.c (elf32_sparc_reloc_type_class): Likewise. |
| * elf64-alpha.c (elf64_alpha_reloc_type_class): Likewise. |
| * elf64-s390.c (elf_s390_reloc_type_class): Likewise. |
| * elf64-sparc.c (sparc64_elf_reloc_type_class): Likewise. |
| * elf64-x86-64.c (elf64_x86_64_reloc_type_class): Likewise. |
| * elfxx-ia64.c (elfNN_ia64_reloc_type_class): Likewise. |
| * elflink.h: Formatting fixes. |
| (elf_link_sort_relocs): Make "count" and "size" bfd_size_type. |
| Call bfd_zmalloc rather than calloc. Remove unnecessary cast of |
| o->contents to PTR. Update call to elf_backend_reloc_type_class. |
| |
| 2001-09-22 John Reiser <jreiser@BitWagon.com> |
| |
| * elfcode.h (elf_object_p): Allow for no section header at all in |
| non-ET_REL files. Honor 0 for e_shnum, e_shstrndx, e_shoff. |
| |
| 2001-09-21 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elfxx-ia64.c: Fix compile time warning messages. |
| * coff-mcore.c: Fix compile time warning messages. |
| * coff-ppc.c: Fix compile time warning messages. |
| * coffcode.h: Fix compile time warning messages. |
| * elf32-mips.c: Fix compile time warning messages. |
| * elf64-alpha.c: Fix compile time warning messages. |
| * libbfd.c: Fix compile time warning messages. |
| * bfd-in2.h: Regenerate. |
| |
| 2001-09-21 Alan Modra <amodra@bigpond.net.au> |
| |
| * Makefile.am: Run "make dep-am". |
| * Makefile.in: Regenerate. |
| |
| * aoutx.h: Formatting fixes. |
| * merge.c (_bfd_merged_section_offset): Break line at 80 chars. |
| |
| * linker.c: Replace bfd_get_filename with bfd_archive_filename |
| in error message. |
| |
| 2001-09-21 Alan Modra <amodra@bigpond.net.au> |
| |
| * bfd.c (bfd_archive_filename): New function. |
| * bfd-in2.h: Regenerate. |
| * aout-adobe.c: Replace bfd_get_filename with bfd_archive_filename |
| in error messages where the bfd is an input bfd. |
| * aout-cris.c: Likewise. |
| * coff-arm.c: Likewise. |
| * coff-mcore.c: Likewise. |
| * coff-ppc.c: Likewise. |
| * coff-rs6000.c: Likewise. |
| * coff-sh.c: Likewise. |
| * coff-tic54x.c: Likewise. |
| * coff-tic80.c: Likewise. |
| * coff64-rs6000.c: Likewise. |
| * coffcode.h: Likewise. |
| * coffgen.c: Likewise. |
| * cofflink.c: Likewise. |
| * ecofflink.c: Likewise. |
| * elf-hppa.h: Likewise. |
| * elf.c: Likewise. |
| * elf32-arm.h: Likewise. |
| * elf32-cris.c: Likewise. |
| * elf32-gen.c: Likewise. |
| * elf32-hppa.c: Likewise. |
| * elf32-i370.c: Likewise. |
| * elf32-i386.c: Likewise. |
| * elf32-m32r.c: Likewise. |
| * elf32-mcore.c: Likewise. |
| * elf32-mips.c: Likewise. |
| * elf32-ppc.c: Likewise. |
| * elf32-s390.c: Likewise. |
| * elf32-sh.c: Likewise. |
| * elf32-sparc.c: Likewise. |
| * elf32-v850.c: Likewise. |
| * elf64-alpha.c: Likewise. |
| * elf64-gen.c: Likewise. |
| * elf64-ppc.c: Likewise. |
| * elf64-s390.c: Likewise. |
| * elf64-sparc.c: Likewise. |
| * elf64-x86-64.c: Likewise. |
| * elflink.h: Likewise. |
| * elfxx-ia64.c: Likewise. |
| * ieee.c: Likewise. |
| * ihex.c: Likewise. |
| * libbfd.c: Likewise. |
| * pdp11.c: Likewise. |
| * pe-mips.c: Likewise. |
| * peicode.h: Likewise. |
| * srec.c: Likewise. |
| * xcofflink.c: Likewise. |
| |
| * elf32-arm.h: Make _bfd_error_handler calls K&R compatible. |
| |
| * elflink.c (_bfd_elf_create_linker_section): Better grammar for |
| error message. |
| |
| * coff-mcore.c (coff_mcore_relocate_section): Internalionalise |
| error message. |
| |
| * elf64-sparc.c (sparc64_elf_add_symbol_hook): Constify stt_types. |
| Consolidate error messages, and split long messages to two lines. |
| |
| 2001-09-20 John Reiser <jreiser@BitWagon.com> |
| |
| * elf32-i386.c (elf_i386_relocate_section): Coordinate info->symbolic |
| and info->allow_shlib_undefined. |
| * elf32-cris.c: Likewise. |
| * elf32-hppa.c: Likewise. |
| * elf32-m68k.c: Likewise. |
| * elf32-mips.c: Likewise. |
| * elf32-ppc.c: Likewise. |
| * elf32-s390.c: Likewise. |
| * elf32-sh.c: Likewise. |
| * elf32-sparc.c: Likewise. |
| * elf64-alpha.c: Likewise. |
| * elf64-hppa.c: Likewise. |
| * elf64-ppc.c: Likewise. |
| * elf64-s390.c: Likewise. |
| * elf64-sparc.c: Likewise. |
| * elf64-x86-64.c: Likewise. |
| * elfxx-ia64.c: Likewise. |
| |
| 2001-09-18 Bruno Haible <haible@clisp.cons.org> |
| |
| * aoutx.h: Include "safe-ctype.h" instead of <ctype.h>. |
| (aout_link_write_symbols): Use ISDIGIT instead of isdigit. |
| * archive.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (_bfd_generic_read_ar_hdr_mag): Use ISDIGIT instead of isdigit. |
| * archures.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (bfd_default_scan): Use ISDIGIT instead of isdigit. |
| * bfd.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (bfd_scan_vma): Use ISXDIGIT/ISDIGIT/ISLOWER instead of |
| isxdigit/isdigit/islower. |
| * binary.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (mangle_name): Use ISALNUM instead of isalnum. |
| * cpu-v850.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (scan): Use ISDIGIT instead of isdigit. |
| * hosts/alphavms.h: Don't include <ctype.h>. |
| * ieee.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (ieee_object_p): Use TOUPPER instead of toupper. |
| * ihex.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (ihex_bad_byte): Use ISPRINT instead of isprint. |
| * merge.c: Don't include <ctype.h>. |
| * oasys.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (oasys_write_sections): Use ISDIGIT instead of isdigit. |
| * pdp11.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (aout_link_write_symbols): Use ISDIGIT instead of isdigit. |
| * ppcboot.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (mangle_name): Use ISALNUM instead of isalnum. |
| * som.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (som_set_reloc_info): Use ISUPPER/ISLOWER/ISDIGIT instead of |
| isupper/islower/isdigit. |
| (som_decode_symclass): Use TOUPPER instead of toupper. |
| * srec.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (srec_bad_byte): Use ISPRINT instead of isprint. |
| (srec_scan): Use ISSPACE instead of isspace. |
| * stabs.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (_bfd_link_section_stabs): Use ISDIGIT instead of isdigit. |
| * syms.c: Include "safe-ctype.h" |
| (islower, toupper): Remove macro definitions. |
| (bfd_decode_symclass): Use TOUPPER instead of toupper. |
| * vms-gsd.c: Don't include <ctype.h>. |
| * vms-hdr.c: Include "safe-ctype.h" instead of <ctype.h>. |
| (_bfd_vms_write_hdr): Use ISLOWER/TOUPPER instead of |
| islower/toupper. |
| * vms-tir.c: Don't include <ctype.h>. |
| |
| 2001-09-18 Alan Modra <amodra@bigpond.net.au> |
| |
| * libbfd.c (bfd_bread): New function replacing bfd_read without |
| redundant params. Allow reads up to (size_t) -2 in length. |
| (bfd_bwrite): Similarly for bfd_write. |
| (real_read): Return a size_t. |
| (bfd_read): Call bfd_bread. |
| (bfd_write): Call bfd_bwrite. |
| (warn_deprecated): New function to annoy everybody. |
| (bfd_get_file_window): Don't call bfd_set_error unnecessarily. |
| * bfd-in.h (bfd_bread, bfd_bwrite, warn_deprecated): Declare. |
| (bfd_read, bfd_write): Define as macro. |
| * aix386-core.c: Replace calls to bfd_read with bfd_bread, and |
| likewise for bfd_write. Ensure function args are correct size by |
| using casts or local vars. In some cases, remove unnecessary |
| casts. Formatting fixes, in some cases removing a large expression |
| from function args by using a local var. Replace CONST with const. |
| Modify variable types to avoid warings. Use casts to avoid |
| warnings when using negative numbers in unsigned expressions. |
| * aout-adobe.c: Likewise. |
| * aout-arm.c: Likewise. |
| * aout-cris.c: Likewise. |
| * aout-encap.c: Likewise. |
| * aout-ns32k.c: Likewise. |
| * aout-target.h: Likewise. |
| * aout-tic30.c: Likewise. |
| * aoutf1.h: Likewise. |
| * aoutx.h: Likewise. |
| * archive.c: Likewise. |
| * archures.c: Likewise. |
| * bfd-in.h: Likewise. |
| * bfd.c: Likewise. |
| * binary.c: Likewise. |
| * bout.c: Likewise. |
| * cache.c: Likewise. |
| * cisco-core.c: Likewise. |
| * coff-a29k.c: Likewise. |
| * coff-alpha.c: Likewise. |
| * coff-arm.c: Likewise. |
| * coff-h8300.c: Likewise. |
| * coff-h8500.c: Likewise. |
| * coff-i386.c: Likewise. |
| * coff-i860.c: Likewise. |
| * coff-i960.c: Likewise. |
| * coff-ia64.c: Likewise. |
| * coff-m68k.c: Likewise. |
| * coff-m88k.c: Likewise. |
| * coff-mcore.c: Likewise. |
| * coff-mips.c: Likewise. |
| * coff-ppc.c: Likewise. |
| * coff-rs6000.c: Likewise. |
| * coff-sh.c: Likewise. |
| * coff-sparc.c: Likewise. |
| * coff-stgo32.c: Likewise. |
| * coff-tic30.c: Likewise. |
| * coff-tic54x.c: Likewise. |
| * coff-tic80.c: Likewise. |
| * coff-w65.c: Likewise. |
| * coff-z8k.c: Likewise. |
| * coff64-rs6000.c: Likewise. |
| * coffcode.h: Likewise. |
| * coffgen.c: Likewise. |
| * cofflink.c: Likewise. |
| * coffswap.h: Likewise. |
| * corefile.c: Likewise. |
| * cpu-arc.c: Likewise. |
| * cpu-h8300.c: Likewise. |
| * cpu-h8500.c: Likewise. |
| * cpu-i960.c: Likewise. |
| * cpu-ia64-opc.c: Likewise. |
| * cpu-ns32k.c: Likewise. |
| * cpu-pdp11.c: Likewise. |
| * cpu-pj.c: Likewise. |
| * cpu-sh.c: Likewise. |
| * cpu-w65.c: Likewise. |
| * cpu-z8k.c: Likewise. |
| * dwarf1.c: Likewise. |
| * dwarf2.c: Likewise. |
| * ecoff.c: Likewise. |
| * ecofflink.c: Likewise. |
| * ecoffswap.h: Likewise. |
| * elf-bfd.h: Likewise. |
| * elf-hppa.h: Likewise. |
| * elf-m10200.c: Likewise. |
| * elf-m10300.c: Likewise. |
| * elf.c: Likewise. |
| * elf32-arc.c: Likewise. |
| * elf32-arm.h: Likewise. |
| * elf32-avr.c: Likewise. |
| * elf32-cris.c: Likewise. |
| * elf32-fr30.c: Likewise. |
| * elf32-gen.c: Likewise. |
| * elf32-h8300.c: Likewise. |
| * elf32-hppa.c: Likewise. |
| * elf32-i370.c: Likewise. |
| * elf32-i386.c: Likewise. |
| * elf32-i860.c: Likewise. |
| * elf32-m32r.c: Likewise. |
| * elf32-m68k.c: Likewise. |
| * elf32-mcore.c: Likewise. |
| * elf32-mips.c: Likewise. |
| * elf32-openrisc.c: Likewise. |
| * elf32-pj.c: Likewise. |
| * elf32-ppc.c: Likewise. |
| * elf32-s390.c: Likewise. |
| * elf32-sh-lin.c: Likewise. |
| * elf32-sh.c: Likewise. |
| * elf32-sparc.c: Likewise. |
| * elf32-v850.c: Likewise. |
| * elf64-alpha.c: Likewise. |
| * elf64-hppa.c: Likewise. |
| * elf64-mips.c: Likewise. |
| * elf64-ppc.c: Likewise. |
| * elf64-s390.c: Likewise. |
| * elf64-sparc.c: Likewise. |
| * elf64-x86-64.c: Likewise. |
| * elfarm-nabi.c: Likewise. |
| * elfcode.h: Likewise. |
| * elfcore.h: Likewise. |
| * elflink.c: Likewise. |
| * elflink.h: Likewise. |
| * elfxx-ia64.c: Likewise. |
| * elfxx-target.h: Likewise. |
| * format.c: Likewise. |
| * hash.c: Likewise. |
| * hp300hpux.c: Likewise. |
| * hppabsd-core.c: Likewise. |
| * hpux-core.c: Likewise. |
| * i386aout.c: Likewise. |
| * i386dynix.c: Likewise. |
| * i386linux.c: Likewise. |
| * i386lynx.c: Likewise. |
| * i386mach3.c: Likewise. |
| * i386msdos.c: Likewise. |
| * i386os9k.c: Likewise. |
| * ieee.c: Likewise. |
| * ihex.c: Likewise. |
| * irix-core.c: Likewise. |
| * libaout.h: Likewise. |
| * libbfd-in.h: Likewise. |
| * libbfd.c: Likewise. |
| * libcoff-in.h: Likewise. |
| * libecoff.h: Likewise. |
| * libieee.h: Likewise. |
| * libnlm.h: Likewise. |
| * libpei.h: Likewise. |
| * libxcoff.h: Likewise. |
| * linker.c: Likewise. |
| * lynx-core.c: Likewise. |
| * m68klinux.c: Likewise. |
| * merge.c: Likewise. |
| * mipsbsd.c: Likewise. |
| * netbsd-core.c: Likewise. |
| * nlm.c: Likewise. |
| * nlm32-alpha.c: Likewise. |
| * nlm32-i386.c: Likewise. |
| * nlm32-ppc.c: Likewise. |
| * nlm32-sparc.c: Likewise. |
| * nlmcode.h: Likewise. |
| * nlmswap.h: Likewise. |
| * ns32k.h: Likewise. |
| * oasys.c: Likewise. |
| * opncls.c: Likewise. |
| * osf-core.c: Likewise. |
| * pc532-mach.c: Likewise. |
| * pdp11.c: Likewise. |
| * pe-mips.c: Likewise. |
| * peXXigen.c: Likewise. |
| * peicode.h: Likewise. |
| * ppcboot.c: Likewise. |
| * ptrace-core.c: Likewise. |
| * reloc.c: Likewise. |
| * reloc16.c: Likewise. |
| * riscix.c: Likewise. |
| * rs6000-core.c: Likewise. |
| * sco5-core.c: Likewise. |
| * section.c: Likewise. |
| * som.c: Likewise. |
| * sparclinux.c: Likewise. |
| * sparclynx.c: Likewise. |
| * srec.c: Likewise. |
| * stabs.c: Likewise. |
| * sunos.c: Likewise. |
| * syms.c: Likewise. |
| * targets.c: Likewise. |
| * tekhex.c: Likewise. |
| * trad-core.c: Likewise. |
| * versados.c: Likewise. |
| * vms-gsd.c: Likewise. |
| * vms-hdr.c: Likewise. |
| * vms-misc.c: Likewise. |
| * vms-tir.c: Likewise. |
| * vms.c: Likewise. |
| * vms.h: Likewise. |
| * xcofflink.c: Likewise. |
| * bfd-in2.h: Regenerate. |
| * libbfd.h: Regenerate. |
| * libcoff.h: Regenerate. |
| |
| * bfd.c (struct _bfd): Make "where" and "origin" unsigned. |
| * bfd-in.h (file_ptr): Change from a long int to a bfd_signed_vma. |
| (ufile_ptr): Define. |
| (bfd_tell): Return a ufile_ptr. |
| * libbfd.c (bfd_tell): Likewise. |
| (bfd_seek): Use bfd_size_type locals. Don't call bfd_set_error |
| unnecessarily. |
| * aix386-core.c: Test != 0 for bfd_seek errors rather than < 0. |
| * aoutf1.h: Likewise. |
| * som.c: Likewise. |
| * cache.c (bfd_cache_lookup_worker): Guard against abfd->where |
| larger than unsigned long can represent. |
| |
| * libbfd.c (bfd_malloc): Take a bfd_size_type arg. Error if |
| size overflows size_t. |
| (bfd_realloc): Likewise. |
| (bfd_zmalloc): Likewise. |
| * opncls.c (bfd_alloc): Likewise. |
| (bfd_zalloc): Likewise. |
| * libbfd-in.h (bfd_malloc, bfd_realloc, bfd_zmalloc): Update. |
| (bfd_alloc, bfd_zalloc): Update. |
| |
| * libbfd.c (bfd_get_8): Mask with 0xff in case char is more than |
| 8 bits. |
| (bfd_get_signed_8): Likewise. |
| (H_PUT_64, H_PUT_32, H_PUT_16, H_PUT_8, |
| H_PUT_S64, H_PUT_S32, H_PUT_S16, H_PUT_S8, |
| H_GET_64, H_GET_32, H_GET_16, H_GET_8, |
| H_GET_S64, H_GET_S32, H_GET_S16, H_GET_S8): Define and use. |
| * libaout.h: Likewise define and use here. |
| * aout-adobe.c: Use H_GET_* and H_PUT_* macros. |
| * aout-arm.c: Likewise. |
| * aout-encap.c: Likewise. |
| * aout-ns32k.c: Likewise. |
| * aout-tic30.c: Likewise. |
| * aoutf1.h: Likewise. |
| * aoutx.h: Likewise. |
| * bout.c: Likewise. |
| * coff-alpha.c: Likewise. |
| * coff-h8300.c: Likewise. |
| * coff-h8500.c: Likewise. |
| * coff-i960.c: Likewise. |
| * coff-ia64.c: Likewise. |
| * coff-m88k.c: Likewise. |
| * coff-mips.c: Likewise. |
| * coff-ppc.c: Likewise. |
| * coff-rs6000.c: Likewise. |
| * coff-sh.c: Likewise. |
| * coff-sparc.c: Likewise. |
| * coff-stgo32.c: Likewise. |
| * coff-tic30.c: Likewise. |
| * coff-tic80.c: Likewise. |
| * coff-w65.c: Likewise. |
| * coff-z8k.c: Likewise. |
| * coff64-rs6000.c: Likewise. |
| * coffgen.c: Likewise. |
| * cofflink.c: Likewise. |
| * coffswap.h: Likewise. |
| * ecoff.c: Likewise. |
| * ecoffswap.h: Likewise. |
| * elf.c: Likewise. |
| * elf32-mips.c: Likewise. |
| * elf64-mips.c: Likewise. |
| * hp300hpux.c: Likewise. |
| * i386dynix.c: Likewise. |
| * i386lynx.c: Likewise. |
| * i386msdos.c: Likewise. |
| * i386os9k.c: Likewise. |
| * libpei.h: Likewise. |
| * nlm32-alpha.c: Likewise. |
| * nlm32-i386.c: Likewise. |
| * nlm32-ppc.c: Likewise. |
| * nlmcode.h: Likewise. |
| * nlmswap.h: Likewise. |
| * oasys.c: Likewise. |
| * pdp11.c: Likewise. |
| * pe-mips.c: Likewise. |
| * peXXigen.c: Likewise. |
| * peicode.h: Likewise. |
| * riscix.c: Likewise. |
| * sunos.c: Likewise. |
| * xcofflink.c: Likewise. |
| * elfcode.h: (put_word, get_word, put_signed_word, get_signed_word): |
| Rename to H_PUT_WORD, H_GET_WORD, H_PUT_SIGNED_WORD, H_GET_SIGNED_WORD. |
| * coff-rs6000.c (PUTWORD, PUTHALF, PUTBYTE): Don't define. Use |
| equivalent H_PUT_* macro instead. |
| (GETWORD, GETHALF, GETBYTE): Similarly. |
| * coff64-rs6000.c (PUTWORD, PUTHALF, PUTBYTE): Likewise. |
| (GETWORD, GETHALF, GETBYTE): Likewise. |
| * coffswap.h (PUTWORD, PUTHALF, PUTBYTE): Likewise. |
| |
| * bfd-in.h (struct orl): Change "pos" to a union. |
| * archive.c (_bfd_compute_and_write_armap): Use it instead of casts. |
| (bsd_write_armap): Here too. |
| (coff_write_armap): And here. |
| * coff-rs6000.c (xcoff_write_armap_old): And here. |
| (xcoff_write_one_armap_big): And here. |
| (xcoff_write_armap_big): And here. |
| * ecoff.c (_bfd_ecoff_write_armap): And here. |
| * elf64-mips.c (mips_elf64_write_armap): And here. |
| |
| * aoutf1.h (sunos_set_arch_mach): Make "mach" param an enum. |
| * elf-m10300.c (elf_mn10300_mach): Return an unsigned long. |
| * elf32-h8300.c (elf32_h8_mach): Likewise. |
| * elf32-mips.c (elf_mips_mach): Likewise. |
| * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise. |
| |
| * aix386-core.c (aix386_core_file_p): Remove redundant bfd_release |
| calls. |
| (aix386_core_vec): Typo fix. |
| |
| * aout-arm.c: Include libaout.h and aout/aout64.h after N_TXTADDR |
| etc. to avoid redefined macro warning. |
| (MY(put_reloc)): Use bfd_vma for "value" rather than long. |
| (MY(fix_pcrel_26)): Likewise. |
| * aout-ns32k.c (MY(put_reloc)): Likewise. |
| * aout-cris.c (MY(swap_ext_reloc_out)): Likewise for r_addend. |
| * aoutx.h (NAME(aout,swap_ext_reloc_out)): Likewise. |
| * coff-arm.c (coff_arm_relocate_section): Likewise for my_offset. |
| |
| * aout-encap.c: Include "file", not <file> for binutils headers. |
| (encap_object_p): Half baked attempt to fix compile errors in |
| code dealing with "magic". |
| |
| * aout-ns32k.c: Include "file", not <file> for binutils headers. |
| (_bfd_ns32k_relocate_contents): get_data and put_data manipulate |
| bfd_vma's rather than longs. |
| * cpu-ns32k.c (ns32k_sign_extend): Delete. |
| (_bfd_ns32k_get_displacement): Return a bfd_vma, don't pass in offset. |
| (_bfd_ns32k_get_immediate): Likewise. Add code for 8 byte values, |
| remove case 3. |
| (_bfd_ns32k_put_displacement): Accept a bfd_vma, don't pass in offset. |
| Use unsigned comparisons. |
| (bfd_ns32k_put_immediate): Likewise, and add code for 8 byte values. |
| (do_ns32k_reloc): get_data and put_data operate on bfd_vma's. |
| (_bfd_do_ns32k_reloc_contents): Likewise. |
| * ns32k.h (_bfd_ns32k_get_displacement): Update prototype. |
| (_bfd_ns32k_get_immediate): Likewise. |
| (_bfd_ns32k_put_displacement): Likewise. |
| (_bfd_ns32k_put_immediate): Likewise. |
| (bfd_reloc_status_type): Likewise. |
| |
| * aoutx.h (NAME(aout,find_nearest_line)): Rename 'p' to 'colon' |
| to avoid shadowing. |
| * pdp11.c (NAME(aout,find_nearest_line)): Likewise. |
| * coff-h8300.c (h8300_reloc16_extra_cases): Remove shadowing "value". |
| * coff-ppc.c (enum ref_category): Rename "data" to "tocdata" to |
| avoid shadowing. |
| (record_toc): Use a bfd_signed_vma for our_toc_offset. |
| * coffcode.h (coff_write_relocs): Rename "i" to avoid shadowing. |
| * elf.c (bfd_elf_get_bfd_needed_list): Rename "link" var to avoid |
| shadow warning. |
| (_bfd_elfcore_strndup): Likewise for "dup". |
| * elf32-cris.c (cris_elf_relocate_section): "symname" instead of |
| "name" to avoid shadowing. |
| * elf32-hppa.c (elf32_hppa_relocate_section): Remove duplicate |
| definition of "off". |
| * elf32-i386.c (elf_i386_relocate_section): Likewise. |
| * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Remove duplicate |
| definition of "s". |
| (_bfd_mips_elf_final_link): Rename "i" to "j". Remove duplicate |
| "secpp". |
| * elf64-x86-64.c (elf64_x86_64_relocate_section): Rename inner "indx" |
| to avoid shadowing. |
| * elflink.h (elf_link_add_object_symbols): Rename "link" to "shlink" |
| to avoid shadowing. |
| (elf_link_input_bfd): Likewise. |
| (elf_bfd_final_link): Remove duplicate innermost "off" var. |
| * oasys.c (oasys_write_data): Rename innermost "p" to "sym". |
| * reloc16.c (bfd_coff_reloc16_relax_section): Rename "i" param to |
| "input_section". |
| * som.c (som_prep_for_fixups): Rename inner "i" to "j". |
| * sunos.c (sunos_add_dynamic_symbols): Localise "s" var. |
| (sunos_write_dynamic_symbol): Remove unused vars. |
| * syms.c (_bfd_stab_section_find_nearest_line): Remove duplicate |
| innermost "directory_name" and "file_name" vars. |
| * tekhex.c (first_phase): Rename local var "type" to "stype". |
| (tekhex_write_object_contents): Rename innermost "s" to "sym". |
| * vms-gsd.c (vms_secflag_by_name): Change "size" param to "hassize", |
| doing comparison at caller. |
| (vms_esecflag_by_name): Likewise. |
| * vms-tir.c (etir_sto): Rename innermost "psect" to "psect1". |
| * xcofflink.c (xcoff_link_input_bfd): Delete duplicate innermost "o". |
| (xcoff_write_global_symbol): Rename "p" param to "inf". |
| |
| * cisco-core.c: Add missing prototypes. |
| (cisco_core_file_failing_command): Add ATTRIBUTE_UNUSED. |
| (cisco_core_file_failing_signal): Likewise. |
| (cisco_core_file_matches_executable_p): Likewise. |
| * hpux-core.c (hpux_core_core_file_failing_signal): Likewise. |
| * netbsd-core.c (netbsd_core_file_matches_executable_p): Likewise. |
| * osf-core.c (osf_core_core_file_matches_executable_p): Likewise. |
| * sco5-core.c (sco5_core_file_matches_executable_p): Likewise. |
| |
| * coff-arm.c (coff_arm_link_hash_table): Use bfd_size_type for |
| thumb_glue_size and arm_glue_size. |
| * elf32-arm.h (elf32_arm_link_hash_table): Likewise here. |
| |
| * coff64-rs6000.c: Group prototypes together. |
| |
| * coffcode.h (coff_set_arch_mach): Add ATTRIBUTE_UNUSED. |
| (buy_and_read): Remove "seek" param. Change "size" to bfd_size_type. |
| |
| * cpu-arc.c: Add missing prototypes. |
| * cpu-h8500.c: Likewise. |
| * cpu-i960.c: Likewise. |
| * cpu-pj.c: Likewise. |
| * cpu-sh.c: Likewise. |
| * cpu-w65.c: Likewise. |
| * cpu-z8k.c: Likewise. |
| * elf32-fr30.c: Likewise. |
| * elf32-h8300.c: Likewise. |
| * elf32-i370.c: Likewise. |
| * hpux-core.c: Likewise. |
| * versados.c: Likewise. |
| |
| * cpu-h8300.c (bfd_default_scan_num_mach): Don't declare. |
| * cpu-h8500.c: Likewise. |
| * cpu-i960.c: Likewise. |
| * cpu-z8k.c: Likewise. |
| |
| * cpu-ia64-opc.c: Correct comment. |
| |
| * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove unused var. |
| |
| * elf-bfd.h (elf_size_info): Change count param of write_out_phdrs |
| to unsigned. |
| (bfd_elf32_write_out_phdrs): Likewise. |
| (bfd_elf64_write_out_phdrs): Likewise. |
| (elf_linker_section_pointers): Change addend to bfd_vma. |
| (_bfd_elf_find_pointer_linker_section): Likewise. |
| (_bfd_elfcore_make_pseudosection): Change size param to size_t and |
| filepos to unsigned file_ptr. |
| (_bfd_elfcore_strndup): Change max param to size_t. |
| * elf.c (_bfd_elfcore_make_pseudosection): As above. |
| (_bfd_elfcore_strndup): Likewise. |
| (_bfd_elf_find_pointer_linker_section): Likewise. |
| |
| * elf-hppa.h (elf_hppa_relocate_insn): Return an int, and change |
| insn and sym_value to ints. |
| |
| * elf.c (elf_read): Make "offset" param a file_ptr, "size" a |
| bfd_size_type. |
| (elfcore_read_notes): Likewise. |
| |
| * elf32-arm.h (elf32_arm_final_link_relocate): Change sym_flags |
| param from unsigned char to int. |
| (elf32_arm_relocate_section): If USE_REL, cast "rel" appropriately |
| for info_to_howto call. |
| (add_dynamic_entry): Define macro. |
| (elf32_arm_size_dynamic_sections): Use add_dynamic_entry. |
| |
| * elf32-cris.c (add_dynamic_entry): Define macro. |
| (elf_cris_size_dynamic_sections): Use add_dynamic_entry. |
| |
| * elf32-h8300.c (elf32_h8_final_write_processing): Make static. |
| (elf32_h8_object_p): Likewise. |
| (elf32_h8_merge_private_bfd_data): Likewise. |
| (elf32_h8_relax_section): Cast gap to int so signed comparisons work. |
| |
| * elf32-hppa.c (add_dynamic_entry): Define macro. |
| (elf32_hppa_size_dynamic_sections): Use it. |
| * elf32-i370.c (add_dynamic_entry): Define macro. |
| (i370_elf_size_dynamic_sections): Use it. |
| (i370_noop): Make static. |
| * elf32-i386.c (add_dynamic_entry): Define macro. |
| (elf_i386_size_dynamic_sections): Use it. |
| * elf32-m68k.c (add_dynamic_entry): Define macro. |
| (elf_m68k_size_dynamic_sections): Use it. |
| * elf32-ppc.c (add_dynamic_entry): Define macro. |
| (ppc_elf_size_dynamic_sections): Use it. |
| * elf32-s390.c (add_dynamic_entry): Define macro. |
| (elf_s390_size_dynamic_sections): Use it. |
| * elf64-alpha.c (add_dynamic_entry): Define macro. |
| (elf64_alpha_size_dynamic_sections): Use it. |
| * elf64-hppa.c (add_dynamic_entry): Define macro. |
| (elf64_hppa_size_dynamic_sections): Use it. |
| * elf64-ppc.c (add_dynamic_entry): Define macro. |
| (ppc64_elf_size_dynamic_sections): Use it. |
| * elf64-s390.c (add_dynamic_entry): Define macro. |
| (elf_s390_size_dynamic_sections): Use it. |
| * elf64-sparc.c (add_dynamic_entry): Define macro. |
| (sparc64_elf_size_dynamic_sections): Use it. |
| * elf64-x86-64.c (add_dynamic_entry): Define macro. |
| (elf64_x86_64_size_dynamic_sections): Use it. |
| * elfxx-ia64.c (add_dynamic_entry): Define macro. |
| (elfNN_ia64_size_dynamic_sections): Use it. |
| |
| * elf32-v850.c (SEXT24): Modify to avoid signed/unsigned warning. |
| (v850_elf_perform_relocation): Make "r_type" param unsigned. |
| |
| * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Just return |
| false if the first malloc fails rather than going via error_return. |
| |
| * elf64-sparc.c (sparc64_elf_plt_entry_offset): Use a bfd_vma for |
| "index" param. |
| (sparc64_elf_plt_ptr_offset): Likewise, and for "max" param too. |
| |
| * elflink.h (elf_link_input_bfd): s/ingored/ignored/ in error message. |
| |
| * elfxx-ia64.c (global_sym_index): Return a long. |
| |
| * ieee.c (get_symbol): Use int rather than char param. |
| (ieee_slurp_sections): Move "section" var to inner blocks. |
| (copy_expression): Don't init "value" to zero or worry about |
| clearing to zero after using. |
| (ieee_write_debug_part): Rename "output_buffer" to "obuff" to avoid |
| shadowing. |
| |
| * ihex.c (ihex_write_record): Make "count" var a size_t, "addr" an |
| unsigned int. |
| |
| * libbfd-in.h (BFD_ALIGN): Add cast to avoid signed/unsigned warning. |
| (bfd_write_bigendian_4byte_int): Pass an unsigned int value param. |
| |
| * mipsbsd.c (mips_fix_jmp_addr): Add "error_message" param. |
| |
| * pc532-mach.c (MYNSX): Delete. |
| (ns32kaout_bfd_reloc_type_lookup): Define prototype without MYNSX. |
| (write_object_contents): Correct prototype. |
| |
| * peicode.h (pe_ILF_build_a_bfd): Use an unsigned int param rather |
| than unsigned short. |
| |
| * section.c (bfd_set_section_contents): Remove redundant |
| "offset < 0" test. Check that "count" doesn't overflow size_t. |
| (bfd_get_section_contents): Likewise. |
| |
| * som.c (som_fixup_formats): Add missing braces. |
| (som_reloc_addend): Pass a bfd_vma for "addend". |
| |
| * srec.c (srec_write_record): Pass "type" as an unsigned int. |
| (srec_write_symbols): Remove an unnecessary var. |
| |
| * targets.c (_bfd_target_vector): Sort entries. Sort externs |
| to match. |
| * configure.in: Sort to match. Bump version number. |
| * configure: Regenerate. |
| |
| * tekhex.c (move_section_contents): Assert offset == 0. |
| |
| * versados.c (new_symbol_string): Constify arg. |
| (process_esd): Use bfd_und_section_ptr rather than &bfd_und_section. |
| (versados_get_symbol_info): Make static. |
| (versados_print_symbol): Likewise. |
| (versados_get_reloc_upper_bound): Likewise. |
| (versados_canonicalize_reloc): Likewise. |
| |
| 2001-09-18 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elflink.h (elf_link_input_bfd): Fix typo in error message. |
| |
| 2001-09-17 H.J. Lu <hjl@gnu.org> |
| |
| * dwarf1.c (parse_die): Take a new arg for the end of the |
| section. Return false if die is beyond the section. |
| (parse_functions_in_unit): Pass the end of the section to |
| parse_die (). |
| (_bfd_dwarf1_find_nearest_line): Likewise. |
| |
| 2001-09-14 Michael Rauch <mrauch@netbsd.org> |
| |
| * elf32-sparc.c (elf32_sparc_relocate_section): Treat R_SPARC_UA32 |
| just like R_SPARC_32. |
| |
| 2001-09-14 Kevin Lo <kevlo@openbsd.org> |
| |
| * configure.bfd: Add arm-openbsd target. |
| |
| 2001-09-14 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * config.bfd: Change machine triplets from mips*el*-* to mips*el-*. |
| Add support for mips64. |
| |
| 2001-09-13 Alexandre Oliva <aoliva@redhat.com> |
| |
| * elf32-openrisc.c (ELF_MACHINE_ALT1): Define as EM_OPENRISC_OLD. |
| |
| 2001-09-12 Alexandre Oliva <aoliva@redhat.com> |
| |
| * elf.c (prep_headers): Get the machine code from the elf |
| backend data. |
| * elf-m10200.c (ELF_MACHINE_CODE): Redefine to EM_MN10200. |
| (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10200. |
| * elf-m10300.c (ELF_MACHINE_CODE): Redefine to EM_MN10300. |
| (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10300. |
| * elf-arc.c (arc_elf_final_write_processing): Don't override |
| e_machine, it's now properly set in prep_headers. |
| * elf32-avr.c (elf32_avr_object_p): Accept both EM_AVR and |
| EM_AVR_OLD. |
| (ELF_MACHINE_ALT1): Define to EM_AVR_OLD. |
| * elf-d10v.c (ELF_MACHINE_CODE): Redefine to EM_D10V. |
| (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D10V. |
| * elf-d30v.c (ELF_MACHINE_CODE): Redefine to EM_D30V. |
| (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D30V. |
| * elf-fr30.c (ELF_MACHINE_CODE): Redefine to EM_FR30. |
| (ELF_MACHINE_ALT1): Define to EM_CYGNUS_FR30. |
| * elf-m32r.c (ELF_MACHINE_CODE): Redefine to EM_M32R. |
| (ELF_MACHINE_ALT1): Define to EM_CYGNUS_M32R. |
| * elf32-pj.c (ELF_MACHINE_ALT1): DEfine to EM_PJ_OLD. |
| * elf-v850.c (ELF_MACHINE_CODE): Redefine to EM_V850. |
| (ELF_MACHINE_ALT1): Define to EM_CYGNUS_V850. |
| |
| 2001-09-11 Richard Henderson <rth@redhat.com> |
| |
| * elf64-alpha.c (elf64_alpha_section_flags): New. |
| (elf64_alpha_fake_sections): Map SEC_SMALL_DATA to SHF_ALPHA_GPREL. |
| |
| 2001-09-11 Richard Henderson <rth@redhat.com> |
| |
| * elf64-alpha.c (elf64_alpha_relocate_section): Do not |
| apply HINT relocations against dynamic symbols. |
| |
| 2001-09-11 H.J. Lu <hjl@gnu.org> |
| |
| * linker.c (link_action): Change COMMON_ROW\defw from CREF to COM. |
| |
| 2001-09-09 Richard Henderson <rth@redhat.com> |
| |
| * elf64-alpha.c: Delete all unused ERIC_neverdef and rth_notdef code. |
| |
| * elf64-alpha.c (elf64_alpha_relax_with_lituse): Nop out gpdisp |
| following a call to a near function. |
| |
| 2001-09-08 Richard Henderson <rth@redhat.com> |
| |
| * elf64-alpha.c (elf64_alpha_relocate_section): Soft fail |
| relocation errors. Fail gp-relative relocations against |
| dynamic symbols. |
| |
| 2001-09-08 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-i386.c (elf_i386_relocate_section): Check !DEF_REGULAR |
| as well as DEF_DYNAMIC in test for avoided copy relocs. |
| (allocate_plt_and_got_and_discard_relocs): Likewise. |
| * elf32-hppa.c (elf_i386_relocate_section): Likewise. |
| (allocate_plt_and_got_and_discard_relocs): Likewise. |
| |
| 2001-09-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * elf32-mips.c (mips_elf_calculate_relocation): Fix overflow handling |
| of R_MIPS_PC16. |
| |
| 2001-09-06 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * elf64-mips.c (mips_elf64_howto_table_rel): Fix relocation HOWTO |
| definitions. |
| (mips_elf64_howto_table_rel): Likewise. |
| |
| 2001-09-05 Tom Rix <trix@redhat.com> |
| |
| * xcofflink.c (bfd_xcoff_import_symbol): Handle import file XMC_XO |
| and syscall symbols. |
| (write_global_symbol) : Same. |
| (bfd_xcoff_export_symbol): Remove unused syscall param. |
| * libxcoff.h: Change prototype of bfd_xcoff_export symbol and |
| bfd_xcoff_import_symbol. |
| * bfd-in.h: Same. |
| * bfd-in2.h : Regenerate. |
| |
| 2001-09-04 Richard Henderson <rth@redhat.com> |
| |
| * elf64-alpha.c (SKIP_HOWTO): New. |
| (elf64_alpha_howto_table): Use it to remove dead ECOFF relocs. |
| Fix sizes of 16-bit mem format relocs. |
| (elf64_alpha_reloc_map): Update to match. |
| (elf64_alpha_relax_with_lituse): Use GPREL16 as appropriate. |
| (elf64_alpha_relax_without_lituse): Likewise. |
| (elf64_alpha_check_relocs): Handle GPREL16. |
| (elf64_alpha_relocate_section): Likewise. |
| * reloc.c (BFD_RELOC_ALPHA_USER_*): Remove. |
| (BFD_RELOC_ALPHA_GPREL_HI16, BFD_RELOC_ALPHA_GPREL_LO16): New. |
| * bfd-in2.h, libbfd.h: Rebuild. |
| |
| 2001-09-04 Jeff Law <law@redhat.com> |
| |
| * elf32-h8300.c (elf32_h8_relax_section): New function. |
| (elf32_h8_relax_delete_bytes): Likewise. |
| (elf32_h8_symbol_address_p): Likewise. |
| (elf32_h8_get_relocated_section_contents): Likewise. |
| (bfd_elf32_bfd_relax_section): Define. |
| (bfd_elf32_bfd_get_relocated_section_contents): Likewise. |
| |
| * elf32-h8300.c (special): New function. |
| (h8_elf_howto_table): Use it for SPECIAL_FUNCTION field in |
| all relocations. |
| (elf32_h8_final_link_relocate): Treat R_H8_DIR24A8 like 32bit |
| relocations. Fix problems with the true 24bit reloc R_H8_DIR24R8. |
| Fix minor problems with 8bit and 16bit PC relative relocations. |
| |
| 2001-09-01 Andreas Jaeger <aj@suse.de> |
| |
| * vms-tir.c: Add missing prototypes. |
| * vms-hdr.c: Likewise. |
| * vms-gsd.c: Likewise. |
| * vms-misc.c: Likewise. |
| |
| 2001-08-31 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (_bfd_mips_elf_check_relocs): Report filename |
| with bad relocation. |
| |
| 2001-08-31 Eric Christopher <echristo@redhat.com> |
| Jason Eckhardt <jle@redhat.com> |
| |
| * archures.c: Add mipsisa32 and mipsisa64. Remove mips32, |
| mips32_4k and mips64. |
| * aoutx.h: Remove bfd_mach_mips32, bfd_mach_mips32_4k, |
| bfd_mach_mips64. Add bfd_mach_mipsisa32, bfd_mach_mipsisa64. |
| * cpu-mips.c: Ditto. |
| * elf32-mips.c (_bfd_mips_elf_final_write_processing): Ditto. |
| * bfd-in2.h: Regenerate. |
| |
| 2001-08-31 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf64-alpha.c (elf64_alpha_relocate_section): Duplicate memory |
| value into R_ALPHA_RELATIVE's addend. |
| (elf64_alpha_finish_dynamic_symbol): Likewise. |
| |
| 2001-08-31 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elf32-arm.h (elf32_arm_relocate_section): Do not rightshift |
| recomputed addend during relocatable link if not USE_REL. |
| |
| * elflink.h (elf_gc_propagate_vtable_entries_used): Fix off-by-one |
| error. |
| |
| 2001-08-30 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (mips_elf_calculate_relocation): Revert the last |
| 2 changes. |
| (_bfd_mips_elf_adjust_dynamic_symbol): Allocate dynamic |
| relocations for weak definitions. |
| |
| 2001-08-30 H.J. Lu <hjl@gnu.org> |
| |
| * Makefile.am (BFD32_BACKENDS): Add elf32-h8300.lo. |
| (BFD32_BACKENDS_CFILES): Add elf32-h8300.c. |
| * Makefile.in: Rebuild. |
| |
| 2001-08-30 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (mips_elf_calculate_relocation): Don't create |
| dynamic relocation for undefined weak symbols when creating |
| executables. Check h->root.root.type, instead of h->root.type. |
| |
| 2001-08-29 Joel Sherrill <joel@OARcorp.com> |
| |
| * config.bfd (i[3456]86-*-rtems*, m68*-*-rtems*): Change |
| default from coff to elf. |
| |
| 2001-08-29 Jeff Law <law@redhat.com> |
| |
| * elf32-h8300.c (h8_elf_howto_table): Add new PC relative |
| relocations. |
| (h8_reloc_map): Similarly. |
| (elf32_h8_final_link_relocate): Remove incorrect overflow tests. |
| Add support for PC relative relocations. |
| |
| * elf32-h8300.c: Put all prototypes together. |
| (elf32_h8_info_to_howto): Parameter elf_reloc is used. |
| (elf32_h8_final_link_relocate): New function for linker. |
| (elf32_h8_relocate_section): Similarly. |
| (elf_backend_relocate_section): Define. |
| |
| * cpu-h8300.c (h8300_scan, compatible): Prototype. |
| (h8300_scan): Handle architecture:machine encodings typically |
| found in linker scripts. |
| * elf.c (prep_headers): Do not try to do H8 machine recognition |
| here. |
| * elf32-h8300.c: Add some missing prototypes. |
| (elf32_h8_mach, elf32_h8_final_write_processing): New functions. |
| (elf32_h8_object_p): Similarly. |
| |
| 2001-08-29 Tom Rix <trix@redhat.com> |
| |
| * xcofflink.c (xcoff_link_add_symbols): Fix XTY_LD symbol that |
| does not follow a XTY_SD. |
| |
| 2001-08-29 Alan Modra <amodra@bigpond.net.au> |
| |
| * targmatch.sed: Delete case statements. |
| * config.bfd <powerpc-*-aix* entry>: Select 64 bit xcoff for |
| aix4.3 and above. |
| |
| 2001-08-29 J"orn Rennecke <amylaar@redhat.com> |
| |
| * Makefile.am (elf32-h8300.lo): New target. |
| * config.bfd (h8300*-*-elf): New case. |
| * configure.in (bfd_elf32_h8300_vec): New case. |
| * elf.c (prep_headers): Add case for bfd_arch_h8300. |
| * reloc.c (BFD_RELOC_H8_DIR16A8): New relocation. |
| (BFD_RELOC_H8_DIR16R8, BFD_RELOC_H8_DIR24A8): Likewise. |
| (BFD_RELOC_H8_DIR24R8, BFD_RELOC_H8_DIR32A16): Likewise. |
| * targets.c (bfd_target bfd_elf32_h8300_vec): New extern declaration. |
| * elf32-h8300.c: New file. |
| * Makefile.in, bfd-in2.h, libbfd.h, configure: Regenerated. |
| |
| 2001-08-28 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * sparclynx.c: Add missing prototypes. |
| * coff-mcore.c: Add missing prototypes. |
| * elf32-pj.c: Add missing prototypes. |
| * nlm32-sparc.c: Add missing prototypes. |
| * oasys.c: Add missing prototypes. |
| * pdp11.c: Add missing prototypes. |
| * pe-mips.c: Add missing prototypes. |
| * riscix.c: Add missing prototypes. |
| |
| 2001-08-27 Daniel Jacobowitz <drow@mvista.com> |
| |
| * elf32-i386.c: Add missing prototypes. |
| * elf32-ppc.c: Likewise. |
| * elf32-sh-lin.c: Likewise. |
| * elfarm-nabi.c: Likewise. |
| |
| 2001-08-27 Daniel Jacobowitz <drow@mvista.com> |
| |
| * elf32-i386.c (elf_i386_grok_prstatus): New function. |
| (elf_i386_grok_psinfo): New function. |
| (elf_backend_grok_prstatus): Define. |
| (elf_backend_grok_psinfo): Likewise. |
| * elf32-ppc.c (ppc_elf_grok_prstatus): New function. |
| (ppc_elf_grok_psinfo): New function. |
| (elf_backend_grok_prstatus): Define. |
| (elf_backend_grok_psinfo): Likewise. |
| * elf32-sh-lin.c (elf32_shlin_grok_prstatus): New function. |
| (elf32_shlin_grok_psinfo): New function. |
| (elf_backend_grok_prstatus): Define. |
| (elf_backend_grok_psinfo): Likewise. |
| * elfarm-nabi.c (elf32_arm_nabi_grok_prstatus): New function. |
| (elf32_arm_nabi_grok_psinfo): New function. |
| (elf_backend_grok_prstatus): Define. |
| (elf_backend_grok_psinfo): Likewise. |
| |
| 2001-08-27 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (mips_elf_create_dynamic_relocation): Add more |
| sanity check. |
| (mips_elf_calculate_relocation): Create dynamic relocation for |
| symbols with weak definition or the ELF_LINK_HASH_DEF_REGULAR |
| bit is not set. |
| |
| 2001-08-27 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (_bfd_mips_elf_hide_symbol): Add prototype. |
| (_bfd_mips_elf_copy_indirect_symbol): Likewise. |
| (_bfd_elf32_mips_grok_prstatus): Likewise. |
| (_bfd_elf32_mips_grok_psinfo): Likewise. |
| (_bfd_mips_elf_hide_symbol): Make it static and cast to |
| `struct mips_elf_link_hash_entry *'. |
| (_bfd_mips_elf_copy_indirect_symbol): Make it static. |
| |
| 2001-08-27 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * mipsbsd.c: Add missing prototypes. |
| * hp300hpux.c: Add missing prototypes. |
| * i386aout.c: Add missing prototypes. |
| * i386lynx.c: Add missing prototypes. |
| * i386mach3.c: Add missing prototypes. |
| * i386msdos.c: Add missing prototypes. |
| * i386os9k.c: Add missing prototypes. |
| |
| 2001-08-27 Linus Nordberg <linus@swox.se> |
| Torbjorn Granlund <tege@swox.com> |
| Staffan Ulfberg <staffanu@swox.se> |
| Alan Modra <amodra@bigpond.net.au> |
| |
| * config.bfd: Add powerpc64 target. Add powerpc64 vectors to |
| targ64_selvecs for 32 bit powerpc targets. |
| * Makefile.am (BFD64_BACKENDS): Add elf64-ppc.lo. |
| (BFD64_BACKENDS_CFILES): Add elf64-ppc.c. |
| Run "make dep-am". |
| * Makefile.in: Regenerate. |
| * configure.in: Add elf64_powerpc vecs. |
| * configure: Regenerate. |
| * cpu-powerpc.c: Default to bfd_mach_ppc_620 entry for 64 bit. |
| * elf.c (prep_headers): EM_PPC64 for 64 bit ppc elf target. |
| * targets.c: Add bfd_elf64_powerpc_vec and bfd_elf64_powerpcle_vec. |
| * elf64-ppc.c: New file. |
| * reloc.c: Add powerpc64 relocs. |
| * libbfd.h: Regenerate. |
| * bfd-in2.h: Regenerate. |
| |
| 2001-08-27 Andreas Schwab <schwab@suse.de> |
| |
| * elf32-m68k.c (elf32_m68k_check_relocs): Set DF_TEXTREL if the |
| reloc is against read-only section. |
| (elf32_m68k_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| (elf32_m68k_reloc_type_class): New function. |
| (elf_backend_reloc_type_class): Define. |
| |
| 2001-08-27 Andreas Jaeger <aj@suse.de> |
| |
| * elf64-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the |
| reloc is against read-only section. |
| (elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| (elf_s390_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| |
| * elf32-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the |
| reloc is against read-only section. |
| (elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| (elf_s390_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| |
| * elf32-ppc.c (ppc_elf_check_relocs): Set DF_TEXTREL if the reloc |
| is against read-only section. |
| (ppc_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| (ppc_elf_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| |
| 2001-08-26 Andreas Jaeger <aj@suse.de> |
| |
| * elf32-cris.c (cris_elf_check_relocs): Set DF_TEXTREL if the |
| reloc is against read-only section. |
| (elf_cris_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| (elf_cris_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| |
| * elf32-sh.c (sh_elf_check_relocs): Set DF_TEXTREL if the reloc is |
| against read-only section. |
| (elf_backend_reloc_type_class): Define. |
| (sh_elf_reloc_type_class): New. |
| (sh_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| |
| * elf32-arm.h (elf32_arm_check_relocs): Set DF_TEXTREL if the |
| reloc is against read-only section. |
| (elf32_arm_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| (elf32_arm_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| |
| 2001-08-25 Andreas Jaeger <aj@suse.de> |
| |
| * oasys.c: Add missing prototypes. |
| |
| * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Add unused |
| attribute for parameter. |
| * elf.c (_bfd_elf_reloc_type_class): Likewise. |
| |
| * versados.c (get_4): Make static. |
| (get_10): Make static. |
| Add missing prototypes. |
| (process_esd): Fix call to versados_new_symbol. |
| |
| 2001-08-25 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * coff-a29k.c: Add missing prototypes. |
| * coff-apollo.c: Add missing prototypes. |
| * coff-arm.c: Add missing prototypes. |
| * coff-i860.c: Add missing prototypes. |
| * coff-rs6000.c: Add missing prototypes. |
| * coff-tic80.c: Add missing prototypes. |
| * elf-m10200.c: Add missing prototypes. |
| * elf-m10300.c: Add missing prototypes. |
| * elf32-arm.h: Add missing prototypes. |
| * elf32-d10v.c: Add missing prototypes. |
| * elf32-m32r.c: Add missing prototypes. |
| * elf32-mcore.c: Add missing prototypes. |
| * elf32-openrisc.c: Add missing prototypes. |
| * elf32-sh.c: Add missing prototypes. |
| * elf32-sparc.c: Add missing prototypes. |
| * elf32-v850.c: Add missing prototypes. |
| * elfarm-nabi.c: Add missing prototypes. |
| * elfarm-oabi.c: Add missing prototypes. |
| |
| 2001-08-25 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * elf32-mips.c (elf_mips_abi_name): Return the right ABI string for |
| E_MIPS_ABI_O64 and E_MIPS_ABI_EABI64 |
| |
| 2001-08-24 H.J. Lu <hjl@gnu.org> |
| |
| * elf.c (_bfd_elf_merge_sections): Fail if not using an ELF |
| hash structure. |
| |
| 2001-08-24 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elf-bfd.h (elf_hash_table): Revert definition. |
| (is_elf_hash_table): New macro. |
| * elflink.h (elf_link_add_object_symbols): Test |
| is_elf_hash_table before accessing ELF only fields in hash |
| structure. |
| (elf_link_create_dynamic_sections): Fail if not using an ELF |
| hash structure. |
| (elf_add_dynamic_entry): Fail if not using an ELF hash |
| structure. |
| (elf_link_record_local_dynamic_symbol): Fail if not using an |
| ELF hash structure. |
| (size_dynamic_sections): Fail if not using an ELF hash |
| structure. |
| (elf_adjust_dynamic_symbol): Fail if not using an ELF |
| hash structure. |
| (elf_bfd_final_link): Fail if not using an ELF hash |
| structure. |
| |
| 2001-08-24 H.J. Lu <hjl@gnu.org> |
| |
| * elf-bfd.h (elf_hash_table): Return NULL if the linker hash |
| table is not an ELF linker hash table. |
| |
| * elf.c (_bfd_elf_link_hash_table_init): Set the linker hash |
| table type to bfd_link_elf_hash_table. |
| |
| * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_create): Revert |
| the last change. |
| |
| * linker.c (_bfd_link_hash_table_init): Set the linker hash |
| table type to bfd_link_generic_hash_table. |
| |
| 2001-08-24 Alexandre Oliva <aoliva@redhat.com> |
| |
| * bfd.c (bfd_alt_mach_code): New function. |
| * bfd-in2.h: Rebuilt. |
| |
| 2001-08-24 Alexandre Oliva <aoliva@redhat.com> |
| |
| * elf-m10300.c (mn10300_elf_relocate_section): Test the right |
| `type' field in the hash entry when deciding whether to follow a |
| link. |
| |
| 2001-08-24 Jakub Jelinek <jakub@redhat.com> |
| |
| * elflink.h (elf_link_sort_cmp1): Sort RELATIVE relocs first, not |
| last. |
| (elf_link_sort_relocs): Adjust accordingly. |
| |
| * elf64-alpha.c (struct alpha_elf_link_hash_entry): Add reltext flag. |
| (elf64_alpha_check_relocs): Set it if section this reloc is against |
| is read-only. Set DF_TEXTREL if a RELATIVE reloc is needed against |
| read-only section. |
| (elf64_alpha_calc_dynrel_sizes): Set DF_TEXTREL flag if relocation |
| is is against read-only section. |
| (elf64_alpha_size_dynamic_sections): Use DF_TEXTREL flag, don't |
| check section names. |
| (elf64_alpha_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| |
| 2001-08-24 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * linker.c (_bfd_generic_link_add_archive_symbols): Replace alloca() |
| by bfd_malloc(). |
| |
| 2001-08-23 Andreas Jaeger <aj@suse.de> |
| |
| * elf64-x86-64.c (elf64_x86_64_check_relocs): Set DF_TEXTREL if |
| the reloc is against read-only section. |
| (elf64_x86_64_size_dynamic_sections): Use DF_TEXTREL flag instead |
| of looking up section names for DT_TEXTREL. |
| (elf64_x86_64_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| |
| 2001-08-23 H.J. Lu <hjl@gnu.org> |
| |
| * syms.c (bfd_print_symbol_vandf): Add abfd to arg. |
| * bfd-in2.h (bfd_print_symbol_vandf): Regenerated. |
| |
| * aoutx.h (NAME(aout,print_symbol)): Pass abfd to |
| bfd_print_symbol_vandf. |
| * coffgen.c (coff_print_symbol): Likewise. |
| * elf.c (bfd_elf_print_symbol): Likewise. |
| * ieee.c (ieee_print_symbol): Likewise. |
| * nlmcode.h (nlm_print_symbol): Likewise. |
| * oasys.c (oasys_print_symbol): Likewise. |
| * pdp11.c (NAME(aout,print_symbol)): Likewise. |
| * som.c (som_print_symbol): Likewise. |
| * srec.c (srec_print_symbol): Likewise. |
| * tekhex.c (tekhex_print_symbol): Likewise. |
| * versados.c (versados_print_symbol): Likewise. |
| * vms.c (vms_print_symbol): Likewise. |
| |
| * elf.c (_bfd_elf_print_private_bfd_data): Replace fprintf_vma |
| with bfd_fprintf_vma. |
| (bfd_elf_print_symbol): Likewise. |
| * syms.c (bfd_print_symbol_vandf): Likewise. |
| |
| 2001-08-23 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * aoutf1.h (sunos_write_object_contents): Silence compile time |
| warning. |
| * libaout.h (N_SET_DYNAMIC): Silence compile time warning. |
| |
| * bout.c: Add missing function prototypes. Fix formatting. |
| * coff-z8k.c: Add missing function prototypes. Fix formatting. |
| * coff-w65.c: Add missing function prototypes. Fix formatting. |
| * coff-h8500.c: Add missing function prototypes. Fix formatting. |
| * coff-h8300.c: Add missing function prototypes. Fix formatting. |
| * coff-tic54x.c: Add missing function prototypes. Fix formatting. |
| * coff-tic30.c: Add missing function prototypes. Fix formatting. |
| * coff-m68k.c: Add missing function prototypes. Fix formatting. |
| * coff-rs6000.c: Add missing function prototypes. Fix formatting. |
| * coff-sh.c: Add missing function prototypes. Fix formatting. |
| |
| 2001-08-23 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf-bfd.h (enum elf_reloc_type_class): New. |
| (struct elf_backend_data): Add elf_backend_reloc_type_class. |
| (_bfd_elf_reloc_type_class): New. |
| * elfxx-target.h (elf_backend_reloc_type_class): Define. |
| (elfNN_bed): Add elf_backend_reloc_type_class. |
| * elf.c (_bfd_elf_reloc_type_class): New. |
| * elf32-i386.c (elf_i386_check_relocs): Set DF_TEXTREL if the reloc |
| is against read-only section. |
| (elf_i386_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| (elf_i386_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| * elf32-sparc.c (elf32_sparc_check_relocs): Set DF_TEXTREL if the |
| reloc is against read-only section. |
| (elf32_sparc_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| (elf32_sparc_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| * elf64-sparc.c (sparc64_elf_check_relocs): Set DF_TEXTREL if the |
| reloc is against read-only section. |
| (sparc64_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of |
| looking up section names for DT_TEXTREL. |
| (sparc64_elf_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add reltext field. |
| (elfNN_ia64_hash_table_create): Clear ia64_info. |
| (get_reloc_section): Set DF_TEXTREL if the reloc is against read-only |
| section. |
| (elfNN_ia64_size_dynamic_sections): Use ia64_info->reltext flag |
| instead of looking up section names for DT_TEXTREL. |
| (elfNN_ia64_reloc_type_class): New. |
| (elf_backend_reloc_type_class): Define. |
| * elflink.h (size_dynamic_sections): Add spare DT_NULL tags. |
| (struct elf_link_sort_rela): New. |
| (elf_link_sort_cmp1, elf_link_sort_cmp2, elf_link_sort_relocs): New. |
| (elf_bfd_final_link): Call elf_link_sort_relocs. |
| Convert one spare DT_NULL into DT_RELCOUNT resp. DT_RELACOUNT if |
| necessary. |
| |
| 2001-08-23 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * configure.in (x86-bsdi): No corefile support. |
| * configure: Regenerate. |
| |
| 2001-08-22 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add missing |
| comma. |
| |
| 2001-08-21 Mark Elbrecht <snowball3@bigfoot.com> |
| |
| * coff-go32.c: Make DWARF2 sections use an alignment of 0. Set |
| the alignment of dwarf2 linkonce sections to 0. |
| * coff-sto32.c: Likewise. |
| |
| 2001-08-20 Andreas Jaeger <aj@suse.de> |
| |
| * coff-sparc.c: Add missing prototypes. |
| * elf32-s390.c: Likewise. |
| * elf32-i960.c: Likewise. |
| * aout-target.h: Likewise. |
| |
| 2001-08-20 H.J. Lu <hjl@gnu.org> |
| |
| * elf-bfd.h (elf_obj_tdata): Add num_section_syms. |
| (elf_num_section_syms): New for num_section_syms. |
| |
| * elf.c (elf_map_symbols): Set num_section_syms. |
| (_bfd_elf_symbol_from_bfd_symbol): Check num_section_syms for |
| the section symbol index. |
| |
| 2001-08-20 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_create): Never |
| select the generic has table creator. All elf backends need elf |
| specific fields in the hash table. |
| |
| 2001-08-20 Alan Modra <amodra@bigpond.net.au> |
| |
| * archive.c (offsetof): Remove define. |
| * elf.c: Likewise. |
| * oasys.c: Likewise |
| * sysdep.h (offsetof): Define. |
| |
| 2001-08-17 Alan Modra <amodra@bigpond.net.au> |
| |
| * bfd.c (bfd_get_gp_size): Return an unsigned int. |
| (bfd_set_gp_size): Make param unsigned. |
| * bfd-in2.h: Regenerate. |
| * elf32-ppc.c (ppc_elf_add_symbol_hook): Use elf_gp_size rather |
| than calling bfd_get_gp_size. |
| * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise. |
| * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Likewise. |
| |
| 2001-08-17 Alan Modra <amodra@bigpond.net.au> |
| |
| * linker.c (default_fill_link_order): Handle four byte fill value. |
| |
| 2001-08-17 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf64-sparc.c (sparc64_elf_output_arch_syms): Add missing |
| prototype. |
| * nlm32-alpha.c (nlm_alpha_write_external): Fix warning. |
| |
| * elf64-mips.c (UNUSED_RELOC): Define. |
| (mips_elf64_howto_table_rel): Use it. |
| (mips_elf64_howto_table_rela): Here too. |
| (mips_elf64_write_relocs): Fix signed/unsigned warning. |
| |
| * coffcode.h (coff_write_object_contents): Add ATTRIBUTE_UNUSED to |
| silence warning. |
| * coffgen.c (coff_print_symbol): Fix warnings. |
| (coff_find_nearest_line): Likewise. |
| * cofflink.c (_bfd_coff_link_input_bfd): Likewise. |
| * coff-alpha.c (alpha_convert_external_reloc): Likewise. |
| * format.c (bfd_check_format_matches): Likewise. |
| (bfd_set_format): Likewise. |
| * coff-ia64.c: Add missing prototypes. |
| * elf64-alpha.c (struct alpha_elf_link_hash_entry): Make addend |
| signed to silence warnings. |
| (elf64_alpha_relocate_section): Likewise. |
| (elf64_alpha_find_reloc_at_ofs): Fix warnings. |
| (elf64_alpha_add_symbol_hook): Likewise. |
| (elf64_alpha_final_link): Likewise. |
| (elf64_alpha_relax_section): Remove redundant assign to info.gotent. |
| (elf64_alpha_merge_gots): Add ATTRIBUTE_UNUSED to unused args. |
| (elf64_alpha_size_got_sections): Likewise. |
| * elfxx-ia64.c: Add missing prototypes. |
| (elfNN_ia64_relocate_section): Fix warning. |
| (elfNN_ia64_unwind_entry_compare): Make params const. |
| |
| 2001-08-17 Alan Modra <amodra@bigpond.net.au> |
| |
| * config.bfd (targ64_selvecs): New. |
| <powerpc-*-aix* entry>: Use it here instead of ineffectual #ifdef. |
| |
| * bfd-in.h (BFD_VERSION): Remove wrong comment. |
| (BFD_DEFAULT_TARGET_SIZE): New. |
| (BFD_ARCH_SIZE): Comment. |
| * configure.in (target_size): New. Set instead of target64 in |
| selvecs case statement. Set target64 from it. |
| (bfd_default_target_size): New. Set from taget_size. AC_SUBST. |
| * bfd-in2.h: Regenerate. |
| * configure: Regenerate. |
| |
| 2001-08-17 Alan Modra <amodra@bigpond.net.au> |
| |
| * bfd.c (enum bfd_error): Add bfd_error_wrong_object_format. |
| (bfd_errmsgs): Add corresponding message. |
| * archive.c (bfd_generic_archive_p): Don't release bfd_ardata when |
| finding an archive that contains different format object files. |
| Return bfd_error_wrong_object_format for this case. |
| * format.c: Formatting fixes. s/CONST/const/. |
| (bfd_check_format_matches): Accept archives that give |
| bfd_error_wrong_object_format if no full match is found. Tidy |
| code handling matching_vector. Don't return a pointer to freed |
| memory in `matching'. Handle ambiguous matches as for partial |
| archive matches. |
| * bfd-in2.h: Regenerate. |
| |
| 2001-08-15 Alan Modra <amodra@bigpond.net.au> |
| |
| * libieee.h (common_header_type): Add last_byte field. |
| |
| * ieee.c: Add missing prototypes. Some format fixes. |
| (struct output_buffer_struct): Move for availability to prototypes. |
| (ieee_part_after): New function. |
| (ieee_slurp_debug): Use it here. |
| (ieee_seek): Pass in ieee_data_struct rather than bfd. Use |
| ieee_part_after to set last_byte to one past end of current part. |
| Update callers. |
| (ieee_pos): Pass in ieee_data_struct rather than bfd. |
| Update callers. |
| (parse_expression): Don't go beyond the end of the current part. |
| (ieee_slurp_external_symbols): Correct type passed to read_2bytes. |
| (ieee_get_symtab_upper_bound, ieee_get_symtab, |
| ieee_get_symbol_info, ieee_print_symbol, ieee_new_section_hook, |
| ieee_get_reloc_upper_bound, ieee_canonicalize_reloc, block, |
| ieee_set_section_contents, ieee_write_object_contents, |
| ieee_make_empty_symbol): Make static. |
| (ieee_archive_p): Correct comments regarding bfd_read. |
| (ieee_object_p): Similarly. |
| (ieee_mkobject): Move it. Clear output_ptr_start, output_ptr, |
| output_ptr_end, input_ptr_start, input_ptr, input_ptr_end, |
| input_bfd, output_bfd, output_buffer. |
| (do_as_repeat): Write out ieee_set_current_pc_enum value as for |
| do_with_relocs, ie. as a symbol for relocatable files. |
| (ieee_vec): Add comments showing functions referenced by macros. |
| |
| 2001-08-14 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * aout-tic30.c: Add missing prototypes. Fix formatting. |
| * aout-ns32k.c: Add missing prototypes. Fix formatting. |
| * peXXigen.c: Add missining prototypes. Fix formatting. |
| * aout-adobe.c: Add missining prototypes. Fix formatting. |
| |
| 2001-08-13 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elf32-v850.c: Add missing function prototypes. |
| Fix some formatting. |
| |
| * cpu-v850.c: Add missing function prototype. |
| Fix some formatting. |
| |
| 2001-08-11 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elf-bfd.h (struct elf_backend_data): Add new fields |
| 'elf_backend_sprintf_vma' and 'elf_backend_fprintf_vma'. |
| (bfd_elf_sprintf_vma): Rename function prototype to |
| '_bfd_elf_sprintf_vma'. |
| (bfd_elf_fprintf_vma): Rename function prototype to |
| '_bfd_elf_fprintf_vma'. |
| * bfd.c (bfd_sprintf_vma): Do not invoke bfd_elf_sprintf_vma |
| directly, instead indirect via the elf_backend_data structure. |
| (bfd_fprintf_vma): Do not invoke bfd_elf_fprintf_vma directly, |
| instead indirect via the elf_backend_data structure. |
| * elf.c (bfd_elf_sprintf_vma): Rename to _bfd_elf_sprintf_vma. |
| (bfd_elf_fprintf_vma): Rename to _bfd_elf_fprintf_vma. |
| * elfxx-target.h (elf_backend_sprintf_vma): Initialise if not |
| already defined. |
| (elf_backend_fprintf_vma): Initialise if not already defined. |
| (struct elf_backend_data): Initialise the |
| elf_backend_sprintf_vma and elf_backend_fprintf_vma fields. |
| |
| 2001-08-10 Andreas Jaeger <aj@suse.de> |
| |
| * elf64-sparc.c: Add missing prototypes. |
| * elf32-cris.c: Likewise. |
| * elf32-i370.c: Likewise. |
| * elf64-hppa.c: Likewise. |
| * elf64-s390.c: Likewise. |
| |
| 2001-08-10 Andreas Jaeger <aj@suse.de> |
| |
| * elf64-x86-64.c (elf64_x86_64_elf_object_p): Make static. |
| Add prototypes where needed. |
| |
| 2001-08-10 H.J. Lu <hjl@gnu.org> |
| |
| * bfd.c (bfd_sprintf_vma): Fix a typo in the last change. |
| (bfd_fprintf_vma): Likewise. |
| |
| 2001-08-10 H.J. Lu <hjl@gnu.org> |
| |
| * bfd.c (bfd_sprintf_vma): Don't return void. |
| (bfd_fprintf_vma): Likewise. |
| |
| 2001-08-10 Andreas Jaeger <aj@suse.de> |
| |
| * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes |
| to build warnings. |
| * configure: Regenerate. |
| |
| 2001-08-10 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf.c (bfd_elf_sprintf_vma): Add ATTRIBUTE_UNUSED to quiet |
| warning if not BFD64. Add braces so emacs auto format works. |
| (bfd_elf_fprintf_vma): Likewise. |
| |
| * libxcoff.h (struct xcoff_backend_data_rec): Constify src param |
| of _xcoff_swap_ld*. |
| * coff-rs6000.c (xcoff_swap_ldhdr_in): Modify type of external |
| param to agree with libxcoff.h. |
| (xcoff_swap_ldhdr_out): Likewise. |
| (xcoff_swap_ldsym_in): Likewise. |
| (xcoff_swap_ldsym_out): Likewise. |
| (xcoff_swap_ldrel_in): Likewise. |
| (xcoff_swap_ldrel_out): Likewise. |
| (xcoff_create_csect_from_smclas): Likewise. |
| * coff64-rs6000.c: Add missing prototypes. |
| (xcoff64_swap_ldhdr_in): Modify type of external param to agree |
| with libxcoff.h. |
| (xcoff64_swap_ldhdr_out): Likewise. |
| (xcoff64_swap_ldsym_in): Likewise. |
| (xcoff64_swap_ldsym_out): Likewise. |
| (xcoff64_swap_ldrel_in): Likewise. |
| (xcoff64_swap_ldrel_out): Likewise. |
| (xcoff64_ppc_relocate_section): Make static. |
| (xcoff64_slurp_armap): Likewise. |
| (xcoff64_archive_p): Likewise. |
| (xcoff64_openr_next_archived_file): Likewise. |
| (xcoff64_sizeof_headers): Likewise. |
| (xcoff64_is_lineno_count_overflow): Likewise. |
| (xcoff64_is_reloc_count_overflow): Likewise. |
| (xcoff64_loader_symbol_offset): Likewise. |
| (xcoff64_loader_reloc_offset): Likewise. |
| * elf64-gen.c: Add missing prototypes. |
| |
| 2001-08-09 H.J. Lu <hjl@gnu.org> |
| |
| * elf.c (bfd_elf_sprintf_vma): Check ELFCLASS64 only in BFD64. |
| (bfd_elf_fprintf_vma): Likewise. |
| |
| 2001-08-09 H.J. Lu <hjl@gnu.org> |
| |
| * bfd-in.h (bfd_elf_sprintf_vma, bfd_elf_fprintf_vma): Moved |
| to ... |
| * elf-bfd.h: Here. |
| * bfd-in2.h: Regenerated. |
| |
| 2001-08-09 H.J. Lu <hjl@gnu.org> |
| |
| * bfd-in.h (bfd_sprintf_vma): New prototype. |
| (bfd_fprintf_vma): Likewise. |
| (bfd_elf_sprintf_vma): Likewise. |
| (bfd_elf_fprintf_vma): Likewise. |
| (bfd_printf_vma): New. Defined with bfd_fprintf_vma. |
| * bfd-in2.h: Regenerated. |
| |
| * bfd.c (bfd_sprintf_vma): New. Defined. |
| (bfd_fprintf_vma): Likewise. |
| |
| * elf.c (bfd_elf_sprintf_vma): New. Defined. |
| (bfd_elf_fprintf_vma): Likewise. |
| |
| 2001-08-09 Alan Modra <amodra@bigpond.net.au> |
| |
| * coff-rs6000.c: Add missing prototypes. |
| (xcoff_ppc_relocate_section, xcoff_is_lineno_count_overflow, |
| xcoff_is_reloc_count_overflow, xcoff_loader_symbol_offset, |
| xcoff_loader_reloc_offset): Make static. |
| * dwarf1.c: Add missing prototypes. |
| * dwarf2.c: Add missing prototypes. |
| (struct abbrev_info): Move definition. |
| (struct attr_abbrev, ABBREV_HASH_SIZE, ATTR_ALLOC_CHUNK): Likewise. |
| * elf.c: Add missing prototypes. |
| * elf32-gen.c: Likewise. |
| * elf32-i386.c: Likewise. |
| * elf32-ppc.c: Likewise. |
| (ppc_elf_sort_rela): Use PTR instead of "void *". |
| * elflink.h: Add missing prototypes. Formatting fixes. |
| * merge.c: Add missing prototypes. |
| (last4_eq): Use PTR instead of "void *". |
| (last_eq): Likewise. |
| * syms.c: Add missing prototypes. |
| |
| 2001-08-09 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * bfd.c: Fix formatting. |
| * bfd-in2.h: Regenerate. |
| |
| 2001-08-09 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * elf32-arc.c (R_ARC_B22_PCREL): Change 'partial_inplace' to |
| true (this target uses REL relocations) and 'pcrel_offset' to |
| false (the PC is implied, not stored in the offset). |
| |
| 2001-08-08 Alan Modra <amodra@bigpond.net.au> |
| |
| 1999-10-19 Linus Nordberg <linus@swox.se> |
| * elf-bfd.h (struct elf_backend_data): Add want_got_sym. |
| * elfxx-target.h (elf_backend_want_got_sym): Define. |
| (elfNN_bed): Add elf_backend_want_got_sym. |
| * elflink.c (_bfd_elf_create_got_section): Define |
| _GLOBAL_OFFSET_TABLE_ only if bed->want_got_sym. |
| |
| 2001-08-08 Alexandre Oliva <aoliva@redhat.com> |
| |
| * dwarf2.c (struct dwarf2_debug): Add sec, sec_info_ptr and syms. |
| (find_rela_addend): New function. |
| (parse_comp_unit): Call it to find the abbrev offset addend. |
| (_bfd_dwarf2_find_nearest_line): Initialize and maintain the new |
| members of dwarf2_debug as debugging information is read. |
| |
| 2001-08-07 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * coff-sh.c (sh_coff_reloc_type_lookup): Provide for sh-coff |
| targets as well as sh-pe. |
| |
| 2001-08-03 Ben Harris <bjh21@netbsd.org> |
| |
| * elf32-arm.h (elf32_arm_final_link_relocate): Include offset of |
| reloc from start of section when computing value for R_ARM_REL32 |
| reloc. |
| |
| 2001-08-03 Alan Modra <amodra@bigpond.net.au> |
| |
| From H.J. Lu <hjl@gnu.org> |
| * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Don't |
| keep relocs for undefined syms if there are no dynamic sections in |
| executable. |
| * elf32-hppa.c (allocate_plt_and_got_and_discard_relocs): Likewise. |
| |
| 2001-08-02 Paul Sokolovsky <paul.sokolovsky@technologist.com> |
| |
| * cofflink.c (coff_link_check_ar_symbols): also search for |
| __imp__symbol as well as _symbol. |
| * linker.c (_bfd_generic_link_add_archive_symbols): also |
| search for __imp__symbol as well as _symbol. |
| |
| 2001-08-01 Adam Nemet <anemet@lnxw.com> |
| |
| * elf.c (elf_sort_sections): Return zero only as the last step. |
| |
| 2001-08-01 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * config.bfd (arm-vxworks): Change name of define from VXWORKS to |
| ARM_COFF_BUGFIX. |
| (arm-epoc-pe): Define ARM_COFF_BUGFIX. |
| coff-arm.c (coff_arm_relocate_section): Replace VXWORKS with |
| ARM_COFF_BUGFIX. |
| |
| 2001-07-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
| |
| * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Changed return type |
| to match corresponding bfd_coff_backend data member. |
| |
| 2001-07-24 Alan Modra <amodra@bigpond.net.au> |
| |
| * Makefile.am: Update dependencies with "make dep-am". |
| * Makefile.in: Regenerate |
| |
| 2001-07-15 H.J. Lu <hjl@gnu.org> |
| |
| * Makefile.am (po/SRC-POTFILES.in): Use tmp.src instead of tmp. |
| (po/BLD-POTFILES.in): Use tmp.bld instead of tmp. |
| * Makefile.in: Regenerate. |
| |
| 2001-07-11 H.J. Lu <hjl@gnu.org> |
| |
| * elf64-alpha.c (elf64_alpha_check_relocs): Set the ALLOC|LOAD |
| flags when creating the reloc section if the ALLOC flag in the |
| source section is set. |
| |
| 2001-07-11 Steve Ellcey <sje@cup.hp.com> |
| |
| * reloc.c (bfd_reloc_code_type): Add IA64 relocs |
| BFD_RELOC_IA64_LTOFF_FPTR32MSB and BFD_RELOC_IA64_LTOFF_FPTR32LSB |
| * bfd-in2.h: Regenerate. |
| * libbfd.h: Regenerate. |
| * elfxx-ia64.c (ia64_howto_table): Define how to handle |
| new relocations. |
| (elfNN_ia64_reloc_type_lookup): Handle new relocations. |
| (elfNN_ia64_check_relocs): Likewise. |
| (elfNN_ia64_install_value): Likewise. |
| (elfNN_ia64_relocate_section): Likewise. |
| |
| 2001-07-11 Jakub Jelinek <jakub@redhat.com> |
| |
| * elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove support for |
| R_SPARC_UA64. |
| (elf32_sparc_check_relocs): Likewise. |
| Only create .rela section for alloced sections in shared libraries. |
| (elf32_sparc_relocate_section): Likewise. |
| Remove redundant check. |
| Optimize unaligned reloc usage. |
| * elf64-sparc.c (sparc64_elf_relocate_section): Remove redundant |
| check. |
| |
| 2001-07-11 H.J. Lu <hjl@gnu.org> |
| |
| * elf64-alpha.c (elf64_alpha_check_relocs): Only use the same |
| ALLOC|LOAD flags as the source section for debugging sections |
| when creating the reloc section. |
| |
| 2001-07-05 Jim Wilson <wilson@redhat.com> |
| |
| * linker.c (_bfd_generic_link_add_one_symbol, case BIG): Use |
| the section of the bigger symbol. |
| |
| * syms.c (bfd_is_local_label): Return false if BSF_SECTION_SYM. |
| |
| 2001-07-05 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * peicode.h (coff_swap_scnhdr_in): For sections containing |
| uninitialised data, only set their size to s_paddr if this does |
| not reset their size to zero. MS's latest compilers will set |
| s_paddr to zero. |
| |
| 2001-07-04 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (_bfd_mips_elf_final_write_processing): |
| Handle bfd_mach_mips4400, bfd_mach_mips4600 and |
| bfd_mach_mips5000. |
| |
| 2001-07-03 Mark Elbrecht <snowball3@softhome.net> |
| |
| * bfd.c (bfd_get_sign_extend_vma): Support DJGPP COFF targets. |
| |
| * cofflink.c (_bfd_coff_link_input_bfd): Skip section symbols from |
| sections being discarded. |
| |
| 2001-06-30 Alan Modra <amodra@bigpond.net.au> |
| |
| * elfcore.h (elf_core_file_p): Call bfd_section_from_phdr directly |
| instead of _bfd_elfcore_section_from_phdr. |
| * elf-bfd.h (_bfd_elfcore_section_from_phdr): Remove. |
| * elf.c (_bfd_elfcore_section_from_phdr): Remove. |
| (_bfd_elfcore_make_pseudosection): Expedite tail-call. |
| (elfcore_grok_prstatus): Likewise. |
| (elfcore_grok_lwpstatus): Likewise. |
| (bfd_get_elf_phdr_upper_bound): Likewise. |
| (elfcore_make_note_pseudosection): Formatting. |
| (_bfd_elfcore_strndup): Formatting. |
| * elf32-mips.c (mips_elf_sym_is_global): Formatting. |
| (_bfd_elf32_mips_grok_prstatus): Expedite tail-call. |
| |
| 2001-06-29 Daniel Jacobowitz <drow@mvista.com> |
| |
| * elf-bfd.h: Add prototypes for _bfd_elfcore_make_pseudosection |
| and _bfd_elfcore_strndup. |
| (struct elf_backend_data): Add elf_backend_grok_prstatus |
| and elf_backend_grok_psinfo. |
| * elf.c (_bfd_elfcore_make_pseudosection): New function. |
| (elfcore_grok_prstatus): Use it. |
| (elfcore_make_note_pseudosection): Likewise. |
| (elfcore_strndup): Rename to... |
| (_bfd_elfcore_strndup): Here, and make global. |
| (elfcore_grok_psinfo): Use _bfd_elfcore_strndup. |
| (elfcore_grok_note): Call elf_backend_grok_prstatus |
| and elf_backend_grok_psinfo if available. |
| * elf32-mips.c (_bfd_elf32_mips_grok_prstatus): New function. |
| (_bfd_elf32_mips_grok_psinfo): New function. |
| (elf_backend_grok_prstatus): Define. |
| (elf_backend_grok_psinfo): Define. |
| * elfxx-target.h (elf_backend_grok_prstatus): Default to NULL. |
| (elf_backend_grok_psinfo): Likewise. |
| (elfNN_bed): Include elf_backend_grok_prstatus and |
| elf_backend_grok_psinfo. |
| |
| 2001-06-29 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Check if |
| hplink->sgot is NULL before filling GOT. Check if hplink->splt |
| is NULL before filling PLT. |
| |
| 2001-06-29 Alan Modra <amodra@bigpond.net.au> |
| |
| * elflink.h (elf_link_output_extsym): Revert 1999-04-10. |
| |
| 2001-06-27 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-hppa.c (elf32_hppa_check_relocs): Don't make syms dynamic |
| here.. |
| (elf32_hppa_adjust_dynamic_symbol): ..nor here.. |
| (allocate_plt_and_got_and_discard_relocs): .. instead do so here |
| after gc has run. |
| |
| * elf32-hppa.c (RELATIVE_DYNAMIC_RELOCS): Delete. |
| (IS_ABSOLUTE_RELOC): Define. |
| (elf32_hppa_link_hash_entry): Always include reloc_entries field. |
| (hppa_link_hash_newfunc): Always init it. |
| (elf32_hppa_check_relocs): Mark symbols as ELF_LINK_NON_GOT_REF to |
| create COPY relocs only when the reloc is in a read-only section. |
| Instead, allocate space for a dynamic reloc to reference the |
| library symbol directly. Keep track of space we allocate using |
| relocs_entries. |
| (hppa_discard_copies): Delete, and move code to.. |
| (allocate_plt_and_got): ..here. Rename to |
| allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic |
| relocs for non-shared link. |
| (elf32_hppa_size_dynamic_sections): Update calls to above. |
| (elf32_hppa_relocate_section): Write out the dynamic relocs used |
| in lieu of COPY relocs. |
| |
| * elf32-i386.c (elf_i386_check_relocs): Don't make syms dynamic |
| here.. |
| (elf_i386_adjust_dynamic_symbol): ..nor here.. |
| (allocate_plt_and_got_and_discard_relocs): .. instead do so here |
| after gc has run. |
| (elf_i386_size_dynamic_sections): Fix a comment. |
| (elf_i386_relocate_section <R_386_32, R_386_PC32>): Rearrange code |
| involved in writing reloc out. |
| |
| 2001-06-25 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-i386.c (elf_i386_check_relocs <R_386_32, R_386_PC32>): |
| Ensure syms are dynamic if we might be emitting a reloc. |
| (allocate_plt_and_got_and_discard_relocs): Don't discard relocs |
| for undefweak or undefined syms.. |
| (elf_i386_relocate_section <R_386_32, R_386_PC32>): .. and emit. |
| |
| * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Discard |
| relocs without ELF_LINK_HASH_DEF_DYNAMIC set. |
| (elf_i386_relocate_section <R_386_32, R_386_PC32>): Remove |
| redundant bfd_link_hash_defined, bfd_link_hash_defweak test. |
| |
| 2001-06-24 H.J. Lu <hjl@gnu.org> |
| |
| * cpu-i960.c (scan_960_mach): Don't modify const char *. Use |
| strncasecmp/strcasecmp instead of strncmp/strcmp. |
| |
| 2001-06-23 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-i386.c (elf_i386_relocate_section <R_386_32, R_386_PC32>): |
| Check ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined |
| in the regular object file and treat the weak definition as |
| the normal one. |
| |
| 2001-06-23 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-i386.c (elf_i386_relocate_section <R_386_GOT32>): Tighten |
| unresolved_reloc test to exclude cases where we use "relocation" |
| before setting it to point into the .got. Reinstate fudge for |
| unresolved relocs in debugging sections. |
| |
| * elf32-i386.c (elf_i386_relocate_section): Replace ugly |
| complicated tests for unresolvable relocs with a simple direct |
| scheme using "unresolved_reloc" var. |
| |
| * elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Rename to |
| elf_i386_dyn_relocs. Update comment. |
| (struct elf_i386_link_hash_entry): Rename pcrel_relocs_copied to |
| dyn_relocs. |
| (elf_i386_adjust_dynamic_symbol): Remove a BFD_ASSERT, change |
| others to aborts. |
| (allocate_plt_and_got_and_discard_relocs): Replace BFD_ASSERT with |
| abort. |
| (elf_i386_size_dynamic_sections): Likewise. |
| (elf_i386_finish_dynamic_symbol): Likewise. |
| (elf_i386_finish_dynamic_sections): Likewise. |
| (elf_i386_relocate_section): Likewise. Tidy R_386_GOT32 and error |
| handling code. |
| |
| Avoid creating COPY relocs if possible. |
| * elf32-i386.c (elf_i386_check_relocs): Tweak condition under |
| which .got created. Mark symbols used by R_386_32 and R_386_PC32 |
| relocs as ELF_LINK_NON_GOT_REF to create COPY relocs only when the |
| reloc is in a read-only section. Instead, allocate space for a |
| dynamic reloc to reference the library symbol directly. Keep |
| track of space we allocate using pcrel_relocs_copied. |
| (discard_copies): Delete, and move code to .. |
| (allocate_plt_and_got): ..here. Rename to |
| allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic |
| relocs for non-shared link. |
| (elf_i386_size_dynamic_sections): Update calls to above functions. |
| (elf_i386_relocate_section): Write out the dynamic relocs. Add |
| more ugly logic to avoid "unresolvable relocation" error. Use |
| htab shortcut in place of elf_hash_table macro. |
| (elf_i386_finish_dynamic_sections): Allow that dynamic .got may |
| not always be created now. |
| |
| 2001-06-20 Bo Thorsen <bo@suse.co.uk> |
| |
| * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix linking of |
| shared libraries. |
| |
| 2001-06-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * configure.host (mips64-*-linux): Reformat. |
| |
| 2001-06-21 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Always |
| allocate local .got space. Use shortcuts from hash table for .got |
| and .plt rather than comparing section names. |
| (elf32_hppa_check_relocs): Use local_plt_refcounts var rather than |
| adjusting index into local_got_refcounts to document what we are |
| really doing. |
| (elf32_hppa_relocate_section): Similarly for local_plt_offsets. |
| Tidy .got and .plt error checking. |
| |
| 2001-06-20 Catherine Moore <clm@redhat.com> |
| |
| * elf-bfd.h (struct elf_backend_data): |
| elf_backend_emit_relocs: New field: Function for emitting |
| relocs. |
| elf_backend_count_relocs: New field: Function for determining |
| the number of relocs to be emitted. |
| * elfxx-target.h: Provide default (NULL) values for |
| elf_backend_emit_relocs and elf_backend_count_relocs. |
| * elflink.h (elf_link_size_reloc_section): Make the hash table |
| big enough to hold the relocs counted by either reloc_count or |
| o->reloc_count. |
| (elf_bfd_final_link) emit_relocs: New boolean, set if relocs |
| should be emitted, either because of a command line option |
| stored in the info structure or because the target provides a |
| special reloc emitting function. |
| If the target provides a reloc counting function use it, |
| unless performing a relocatable link or emitting all relocs. |
| Also set the SEC_RELOC flag on any output section which will |
| contain relocs. |
| (elf_link_input_bfd): emit_relocs: New boolean, set if relocs |
| should be emitted, either because of a command line option |
| stored in the info structure or because the target provides a |
| special reloc emitting function. |
| If the target provides a reloc emitting function, use it, |
| unless performing a relocatable link or emitting all relocs. |
| |
| 2001-06-20 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-i386.c (elf_i386_size_dynamic_sections): Always |
| allocate local .got space. |
| |
| 2001-06-19 Andreas Jaeger <aj@suse.de> |
| |
| * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix creation of |
| dynamic symbols. |
| |
| 2001-06-18 Hans-Peter Nilsson <hp@axis.com> |
| |
| * elflink.h (struct elf_assign_sym_version_info): Remove member |
| export_dynamic. All users changed to use info member. |
| NAME(bfd_elf,size_dynamic_sections)): Remove parameter |
| export_dynamic, instead use member in parameter info. |
| * bfd-in.h (bfd_elf32_size_dynamic_sections, |
| bfd_elf64_size_dynamic_sections): Update prototype. |
| * bfd-in2.h: Regenerate. |
| |
| 2001-06-18 H.J. Lu <hjl@gnu.org> |
| |
| * elflink.h (elf_info_failed): Add a new field, verdefs. |
| (NAME(bfd_elf,size_dynamic_sections): Pass verdefs to |
| elf_export_symbol. |
| (elf_export_symbol): Check eif->verdefs to decide if a symbol |
| should be exported. |
| |
| 2001-06-17 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (mips_elf_link_hash_entry): Add a new field, |
| readonly_reloc, to record if a relocation in the .rel.dyn |
| section is against a read-only section. |
| (mips_elf_link_hash_newfunc): Initialize the readonly_reloc |
| field to false. |
| (_bfd_mips_elf_check_relocs): Record if there is a relocation |
| in the .rel.dyn section against a read-only section by setting |
| DF_TEXTREL or readonly_reloc. |
| (_bfd_mips_elf_copy_indirect_symbol): Copy readonly_reloc if |
| it is true. |
| (_bfd_mips_elf_adjust_dynamic_symbol): Record DF_TEXTREL if |
| there is a relocation in the .rel.dyn section against a |
| read-only section. |
| (_bfd_mips_elf_size_dynamic_sections): Set DT_TEXTREL if |
| DF_TEXTREL is set. |
| |
| 2001-06-12 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * coffcode.h (styp_flags_to_sec_flags): Change to a boolean |
| function. Move flagword result into parameter list. Remove |
| comment about setting bfd_error_handler to intercept failure |
| results. |
| * coffgen.c (make_a_section_from_file): Examine result of |
| calling bfd_coff_styp_to_sec_flags and pass a failure back to |
| caller. |
| * ecoff.h (styp_flags_to_sec_flags): Change to a boolean |
| function. Move flagword result into parameter list. |
| * libcoff.h: Regenerate. |
| * libecoff.h: Regenerate. |
| |
| 2001-06-13 Nick Clifton <nickc@cambridge.redhat.com> |
| |
| * aoutx.h (adjust_z_magic): Only pad the tesxt section if the data |
| section is going to follow it. |
| |
| 2001-06-12 Catherine Moore <clm@redhat.com> |
| |
| * elflink.h (elf_gc_propagate_vtable_entries): Replace FILE_ALIGN |
| with the file_align entry from elf_backend_data. |
| (elf_gc_smash_unused_vtentry_relocs): Likewise. |
| (elf_gc_record_vtentry): Likewise. |
| |
| 2001-06-10 Alan Modra <amodra@bigpond.net.au> |
| |
| * elflink.h: Whitespace changes. |
| (elf_link_read_relocs_from_section): Use "unsigned int" iterator |
| rather than "unsigned char". |
| (elf_link_output_relocs): Likewise. |
| (elf_link_input_bfd): Likewise. |
| (elf_reloc_link_order): LIkewise. |
| * elf.c: s/CONST/const/. Whitespace changes. |
| * elf32-mips.c: Formatting fix. |
| |
| * Makefile.am (SOURCE_HFILES): Include xcoff-target.h, remove xcoff.h. |
| * Makefile.in: Regenerate. |
| * po/Make-in: Remove trailing tab. |
| |
| 2001-06-09 Philip Blundell <philb@gnu.org> |
| |
| * elf32-arm.h (elf32_arm_plt0_entry): Correct error in last |
| change. |
| (elf32_arm_plt_entry): Likewise. |
| |
| 2001-06-08 H.J. Lu <hjl@gnu.org> |
| |
| * elf.c (swap_out_syms): Keep names for global section symbols. |
| |
| 2001-06-07 H.J. Lu <hjl@gnu.org> |
| |
| * config.bfd: Put back ecoff for Linux/mips. Firmwares on some |
| MIPS-based machines need it. |
| |
| 2001-06-07 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-mips.c (_bfd_mips_elf_object_p): Set the bad symtab |
| for SGI only. |
| |
| * config.bfd: Remove ecoff from Linux/mips. |
| |
| 2001-06-07 Andreas Jaeger <aj@suse.de> |
| |
| * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Add an |
| assertion. |
| (elf64_x86_64_check_relocs): Fix VTENTRY relocation; set an |
| alignment of 8 for .rela sections; handle further relocations. |
| |
| 2001-06-06 Christian Groessler <cpg@aladdin.de> |
| |
| * coff-z8k.c: Fix formatting. |
| Fix howtos: howto->size was always 1. |
| |
| 2001-06-05 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * configure.host (mips64*-*-linux*): Define. |
| |
| 2001-06-05 Alan Modra <amodra@bigpond.net.au> |
| |
| * elf32-i386.c (elf_i386_discard_copies): Rename to |
| discard_copies, and use elf_link_hash_entry arg rather than |
| elf_i386_link_hash_entry. |
| (elf_i386_link_hash_traverse): Delete. |
| (elf_i386_size_dynamic_sections): Adjust call to discard_copies. |
| Tidy sizing of dynamic sections. |
| (elf_i386_check_relocs <R_386_32, R_386_PC32>): Reference count |
| possible .plt entries. |
| (elf_i386_gc_sweep_hook): Likewise. |
| (elf_i386_adjust_dynamic_symbol): Discard .plt entries for |
| everything with plt.refcount <= 0. |
| |
| * elf32-i386.c (elf_i386_check_relocs): Don't allocate .got and |
| .relgot space here. |
| (elf_i386_gc_sweep_hook): ..and no need to deallocate here.. |
| (elf_i386_adjust_dynamic_symbol): ..and don't allocate .plt and |
| .rel.plt here.. |
| (allocate_plt_and_got): ..instead do it all here. New function. |
| (elf_i386_size_dynamic_sections): Allocate local .got space and |
| call allocate_plt_and_got. No need to zap .relgot if not dynamic. |
| (bfd_elf32_bfd_final_link): Delete. (ie. use regular final link |
| rather than gc variety). |
| (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. |
| (elf_i386_relocate_section): Use it here and correct handling of |
| R_386_GOT32. Provide section and offset for "unresolvable |
| relocation" error message. |
| (elf_i386_finish_dynamic_symbol): Correct handling of R_386_GOT32. |
| |
| * elf32-i386.c (struct elf_i386_link_hash_table): Add sgot, |
| sgotplt, srelgot, splt, srelplt, sdynbss, srelbss fields. |
| (elf_i386_link_hash_table_create): Init them. |
| (create_got_section): New function. |
| (elf_i386_create_dynamic_sections): New function. |
| (elf_backend_create_dynamic_sections): Set to above. |
| (elf_i386_check_relocs): Use shortcuts from hash table rather than |
| calling bfd_get_section_by_name. |
| (elf_i386_gc_sweep_hook): Likewise. |
| (elf_i386_adjust_dynamic_symbol): Likewise. |
| (elf_i386_size_dynamic_sections): Likewise. |
| (elf_i386_relocate_section): Likewise. |
| (elf_i386_finish_dynamic_sections): Likewise. |
| |
| * elf32-hppa.c (allocate_plt_and_got): Skip indirect and warning syms. |
| |
| 2001-06-02 H.J. Lu <hjl@gnu.org> |
| |
| * elf32-hppa.c (elf32_hppa_object_p): Check ELFOSABI_LINUX |
| and ELFOSABI_HPUX. |
| * elf64-hppa.c (elf64_hppa_object_p): Likewise. |
| |
| 2001-06-02 H.J. Lu <hjl@gnu.org> |
| |
| * aout-cris.c (MACHTYPE_OK): New. Defined. |
| |
| 2001-06-02 Hans-Peter Nilsson <hp@axis.com> |
| |
| * section.c (_bfd_strip_section_from_output): Handle NULL |
| output_section. |
| |
| 2001-06-02 H.J. Lu <hjl@gnu.org> |
| |
| * config.bfd (powerpc-*-aix*, powerpc-*-beos*, rs6000-*-*): Add |
| rs6000coff64_vec only if BFD64 is defined. |
| (powerpc64-*-aix*): Enable only if BFD64 is defined. |
| |
| 2001-06-02 H.J. Lu <hjl@gnu.org> |
| |
| * coff-ia64.c (ia64coff_object_p): Rewrite with |
| external_PEI_DOS_hdr and external_PEI_IMAGE_hdr. |
| |
| 2001-06-01 Andreas Jaeger <aj@suse.de> |
| |
| * elf64-x86-64.c (elf64_x86_64_relocate_section): Add PC8 |
| relocation, small reformatting. |
| |
| 2001-05-29 Andreas Jaeger <aj@suse.de> |
| |
| * elf64-x86-64.c (elf64_x86_64_check_relocs): Handle R_X86_64_64. |
| (elf64_x86_64_relocate_section): Likewise. |
| |
| 2001-05-30 Alan Modra <amodra@one.net.au> |
| |
| * elf32-hppa.c (elf32_hppa_check_relocs): Don't NEED_PLT for |
| millicode. Don't allocate .got and .rela.got space here.. |
| (elf32_hppa_gc_sweep_hook): ..and no need to deallocate here.. |
| (elf32_hppa_adjust_dynamic_symbol): ..and don't allocate .plt and |
| .rela.plt here.. |
| (hppa_handle_PIC_calls): ..nor here.. |
| (allocate_plt_and_got): ..instead do it all here. New function. |
| (elf32_hppa_size_dynamic_sections): Allocate local .got space and |
| call allocate_plt_and_got. No need to zap .got if not dynamic. |
| (elf32_hppa_final_link): Call regular bfd_final_link instead of |
| gc_common_final_link. |
| (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. |
| (elf32_hppa_relocate_section): Use it here. |
| (elf32_hppa_finish_dynamic_symbol): Remove superfluous test of |
| dynamic_sections_created. |
| (hppa_type_of_stub): Don't LONG_BRANCH_VIA_PLT if millicode sym. |
| |
| 2001-05-28 Andreas Jaeger <aj@suse.de> |
| |
| * elf64-x86-64.c (elf64_86_64_size_info): Remove, we can use the |
| generic version since we want a hashsize of 4. |
| (elf_backend_size_info): Likewise. |
| |
| 2001-05-28 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| |
| * elflink.h (elf_link_size_reloc_section): Use bfd_zmalloc instead of |
| a zeroing loop. |
| (elf_link_output_relocs): Handle MIPS ELF64 relocations correctly. |
| (elf_link_input_bfd): Likewise. |
| (elf_reloc_link_order): Likewise. |
| (elf_finish_pointer_linker_section): Typo. Handle MIPS ELF64 |
| relocations correctly. |
| |
| 2001-05-28 Nicolas Pitre <nico@cam.org> |
| |
| * elf32-arm.h: fix PLT generation for big endian ARM |
| |
| 2001-05-28 Alan Modra <amodra@one.net.au> |
| |
| * elf32-hppa.c (elf32_hppa_relocate_section): Set up .plt entries |
| for symbols forced local that need plabels. |
| (elf32_hppa_adjust_dynamic_symbol): Don't allocate space in |
| .plt.rela for local syms if non-shared. |
| (hppa_build_one_stub): Mask lsb of plt.offset. |
| (elf32_hppa_finish_dynamic_symbol): Abort if lsb of plt.offset set. |
| (clobber_millicode_symbols): Correct comment. |
| (elf32_hppa_relocate_section): Likewise. |
| (elf32_hppa_finish_dynamic_symbol): Likewise. |
| |
| 2001-05-28 Jeff Sturm <jsturm@one-point.com> |
| |
| * reloc.c: Add BFD_RELOC_SPARC_UA16 and BFD_RELOC_SPARC_UA64. |
| * bfd-in2.h: Regenerate. |
| * libbfd.h: Regenerate. |
| * elf32-sparc.c: Enable BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32 |
| and BFD_RELOC_SPARC_UA64 mapping |
| * elf64-sparc.c: Likewise. |
| |
| 2001-05-25 H.J. Lu <hjl@gnu.org> |
| |
| * Makefile.am (BFD32_BACKENDS): Remove coff-pmac.lo. |
| (BFD32_BACKENDS_CFILES): Remove coff-pmac.c. |
| (coff-rs6000.lo): Remove the old dependency. |
| * Makefile.in: Rebuild. |
| |
| * configure.in (pmac_xcoff_vec): Replace coff-pmac.lo with |
| coff-rs6000.lo. |
| |
| 2001-05-25 H.J. Lu <hjl@gnu.org> |
| |
| * coff-rs6000.c (rs6000coff_vec): Use rs6000coff_core_p, |
| rs6000coff_core_file_matches_executable_p, |
| rs6000coff_core_file_failing_command and |
| rs6000coff_core_file_failing_signal only if AIX_CORE is |
| defined. |
| (pmac_xcoff_vec): Likewise. |
| * coff64-rs6000.c (rs6000coff64_vec): Likewise. |
| |
| 2001-05-25 Timothy Wall <twall@redhat.com> |
| |
| * elfxx-ia64.c (allocate_dynrel_entries): Don't allocate an entry |
| for __GLOB_DATA_PTR on AIX5. Clean up some relocation bugs. |
| |
| 2001-05-25 H.J. Lu <hjl@gnu.org> |
| |
| * bfd-in2.h: Regenerated. |
| * libcoff.h: Likewise. |
| |
| 2001-05-25 Alan Modra <amodra@one.net.au> |
| |
| * elf32-hppa.c (elf32_hppa_relocate_section): Don't allow |
| undefined millicode syms in shared libs. |
| (hppa_build_one_stub): Turn BFD_ASSERTs into aborts. |
| (elf32_hppa_check_relocs): Likewise. |
|