* elf64-alpha.c (alpha_elf_dynamic_symbol_p): Return false for an
[binutils-gdb.git] / bfd / ChangeLog
index 5428fcfde32203efb9eb733d8b154f144d42b5e2..1deded90651ac9eb768356d270e414fd9e4f0f2a 100644 (file)
@@ -1,3 +1,180 @@
+2003-04-21  Richard Henderson  <rth@redhat.com>
+
+       * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Return false for an
+       executable when a symbol is defined both regular and dynamic.
+
+2003-04-21  Stephane Carrez  <stcarrez@nerim.fr>
+
+       * Makefile.am (BFD32_BACKENDS): Add elf32-m68hc1x.lo.
+       (elf32-m68hc1x.lo): Update dependencies
+       * configure.in: Add elf32-m68hc1x.lo.
+       * configure: Rebuild.
+       * Makefile.in: Rebuild.
+
+2003-04-21  Stephane Carrez  <stcarrez@nerim.fr>
+
+       * elf32-m68hc1x.c: New file (from elf32-m68hc11.c and elf32-m68hc12.c)
+       (m68hc11_elf_hash_table_create): New function.
+       (elf32_m68hc11_link_hash_table_free): New function.
+       (stub_hash_newfunc): New function.
+       (m68hc11_add_stub): New function.
+       (elf32_m68hc11_add_symbol_hook): New function.
+       (elf32_m68hc11_setup_section_lists): New function.
+       (elf32_m68hc11_next_input_section): New function.
+       (elf32_m68hc11_size_stubs): New function.
+       (elf32_m68hc11_build_stubs): New function.
+       (m68hc11_get_relocation_value): New function.
+       (elf32_m68hc11_relocate_section): Call the above to redirect
+       some relocations to the trampoline code.
+       (m68hc11_elf_export_one_stub): New function.
+       (m68hc11_elf_set_symbol): New function.
+       (elf32_m68hc11_build_stubs): Call it via bfd_hash_traverse.
+       (m68hc11_elf_get_bank_parameters): Get parameters only when the info
+       is not yet initialized.
+
+       * elf32-m68hc1x.h: New file (from elf32-m68hc11.c and elf32-m68hc12.c)
+       (elf32_m68hc11_stub_hash_entry): New struct.
+       (m68hc11_page_info): Add trampoline handler address.
+       (m68hc11_elf_link_hash_table): Add stubs generation members.
+       (elf32_m68hc11_add_symbol_hook): Declare.
+       (elf32_m68hc11_setup_section_lists): Declare.
+       (elf32_m68hc11_size_stubs): Declare.
+       (elf32_m68hc11_build_stubs): Declare.
+       
+       * elf32-m68hc11.c (m68hc11_elf_ignore_reloc): Move to elf32-m68hc1x.c.
+       (elf32_m68hc11_gc_mark_hook, elf32_m68hc11_gc_sweep_hook): Likewise.
+       (elf32_m68hc11_check_relocs, elf32_m68hc11_relocate_section): Ditto.
+       (_bfd_m68hc11_elf_set_private_flags): Ditto.
+       (_bfd_m68hc11_elf_merge_private_bfd_data): Ditto.
+       (_bfd_m68hc11_elf_print_private_bfd_data): Ditto.
+       (bfd_elf32_bfd_link_hash_table_create): Define.
+       (elf_backend_add_symbol_hook): Define.
+       (m68hc11_elf_bfd_link_hash_table_create): New function.
+       (m68hc11_elf_build_one_stub): New function.
+       (m68hc11_elf_size_one_stub): New function.
+       (m68hc11_elf_bfd_link_hash_table_create): Install the above.
+       (bfd_elf32_bfd_link_hash_table_create): Define.
+
+       * elf32-m68hc12.c (m68hc11_elf_ignore_reloc): Remove.
+       (m68hc12_addr_is_banked): Remove, use m68hc11_addr_is_banked.
+       (m68hc12_phys_addr): Ditto.
+       (m68hc12_phys_page): Ditto.
+       (m68hc12_elf_special_reloc): Move to elf32-m68hc1x.c.
+       (elf32_m68hc11_gc_mark_hook): Likewise.
+       (elf32_m68hc11_gc_sweep_hook): Likewise.
+       (elf32_m68hc11_check_relocs): Likewise.
+       (elf32_m68hc11_relocate_section): Likewise.
+       (_bfd_m68hc12_elf_set_private_flags): Likewise.
+       (_bfd_m68hc12_elf_merge_private_bfd_data): Likewise.
+       (_bfd_m68hc12_elf_print_private_bfd_data): Likewise.
+       (m68hc12_elf_build_one_stub): New function.
+       (m68hc12_elf_size_one_stub): New function.
+       (m68hc12_elf_bfd_link_hash_table_create): New function, use the above.
+       (elf_backend_add_symbol_hook): Define.
+       (elf_m68hc11_howto_table): Use TRUE for pcrel relocs; fix masks.
+
+2003-04-18  Nick Clifton  <nickc@redhat.com>
+
+       * format.c (bfd_check_format_matches): Only check associated
+       vector if the matching_vector has been created.
+
+2003-04-15  Alexandre Oliva  <aoliva@redhat.com>
+
+       * dwarf2.c (_bfd_dwarf2_find_nearest_line): Fix typo in
+       2003-04-09's change.
+
+2003-04-15  Brian Ford  <ford@vss.fsi.com>
+
+       * peicode.h (coff_swap_scnhdr_in): If a section holds
+       uninitialized data and is from an object file or from an
+       executable image that has not initialized the s_size field, or if
+       the physical size is padded, use the virtual size (stored in
+       s_paddr) instead.
+
+2003-04-15  H.J. Lu <hjl@gnu.org>
+
+       * elflink.h (elf_link_add_object_symbols): Properly report
+       filename for alignment reduction.
+
+2003-04-15  Rohit Kumar Srivastava <rohits@kpitcummins.com>
+
+       * archures.c: Replace occurrances of 'Hitachi' with 'Renesas'.
+       * reloc.c: Likewise.
+       * coff-h8300.c: Likewise.
+       * coff-h8500.c: Likewise.
+       * coff-sh.c: Likewise.
+       * cpu-h8300.c: Likewise.
+       * cpu-sh.c: Likewise.
+       * elf32-h8300.c: Likewise.
+       * elf32-sh.c: Likewise.
+       * elf32-sh64-com.c: Likewise.
+       * elf32-sh64.c: Likewise.
+       * elf64-sh64.c: Likewise.
+       * bfd-in2.h: Regenerate.
+
+2003-04-14  H.J. Lu <hjl@gnu.org>
+
+       * elflink.h (elf_link_add_object_symbols): Maintain maximum
+       alignment for common symbols. Warn reducing alignment for
+       common symbols. Report old filename when symbol size changes.
+
+2003-04-12  Alexandre Oliva  <aoliva@redhat.com>
+
+       * elfxx-mips.c (mips_elf_calculate_relocation): Adjust two other
+       occurrences of the same test changed in the previous patch.
+       Optimize.
+
+2003-04-11  Alexandre Oliva  <aoliva@redhat.com>
+
+       * elfxx-mips.c (mips_elf_get_global_gotsym_index): New.
+       (mips_elf_calculate_relocation): Decay GOT_PAGE/GOT_OFST to
+       GOT_DISP/addend only if the symbol got a global GOT entry.
+
+2003-04-10  Alexandre Oliva  <aoliva@redhat.com>
+
+       * elfxx-mips.c (mips_elf_calculate_relocation): Decay
+       GOT_PAGE/GOT_OFST referencing overridable symbol to
+       GOT_DISP/addend.
+       (_bfd_mips_elf_check_relocs): Handle GOT_PAGE referencing
+       global symbol as GOT_DISP.
+
+2003-04-10  Bob Wilson  <bob.wilson@acm.org>
+
+       * elf32-xtensa.c (elf_xtensa_relocate_section): Don't continue to the
+       next relocation on an undefined symbol.
+
+2003-04-09  Richard Henderson  <rth@redhat.com>
+
+       * elf64-alpha.c (elf64_alpha_relocate_section) <R_ALPHA_GPREL32>:
+       Ignore relocations against r_symndx == 0.
+
+2003-04-09  H.J. Lu <hjl@gnu.org>
+
+       * elf64-alpha.c (elf64_alpha_relocate_section): Don't return
+       FALSE for undefined symbols.
+       * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
+
+2003-04-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       * dwarf2.c (_bfd_dwarf2_find_nearest_line): Try DWARF3-standard
+       and IRIX-specific shift-to-64-bit 4-byte lengths before following
+       addr_size.
+
+2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
+
+       * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): Detect (ctor)
+       pointer size from ABI, not arch_bits_per_address.
+
+2003-04-07  Kevin Buettner  <kevinb@redhat.com>
+
+       * elfn32-mips.c (elf32_mips_grok_prstatus): Adjust core file related
+       constants for n32 ABI.
+
+2003-04-06  Andrew Cagney  <cagney@redhat.com>
+
+       * simple.c (bfd_simple_get_relocated_section_contents): Disable
+       free that leads to GDB vs BFD memory corruption.
+
 2003-04-04  Stephane Carrez  <stcarrez@nerim.fr>
 
        * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Also adjust