]> Git Repo - binutils.git/blobdiff - bfd/ChangeLog
* elf-bfd.h (enum elf_reloc_type_class): New.
[binutils.git] / bfd / ChangeLog
index eb9d5d273fdeaa5be60d363155b4c7df03b4d407..551b9d0a02d6bdfc06352ef7babba643e69953a3 100644 (file)
@@ -1,3 +1,474 @@
+2001-08-23  Jakub Jelinek  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * configure.in (x86-bsdi): No corefile support.
+       * configure: Regenerate.
+
+2001-08-22  Nick Clifton  <[email protected]>
+
+       * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add missing
+       comma.
+
+2001-08-21  Mark Elbrecht  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * coff-sparc.c: Add missing prototypes.
+       * elf32-s390.c: Likewise.
+       * elf32-i960.c: Likewise.
+       * aout-target.h: Likewise.
+
+2001-08-20  H.J. Lu  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * archive.c (offsetof): Remove define.
+       * elf.c: Likewise.
+       * oasys.c: Likewise
+       * sysdep.h (offsetof): Define.
+
+2001-08-17  Alan Modra  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * linker.c (default_fill_link_order): Handle four byte fill value.
+
+2001-08-17  Alan Modra  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * elf64-x86-64.c (elf64_x86_64_elf_object_p): Make static.
+       Add prototypes where needed.
+
+2001-08-10  H.J. Lu  <[email protected]>
+
+       * bfd.c (bfd_sprintf_vma): Fix a typo in the last change.
+       (bfd_fprintf_vma): Likewise.
+
+2001-08-10  H.J. Lu  <[email protected]>
+
+       * bfd.c (bfd_sprintf_vma): Don't return void.
+       (bfd_fprintf_vma): Likewise.
+
+2001-08-10  Andreas Jaeger  <[email protected]>
+
+       * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
+       to build warnings.
+       * configure: Regenerate.
+
+2001-08-10  Alan Modra  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * elf.c (bfd_elf_sprintf_vma): Check ELFCLASS64 only in BFD64.
+       (bfd_elf_fprintf_vma): Likewise.
+
+2001-08-09  H.J. Lu  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * bfd.c: Fix formatting.
+       * bfd-in2.h: Regenerate.
+
+2001-08-09  Nick Clifton  <[email protected]>
+
+       * 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  <[email protected]>
+
+       1999-10-19  Linus Nordberg  <[email protected]>
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * coff-sh.c (sh_coff_reloc_type_lookup): Provide for sh-coff
+       targets as well as sh-pe.
+
+2001-08-03  Ben Harris <[email protected]>
+
+       * 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  <[email protected]>
+
+       From  H.J. Lu  <[email protected]>
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * elf.c (elf_sort_sections): Return zero only as the last step.
+
+2001-08-01  Nick Clifton  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Changed return type
+       to match corresponding bfd_coff_backend data member.
+
+2001-07-24  Alan Modra  <[email protected]>
+
+       * Makefile.am: Update dependencies with "make dep-am".
+       * Makefile.in: Regenerate
+
+2001-07-15  H.J. Lu  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
+
+       * 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  <[email protected]>
 
        * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing):
 2001-06-29  H.J. Lu  <[email protected]>
 
        * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Check if
-       hplink->sgot is NULL before filling GOT. Checck if hplink->splt
+       hplink->sgot is NULL before filling GOT.  Check if hplink->splt
        is NULL before filling PLT.
 
 2001-06-29  Alan Modra  <[email protected]>
This page took 0.036176 seconds and 4 git commands to generate.