2338 lines
90 KiB
Plaintext
2338 lines
90 KiB
Plaintext
2002-05-08 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf32-ppc.c (ppc_elf_create_got): New function.
|
||
(ppc_elf_create_dynamic_sections): Call ppc_elf_create_got before
|
||
_bfd_elf_create_dynamic_sections. Correct .plt flags.
|
||
(ppc_elf_check_relocs): Use ppc_elf_create_got in place of
|
||
_bfd_elf_create_got_section.
|
||
|
||
2002-05-07 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf-bfd.h (struct elf_backend_data): Add rela_normal.
|
||
* elfxx-target.h (elf_backend_rela_normal): Define.
|
||
(elfNN_bed): Init rela_normal.
|
||
* elflink.h (elf_link_input_bfd <emit_relocs>): Handle adjustment
|
||
for section symbols here if rela_normal. Simplify abs section test.
|
||
* elf-m10200.c (mn10200_elf_relocate_section): If relocatable,
|
||
return immediately. Remove code handling relocatable linking.
|
||
* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
|
||
* elf32-fr30.c (fr30_elf_relocate_section): Likewise.
|
||
* elf32-i370.c (i370_elf_relocate_section): Likewise.
|
||
* elf32-i860.c (elf32_i860_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-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
|
||
* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
|
||
* elf64-s390.c (elf_s390_relocate_section): Likewise.
|
||
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
|
||
* elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
|
||
* elf32-arm.h (elf32_arm_relocate_section): Likewise #ifndef USE_REL.
|
||
* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
|
||
* elf-m10200.c (elf_backend_rela_normal): Define.
|
||
* elf-m10300.c (elf_backend_rela_normal): Define.
|
||
* elf32-fr30.c (elf_backend_rela_normal): Define.
|
||
* elf32-i370.c (elf_backend_rela_normal): Define.
|
||
* elf32-i860.c (elf_backend_rela_normal): Define.
|
||
* elf32-m68k.c (elf_backend_rela_normal): Define.
|
||
* elf32-mcore.c (elf_backend_rela_normal): Define.
|
||
* elf32-openrisc.c (elf_backend_rela_normal): Define.
|
||
* elf32-ppc.c (elf_backend_rela_normal): Define.
|
||
* elf32-s390.c (elf_backend_rela_normal): Define.
|
||
* elf32-xstormy16.c (elf_backend_rela_normal): Define.
|
||
* elf64-ppc.c (elf_backend_rela_normal): Define.
|
||
* elf64-s390.c (elf_backend_rela_normal): Define.
|
||
* elf64-x86-64.c (elf_backend_rela_normal): Define.
|
||
* elfxx-ia64.c (elf_backend_rela_normal): Define.
|
||
* elf32-arm.h (elf_backend_rela_normal): Define #ifndef USE_REL.
|
||
* elf32-m32r.c (elf_backend_rela_normal): Likewise.
|
||
|
||
2002-05-06 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* elf32-arm.h (elf32_arm_final_link_relocate): Convert
|
||
'reloc_signed_max' and 'reloc_signed_min' into half-word offsets.
|
||
|
||
2002-05-06 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elflink.h (elf_link_input_bfd <emit_relocs>): Adjust r_offset
|
||
when not relocatable. Fix reloc_emitter call for K&R.
|
||
|
||
2002-05-04 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (ppc64_elf_relocate_section): Reinstate code
|
||
reloading local sym addend mistakenly removed in 2002-05-01 change.
|
||
|
||
* dwarf2.c (struct line_head): Make prologue_length a bfd_vma.
|
||
(read_abbrevs): Change "offset" param to bfd_vma.
|
||
(parse_comp_unit): Change "version" and addr_size to unsigned ints.
|
||
Change "abbrev_offset" to bfd_vma.
|
||
(read_indirect_string): Use correct conversion chars in error
|
||
message format string, cast bfd_vma's to unsigned long.
|
||
(read_abbrevs): Likewise.
|
||
(read_attribute_value): Likewise.
|
||
(decode_line_info): Likewise.
|
||
(scan_unit_for_functions): Likewise.
|
||
(parse_comp_unit): Likewise.
|
||
|
||
2002-05-04 Tom Rix <trix@redhat.com>
|
||
|
||
* coffswap.h (coff_swap_reloc_in): Remove XCOFF support.
|
||
(coff_swap_reloc_out): Same.
|
||
* coff-rs6000.c: (xcoff_swap_reloc_in): Moved from coffswap.h.
|
||
(xcoff_swap_reloc_out): Same.
|
||
(xcoff_rtype2howto): Renamed from _bfd_xcoff_rtype2howto. Special
|
||
case some 16 bit relocs. Add reloc value to output.
|
||
(xcoff_howto_table): Remove 64 bit R_POS, add 16 bit
|
||
R_RBR. Improve names.
|
||
(_bfd_xcoff_reloc_type_lookup): Adjust for removal of 64 bit R_POS.
|
||
(bfd_xcoff_backend_data): Update with new reloc swap names.
|
||
(bfd_pmac_xcoff_backend_data) : Same.
|
||
* coff64-rs6000.c: (xcoff64_swap_reloc_in): Moved from coffswap.h.
|
||
(xcoff64_swap_reloc_out): Same.
|
||
(xcoff64_rtype2howto): Special case some 16 bit relocs and 32 bit
|
||
R_POS. Add reloc value to output.
|
||
(xcoff64_howto_table): Move 64 bit R_POS to first entry. Add 16
|
||
bit R_RBR. Improve names, masks.
|
||
(xcoff64_reloc_type_lookup): Adjust for move of 64 bit R_POS.
|
||
(bfd_xcoff_backend_data): Update with new reloc swap names.
|
||
(bfd_xcoff_aix5_backend_data) : Same.
|
||
|
||
2002-05-04 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf32-hppa.c (struct elf32_hppa_link_hash_table): Add
|
||
bfd_count top_index, input_list, all_local_syms.
|
||
(elf32_hppa_setup_section_lists): New function, split from
|
||
elf32_hppa_size_stubs.
|
||
(elf32_hppa_next_input_section): Likewise.
|
||
(group_sections): Likewise.
|
||
(get_local_syms): Likewise.
|
||
(elf32_hppa_size_stubs): Adjust for split out functions. Look for
|
||
stubs on undefined syms too.
|
||
(elf32_hppa_set_gp): Use bfd_link_hash* instead of elf_link_hash*.
|
||
Only access htab elf fields when we have and elf hash table.
|
||
* elf32-hppa.h (elf32_hppa_setup_section_lists): Declare.
|
||
(elf32_hppa_next_input_section): Declare.
|
||
|
||
2002-05-04 Bob Byrnes <byrnes@curl.com>
|
||
|
||
* opncls.c (_bfd_new_bfd_contained_in): Check return value of
|
||
_bfd_new_bfd.
|
||
|
||
2002-05-03 H.J. Lu (hjl@gnu.org)
|
||
|
||
* elfxx-mips.c (mips_elf_link_hash_entry): Add forced_local.
|
||
(mips_elf_link_hash_newfunc): Initialize forced_local to false.
|
||
(mips_elf_record_global_got_symbol): Call _bfd_mips_elf_hide_symbol
|
||
to hide a global symbol.
|
||
(_bfd_mips_elf_hide_symbol): Return if forced_local is true. Set
|
||
forced_local to true.
|
||
|
||
2002-05-02 Richard Henderson <rth@redhat.com>
|
||
|
||
* elf64-alpha.c (elf64_alpha_relocate_section): Force relative relocs
|
||
vs SHN_UNDEF to zero.
|
||
|
||
2002-05-02 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (ppc64_elf_howto_raw <R_PPC64_SECTOFF>): Change to a
|
||
16 bit reloc.
|
||
<R_PPC64_SECTOFF_DS>: Likewise.
|
||
(ppc64_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
|
||
SECTOFF reloc.
|
||
* elf32-ppc.c (ppc_elf_howto_raw <R_PPC_SECTOFF>): Correct.
|
||
(ppc_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
|
||
SECTOFF reloc.
|
||
|
||
* elf64-ppc.c (ppc64_elf_addr16_ha_reloc): Delete.
|
||
(ppc64_elf_ha_reloc): New function.
|
||
(ppc64_elf_brtaken_reloc): New function.
|
||
(ppc64_elf_sectoff_reloc): New function.
|
||
(ppc64_elf_sectoff_ha_reloc): New function.
|
||
(ppc64_elf_toc_reloc): New function.
|
||
(ppc64_elf_toc_ha_reloc): New function.
|
||
(ppc64_elf_toc64_reloc): New function.
|
||
(ppc64_elf_unhandled_reloc): New function.
|
||
(ppc64_elf_howto_raw): Use the above.
|
||
<R_PPC64_RELATIVE>: Mark pc_relative, pcrel_offset.
|
||
<R_PPC64_SECTOFF>: Not pc_relative or pcrel_offset. Fix dst_mask.
|
||
<R_PPC64_SECTOFF_DS>: Likewise.
|
||
(IS_ABSOLUTE_RELOC): Update.
|
||
(struct ppc_link_hash_table): Add have_undefweak.
|
||
(ppc64_elf_link_hash_table_create): Init.
|
||
(func_desc_adjust): Set have_undefweak.
|
||
(ppc64_elf_func_desc_adjust): Call func_desc_adjust earlier. Only
|
||
add the .sfpr blr when have_undefweak.
|
||
(ppc64_elf_setup_section_lists): Check hash table flavour.
|
||
(ppc64_elf_next_input_section): Move output_section->owner test to
|
||
ppc64elf.em.
|
||
(ppc64_elf_set_toc): Rename to ppc64_elf_toc, remove info param
|
||
and relocatable test. Return TOCstart and don't set elf_gp.
|
||
(ppc64_elf_relocate_section): Correct BRTAKEN/BRNTAKEN branch
|
||
offset calculation. Add assert on weak sym branch tweaks.
|
||
* elf64-ppc.h (ppc64_elf_set_toc): Delete.
|
||
(ppc64_elf_toc): Declare.
|
||
(ppc64_elf_next_input_section): Update.
|
||
|
||
2002-05-01 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* syms.c (_bfd_stab_section_find_nearest_line): Don't bomb on NULL
|
||
file_name.
|
||
|
||
2002-05-01 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (CROR_151515, CROR_313131): Define.
|
||
(ppc64_elf_relocate_section): Use them. Don't look for plt calls
|
||
on R_PPC64_ADDR24 relocs. Require a nop or no link reg on plt
|
||
call branches. Correct undefined weak destination.
|
||
(ppc64_elf_func_desc_adjust): Always create at least one blr in
|
||
.sfpr, and correct case where either only savef* or restf* is
|
||
needed.
|
||
|
||
Long branch stubs, multiple stub sections.
|
||
* elf64-ppc.h (ppc64_elf_setup_section_lists): Declare.
|
||
(ppc64_elf_next_input_section): Declare.
|
||
* elf64-ppc.c: Move linker-only prototypes.
|
||
(STUB_SUFFIX): Define.
|
||
(enum ppc_stub_type): New.
|
||
(struct ppc_stub_hash_entry): New.
|
||
(struct ppc_branch_hash_entry): New.
|
||
(struct ppc_link_hash_entry): Add stub_cache, oh.
|
||
(struct ppc_link_hash_table): Add stub_hash_table etc. Remove
|
||
sstub. Add sbrlt, srelbrlt, has_14bit_branch, stub_iteration.
|
||
Rename plt_overflow to stub_error.
|
||
(ppc_stub_hash_lookup): Define.
|
||
(ppc_branch_hash_lookup): Define.
|
||
(stub_hash_newfunc): New function.
|
||
(branch_hash_newfunc): New function.
|
||
(link_hash_newfunc): Init new fields.
|
||
(ppc64_elf_link_hash_table_create): Likewise.
|
||
(ppc64_elf_link_hash_table_free): New function.
|
||
(ppc_stub_name): New function.
|
||
(ppc_get_stub_entry): New function.
|
||
(ppc_add_stub): New function.
|
||
(create_linkage_sections): Use bfd_make_section_anyway. Create
|
||
.branch_lt and .rela.branch_lt sections. Don't create .stub.
|
||
(ppc64_elf_check_relocs): Set has_14bit_branch on R_PPC64_REL14*,
|
||
and set up for plt call stubs. Link func and func desc syms.
|
||
(ppc64_elf_gc_sweep_hook): Handle REL14* as per REL24.
|
||
(func_desc_adjust): Avoid hash lookup when func desc sym available
|
||
via shortcut, and set links when processing.
|
||
(ppc64_elf_hide_symbol): Likewise.
|
||
(allocate_dynrelocs): Don't allocate stub section here.
|
||
(ppc64_elf_size_dynamic_sections): Handle sbrlt and srelbrlt.
|
||
Remove sstub code.
|
||
(ppc_type_of_stub): New function.
|
||
(build_one_stub): Delete.
|
||
(ppc_build_one_stub): New function.
|
||
(ppc_size_one_stub): New function.
|
||
(ppc64_elf_setup_section_lists): New function.
|
||
(ppc64_elf_next_input_section): New function.
|
||
(group_sections): New function.
|
||
(get_local_syms): New function.
|
||
(ppc64_elf_size_stubs): Rewrite.
|
||
(ppc64_elf_build_stubs): Rewrite.
|
||
(ppc64_elf_relocate_section): Look up stub entry for REL24
|
||
relocs. Don't propagate REL14* to dynamic objects. Look for long
|
||
branch stubs if REL14* or REL24 relocs won't reach.
|
||
(bfd_elf64_bfd_link_hash_table_free): Define.
|
||
|
||
2002-04-30 Mark Mitchell <mark@codesourcery.com>
|
||
|
||
* bfd/config.bfd: Add support for powerpc-*-windiss.
|
||
|
||
2002-04-30 Tom Rix <trix@redhat.com>
|
||
|
||
* xcofflink.c (xcoff_link_add_symbols): Always copy undef C_EXT
|
||
symbol names into the hash table.
|
||
|
||
2002-04-28 Tom Rix <trix@redhat.com>
|
||
|
||
* coff-rs6000.c (xcoff_calculate_relocation) : Function table for
|
||
calulating relocations.
|
||
(xcoff_complain_overflow) : Function table for relocation errors.
|
||
(xcoff_ppc_relocate_section): Use relocation and complain function
|
||
tables.
|
||
(xcoff_complain_overflow_unsigned_func): New complain function.
|
||
(xcoff_complain_overflow_signed_func): Same.
|
||
(xcoff_complain_overflow_bitfield_func): Same.
|
||
(xcoff_complain_overflow_dont_func): Same.
|
||
(xcoff_reloc_type_crel): New recot function.
|
||
(xcoff_reloc_type_br): Same.
|
||
(xcoff_reloc_type_ba): Same.
|
||
(xcoff_reloc_type_toc): Same.
|
||
(xcoff_reloc_type_rel): Same.
|
||
(xcoff_reloc_type_neg): Same.
|
||
(xcoff_reloc_type_pos): Same.
|
||
(xcoff_reloc_type_fail): Same.
|
||
(xcoff_reloc_type_noop): Same.
|
||
* libxcoff.h : Declare common parts for xcoff64.
|
||
* coff64-rs6000.c (xcoff64_ppc_relocate_section): Use relocation
|
||
and complain function tables.
|
||
|
||
2002-04-28 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-x86-64.c (struct elf64_x86_64_dyn_relocs): Comment typo.
|
||
* elf32-hppa.c (elf32_hppa_final_link): Formatting.
|
||
|
||
2002-04-26 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* opncls.c (bfd_make_readable): Call bfd_section_list_clear.
|
||
* xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise.
|
||
|
||
* elflink.h (elf_bfd_final_link): Ensure input bfd class is the
|
||
same as the output before calling elf_link_input_bfd.
|
||
|
||
* coffcode.h (coff_compute_section_file_positions): Set
|
||
section_tail after shuffling section list.
|
||
|
||
2002-04-24 Christian Groessler <chris@groessler.org>
|
||
|
||
* coff-z8k.c (extra_case): Fix R_IMM32 relocations: The
|
||
addresses are 23bit with a special layout, not plain 32bit
|
||
values. Prevent relocation of immediate values.
|
||
|
||
2002-04-24 Chris G. Demetriou <cgd@broadcom.com>
|
||
|
||
* elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): If MDMX or
|
||
MIPS-16 ASE flags are set, print something to indicate that.
|
||
|
||
2002-04-23 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf32-hppa.c (hppa_type_of_stub): Correct and simplify condition
|
||
under which a plt call stub is used.
|
||
(final_link_relocate): Similarly.
|
||
(allocate_plt_static): Clear h-plabel except when plt entry is
|
||
exclusively used for a plabel.
|
||
(allocate_dynrelocs): Use the above to simplify plt sizing.
|
||
(struct elf32_hppa_link_hash_table): Add has_22bit_branch.
|
||
(elf32_hppa_link_hash_table_create): Init.
|
||
(BL22_RP): Define.
|
||
(hppa_build_one_stub): Use BL22_RP if has_22bit_branch.
|
||
(elf32_hppa_check_relocs): Set has_22bit_branch.
|
||
|
||
* elf32-hppa.c (elf32_hppa_check_relocs): Remove debug message.
|
||
(final_link_relocate): Likewise.
|
||
|
||
2002-04-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't build
|
||
search table if some FDE is DW_EH_PE_aligned encoded either.
|
||
(_bfd_elf_write_section_eh_frame): Handle terminating FDE specially.
|
||
|
||
2002-04-22 Richard Smith <richard@ex-parrot.com>
|
||
Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* elf-eh-frame.c (struct eh_cie_fde): Add per_encoding_relative.
|
||
(_bfd_elf_discard_section_eh_frame): Set it for CIEs with pcrel
|
||
encoded personality.
|
||
(_bfd_elf_write_section_eh_frame): Adjust pcrel encoded personality
|
||
for CIE/FDE removal.
|
||
|
||
2002-04-20 Tom Rix <trix@redhat.com>
|
||
|
||
* coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Fix C_FILE auxent.
|
||
|
||
2002-04-20 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* archures.c (bfd_lookup_arch): Move the list order comment..
|
||
(struct bfd_arch_info): ..to where it belongs.
|
||
* bfd-in2.h: Regenerate.
|
||
|
||
* archures.c (bfd_lookup_arch): Add comment on list order.
|
||
(bfd_default_set_arch_mach): Use bfd_lookup_arch.
|
||
* cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default
|
||
is always at head of list.
|
||
|
||
2002-04-18 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9,
|
||
insert_thumb_branch, record_thumb_to_arm_glue): Suppress
|
||
definition of these functions for ARM_WINCE builds as they are
|
||
not used.
|
||
(SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET): Do not define
|
||
for ARM_WINCE builds.
|
||
|
||
2002-04-18 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* coff-arm.c (bfd_arm_process_before_allocation):
|
||
|
||
2002-04-17 J"orn Rennecke <joern.rennecke@superh.com>
|
||
|
||
* cpu-sh.c (scan_mach): Delete.
|
||
(arch_info_struct): Replace scan_mach with bfd_default_scan.
|
||
(bfd_sh_arch): Likewise.
|
||
|
||
2002-04-16 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* ihex.c (ihex_write_object_contents): Fix check for records
|
||
crossing 64K boundaries.
|
||
|
||
2002-04-16 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf32-m32r.c (m32r_elf_add_symbol_hook): Check the hash table
|
||
type rather than just assuming entries are ELF.
|
||
* elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
|
||
* elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
|
||
* elf64-sparc.c (sparc64_elf_add_symbol_hook): Likewise.
|
||
* elf64-mmix.c (mmix_elf_add_symbol_hook): Use bfd_link_hash_entry
|
||
rather than elf_link_hash_entry.
|
||
|
||
2002-04-15 Richard Henderson <rth@redhat.com>
|
||
|
||
* elf32-mips.c (mips_elf32_object_p): Revert 0404 fragment: allow
|
||
n32 binaries.
|
||
|
||
2002-04-15 Michael Snyder <msnyder@redhat.com>
|
||
|
||
* opncls.c (bfd_close): Write contents if writeable.
|
||
Minor formatting tidy-ups.
|
||
|
||
2002-04-15 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf32-ppc.c (ppc_elf_add_symbol_hook): Check the hash table type.
|
||
|
||
2002-04-12 Michael Snyder <msnyder@redhat.com>
|
||
|
||
* bfd-in.h (bfd_get_section_lma): New access macro.
|
||
Minor white-space fix-up.
|
||
|
||
2002-04-12 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf.c (prep_headers): Don't zero EI_OSABI, EI_ABIVERSION or
|
||
header pad.
|
||
|
||
2002-04-09 DJ Delorie <dj@redhat.com>
|
||
|
||
* elfarm-nabi.c (elf32_arm_howto_table): Fix ABS16 masks.
|
||
|
||
2002-04-09 Casper S. Hornstrup <chorns@users.sourceforge.net>
|
||
|
||
* coffcode.h (coff_read_word): New.
|
||
(coff_compute_checksum): New.
|
||
(coff_apply_checksum): New.
|
||
(coff_write_object_contents): Call coff_apply_checksum () to
|
||
apply checksum to PE image.
|
||
|
||
2002-04-08 Randolph Chung <tausq@debian.org>
|
||
|
||
* elf32-hppa.c (hppa_unwind_entry_compare): Move to elf-hppa.h.
|
||
(elf32_hppa_final_link): Split out sorting logic to..
|
||
* elf-hppa.h (elf_hppa_sort_unwind): ..here.
|
||
(elf_hppa_final_link): Call elf_hppa_sort_unwind.
|
||
|
||
2002-04-07 Andrew Cagney <ac131313@redhat.com>
|
||
|
||
* configure.in: Add missing ``|'' to powerpc-*-aix4.[4-9]*
|
||
pattern.
|
||
* configure: Re-generate.
|
||
|
||
2002-04-07 Andrew Cagney <ac131313@redhat.com>
|
||
|
||
* configure.in: Only define AIX_CORE_DUMPX_CORE when AIX version
|
||
is greater or equal to 4.3.3.
|
||
* configure: Regenerate.
|
||
Fix PR gdb/344.
|
||
|
||
2002-04-05 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* elf32-cris.c (cris_elf_howto_table) <R_CRIS_16_PCREL,
|
||
R_CRIS_32_PCREL>: Fix typo in name.
|
||
(cris_elf_check_relocs): Always create .rela.got here when
|
||
R_CRIS_16_GOTPLT or R_CRIS_32_GOTPLT is seen.
|
||
(elf_cris_adjust_gotplt_to_got): Don't create .rela.got here;
|
||
assume it's created.
|
||
|
||
2002-04-04 Daniel Jacobowitz <drow@mvista.com>
|
||
|
||
* aout-adobe.c (aout_32_bfd_link_hash_table_free): Define.
|
||
* aout-target.h (MY_bfd_link_hash_table_free): Conditionally
|
||
define.
|
||
* aout-tic30.c (MY_bfd_link_hash_table_free): Likewise.
|
||
* bfd.c (bfd_link_hash_table_free): Define.
|
||
* binary.c (binary_bfd_link_hash_table_free): Define.
|
||
* bout.c (b_out_bfd_link_hash_table_free): Define.
|
||
* coff-rs6000.c (rs6000coff_vec): Include
|
||
_bfd_generic_link_hash_table_free.
|
||
(pmac_xcoff_vec): Likewise.
|
||
* coff64-rs6000.c (rs6000coff64_vec): Likewise.
|
||
(aix5coff64_vec): Likewise.
|
||
* coffcode.h (coff_bfd_link_hash_table_free): Conditionally define.
|
||
* elf-m10300.c (elf32_mn10300_link_hash_table_free): New function.
|
||
(bfd_elf32_bfd_link_hash_table_free): Define.
|
||
* elf32-hppa.c (elf32_hppa_link_hash_table_free): New function.
|
||
(bfd_elf32_bfd_link_hash_table_free): Define.
|
||
* elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Conditionally
|
||
define.
|
||
* i386msdos.c (msdos_bfd_link_hash_table_free): Define.
|
||
* i386os9k.c (os9k_bfd_link_hash_table_free): Define.
|
||
* ieee.c (ieee_bfd_link_hash_table_free): Define.
|
||
* ihex.c (ihex_bfd_link_hash_table_free): Define.
|
||
* libbfd-in.h (_bfd_nolink_bfd_link_hash_table_free): Define.
|
||
(_bfd_generic_link_hash_table_free): Add prototype.
|
||
* libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Add prototype.
|
||
* libecoff.h (_bfd_ecoff_bfd_link_hash_table_free): Define.
|
||
* linker.c (_bfd_generic_link_hash_table_free): New function.
|
||
* mmo.c (mmo_bfd_link_hash_table_free): Define.
|
||
* nlm-target.h (nlm_bfd_link_hash_table_free): Define.
|
||
* oasys.c (oasys_bfd_link_hash_table_free): Define.
|
||
* ppcboot.c (ppcboot_bfd_link_hash_table_free): Define.
|
||
* som.c (som_bfd_link_hash_table_free): Define.
|
||
* srec.c (srec_bfd_link_hash_table_free): Define.
|
||
* tekhex.c (tekhex_bfd_link_hash_table_free): Define.
|
||
* versados.c (versados_bfd_link_hash_table_free): Define.
|
||
* vms.c (vms_bfd_link_hash_table_free): New function.
|
||
* xcofflink.c (_bfd_xcoff_bfd_link_hash_table_free): New function.
|
||
|
||
* coff-arm.c (coff_arm_link_hash_table_create): Use bfd_malloc
|
||
instead of bfd_alloc.
|
||
* coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
|
||
* coff-mcore.c (coff_mcore_link_hash_table_create): Likewise.
|
||
* coff-ppc.c (ppc_coff_link_hash_table_create): Likewise.
|
||
* cofflink.c (_bfd_coff_link_hash_table_create): Likewise.
|
||
* ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise.
|
||
* elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
|
||
* elf.c (_bfd_elf_link_hash_table_create): Likewise.
|
||
* elf32-arm.h (elf32_arm_link_hash_table_create): Likewise.
|
||
* elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
|
||
* elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
|
||
* elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
|
||
* elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
|
||
* elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
|
||
* elf32-sh.c (sh_elf_link_hash_table_create): Likewise.
|
||
* elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create): Likewise.
|
||
* elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise.
|
||
* elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
|
||
* elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
|
||
* elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create): Likewise.
|
||
* elf64-x86-64.c (elf64_x86_64_link_hash_table_create): Likewise.
|
||
* elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
|
||
* linker.c (_bfd_generic_link_hash_table_create): Likewise.
|
||
* m68klinux.c (linux_link_hash_table_create): Likewise.
|
||
* sparclinux.c (linux_link_hash_table_create): Likewise.
|
||
* sunos.c (sunos_link_hash_table_create): Likewise.
|
||
* xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
|
||
|
||
* targets.c: Add _bfd_link_hash_table_free to xvec.
|
||
|
||
* bfd-in2.h: Regenerate.
|
||
* libbfd.h: Regenerate.
|
||
* libcoff.h: Regenerate.
|
||
|
||
2002-04-04 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* dep-in.sed: Cope with absolute paths.
|
||
* Makefile.am (dep.sed): Subst TOPDIR, and not INCDIR.
|
||
Run "make dep-am".
|
||
* Makefile.in: Regenerate.
|
||
* coff-arm.c: Fix copyright date.
|
||
* cpu-h8300.c: Likewise.
|
||
* cpu-i370.c: Likewise.
|
||
* cpu-s390.c: Likewise.
|
||
* cpu-mips.c: Likewise.
|
||
* po/SRC-POTFILES.in: Regenerate.
|
||
|
||
2002-04-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
|
||
|
||
* Makefile.am: Add elfxx-mips.c to the known backends.
|
||
(elf32-mips.lo): remove dependency to coff/external.h.
|
||
* Makefile.in: Regenerate.
|
||
* configure.in: Add elfxx-mips.lo to all vectors using elf32-mips.lo
|
||
Remove elf32-mips.lo from 64 bit vectors. Update dependencies
|
||
accordingly.
|
||
* configure: Regenerate.
|
||
* elf-bfd.h: Move all MIPS ELF specific prototypes to elfxx-mips.h.
|
||
(irix_compat_t): IRIX compatibility level, moved from elf32-mips.c.
|
||
(elf_backend_mips_irix_compat, elf_backend_mips_rtype_to_howto): New
|
||
MIPS specific backend functions.
|
||
* elf32-mips.c: Moved most code to elfxx-mips.c.
|
||
(mips_elf_hi16_reloc): Rename from _bfd_mips_elf_hi16_reloc and make
|
||
static.
|
||
(mips_elf_lo16_reloc): Likewise, was _bfd_mips_elf_lo16_reloc.
|
||
(mips_elf_got16_reloc): Likewise, was _bfd_mips_elf_got16_reloc.
|
||
(mips_elf_gprel32_reloc): Likewise, was _bfd_mips_elf_gprel32_reloc.
|
||
(mips_elf32_rtype_to_howto): Rename from mips_rtype_to_howto. Changed
|
||
interface to allow selection of the right REL or RELA howto table.
|
||
(mips_elf32_object_p): Rename from _bfd_mips_elf_object_p and made
|
||
static. Let it refuse n32 objects.
|
||
(elf32_mips_grok_prstatus): Rename from _bfd_elf32_mips_grok_prstatus.
|
||
(elf32_mips_grok_psinfo): Rename from _bfd_elf32_mips_grok_psinfo.
|
||
(elf32_mips_discard_info): Rename from _bfd_elf32_mips_discard_info.
|
||
(elf32_mips_ignore_discarded_relocs): Rename from
|
||
_bfd_elf32_mips_ignore_discarded_relocs.
|
||
(elf32_mips_write_section): Rename from _bfd_elf32_mips_write_section.
|
||
(elf32_mips_irix_compat): New function, replaces IRIX_COMPAT.
|
||
(elf_mips_howto_table_rela): Remove.
|
||
* elf64-mips.c: Moved most code to elfxx-mips.c.
|
||
(bfd_elf64_bfd_reloc_type_lookup): Make static.
|
||
(mips_elf64_rtype_to_howto): New function.
|
||
(mips_elf64_object_p): Likewise.
|
||
(elf64_mips_irix_compat): Likewise.
|
||
* elfxx-mips.c: New file containing common code merged together from
|
||
elf32-mips.c and elf64-mips.c.
|
||
* elfxx-mips.h: New file containing MIPS specific prototypes from
|
||
elf-bfd.h.
|
||
* elfxx-target.h: Add handling for elf_backend_mips_irix_compat and
|
||
elf_backend_mips_rtype_to_howto.
|
||
|
||
2002-04-04 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* srec.c (MAXCHUNK, Chunk): Revise comments.
|
||
(srec_write_record): Correct buffer size.
|
||
(srec_write_header): Do without intermediate buffer.
|
||
(srec_write_section): Validate Chunk.
|
||
(srec_write_terminator): Pass NULL instead of dummy buffer.
|
||
(srec_write_symbols): Pass file and symbol names directly to
|
||
bfd_bwrite so sprintf won't overflow buffer.
|
||
|
||
2002-04-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* elf32-sparc.c (elf32_sparc_relocate_section): Don't emit dynamic
|
||
PC relative relocs against hidden symbols.
|
||
* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
|
||
|
||
2002-04-03 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf.c (_bfd_elf_make_section_from_shdr): When setting section
|
||
LMAs, loop over segments until p_vaddr and p_memsz specify an
|
||
extent enclosing the section.
|
||
|
||
2002-04-02 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* ihex.c (ihex_write_object_contents): Do not allow records to
|
||
cross a 64K boundary - wrap if necessary.
|
||
|
||
2002-04-01 Nathan Williams <nathanw@wasabisystems.com>
|
||
|
||
* elf.c (elfcore_netbsd_get_lwpid): Fix off-by-one error
|
||
which caused the returned LWP ID to always be 0.
|
||
|
||
2002-04-01 Richard Henderson <rth@redhat.com>
|
||
|
||
* elf32-sparc.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
|
||
(elf32_sparc_relocate_section): Use it to figure out when to
|
||
initialize .got entries.
|
||
* elf64-sparc.c: Similarly.
|
||
|
||
2002-03-28 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* linker.c (link_action): Ignore duplicate warning syms.
|
||
(_bfd_generic_link_write_global_symbol): Follow warning symbol link.
|
||
* elflink.h (elf_adjust_dynstr_offsets): Likewise.
|
||
(elf_adjust_dynamic_symbol): Likewise.
|
||
(elf_export_symbol): Likewise.
|
||
(elf_link_find_version_dependencies): Likewise.
|
||
(elf_link_assign_sym_version): Likewise.
|
||
(elf_link_sec_merge_syms): Likewise.
|
||
(elf_link_output_extsym): Likewise.
|
||
(elf_gc_sweep_symbol): Likewise.
|
||
(elf_gc_propagate_vtable_entries_used): Likewise.
|
||
(elf_gc_smash_unused_vtentry_relocs): Likewise.
|
||
(elf_gc_allocate_got_offsets): Likewise.
|
||
(elf_collect_hash_codes): Likewise.
|
||
* elflink.c (elf_link_renumber_hash_table_dynsyms): Likewise.
|
||
* elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): Likewise.
|
||
(elf_hppa_remark_useless_dynamic_symbols): Likewise.
|
||
* elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
|
||
* elf32-arm.h (elf32_arm_discard_copies): Likewise.
|
||
* elf32-cris.c (elf_cris_adjust_gotplt_to_got): Likewise.
|
||
(elf_cris_discard_excess_dso_dynamics): Likewise.
|
||
* elf32-hppa.c (clobber_millicode_symbols): Likewise.
|
||
(mark_PIC_calls): Likewise.
|
||
(allocate_plt_static): Likewise.
|
||
(allocate_dynrelocs): Likewise.
|
||
(readonly_dynrelocs): Likewise.
|
||
* elf32-i386.c (allocate_dynrelocs): Likewise.
|
||
(readonly_dynrelocs): Likewise.
|
||
* elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
|
||
* elf32-m68k.c (elf_m68k_discard_copies): Likewise.
|
||
* elf32-mips.c (mips_elf_output_extsym): Likewise.
|
||
(mips_elf_sort_hash_table_f): Likewise.
|
||
(mips_elf_check_mips16_stubs): Likewise.
|
||
* elf32-s390.c (allocate_dynrelocs): Likewise.
|
||
(readonly_dynrelocs): Likewise.
|
||
* elf32-sh.c (sh_elf_discard_copies): Likewise.
|
||
* elf32-xstormy16.c (xstormy16_relax_plt_check): Likewise.
|
||
(xstormy16_relax_plt_realloc): Likewise.
|
||
* elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
|
||
(elf64_alpha_output_extsym): Likewise.
|
||
* elf64-hppa.c (elf64_hppa_mark_exported_functions): Likewise.
|
||
* elf64-mips.c (mips_elf64_sort_hash_table_f): Likewise.
|
||
(mips_elf64_check_mips16_stubs): Likewise.
|
||
(mips_elf64_output_extsym): Likewise.
|
||
* elf64-ppc.c (func_desc_adjust): Likewise.
|
||
(allocate_dynrelocs): Likewise.
|
||
(readonly_dynrelocs): Likewise.
|
||
* elf64-s390.c (allocate_dynrelocs): Likewise.
|
||
(readonly_dynrelocs): Likewise.
|
||
* elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
|
||
* elf64-x86-64.c (allocate_dynrelocs): Likewise.
|
||
(readonly_dynrelocs): Likewise.
|
||
* elfxx-ia64.c (elfNN_ia64_global_dyn_sym_thunk): Likewise.
|
||
* aoutx.h (aout_link_write_other_symbol): Likewise.
|
||
* cofflink.c (_bfd_coff_write_task_globals): Likewise.
|
||
(_bfd_coff_write_global_sym): Likewise.
|
||
* i386linux.c (linux_tally_symbols): Likewise.
|
||
* m68klinux.c (linux_tally_symbols): Likewise.
|
||
* sparclinux.c (linux_tally_symbols): Likewise.
|
||
* pdp11.c (aout_link_write_other_symbol): Likewise.
|
||
* sunos.c (sunos_scan_dynamic_symbol): Likewise.
|
||
* xcofflink.c (xcoff_build_ldsyms): Likewise.
|
||
(xcoff_write_global_symbol): Likewise.
|
||
|
||
* cofflink.c (_bfd_coff_final_link): Formatting.
|
||
* cpu-mips.c (mips_compatible): Make static, prototype.
|
||
* elf32-i386.c (elf_i386_check_relocs): Formatting.
|
||
* elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
|
||
* elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
|
||
* elf64-mips.c (mips_elf64_sort_hash_table): Likewise.
|
||
(mips_elf64_final_link): Likewise.
|
||
* elflink.h (elf_link_find_version_dependencies): Remove duplicate
|
||
prototype.
|
||
|
||
2002-03-27 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* coff-arm.c (SWAP_IN_RELOC_OFFSET): Define.
|
||
(SWAP_OUT_RELOC_OFFSET): Define.
|
||
|
||
2002-03-27 Gregory Steuck <greg@nest.cx>
|
||
|
||
* elf.c (_bfd_elf_get_symtab_upper_bound): Leave space for
|
||
terminating NULL if empty symbol table.
|
||
(_bfd_elf_get_dynamic_symtab_upper_bound): Likewise.
|
||
|
||
2002-03-26 H.J. Lu (hjl@gnu.org)
|
||
|
||
* elflink.h (elf_link_input_bfd): Revert the last change since
|
||
the gcc exception handling isn't fixed yet.
|
||
|
||
2002-03-26 H.J. Lu (hjl@gnu.org)
|
||
|
||
* elflink.h (elf_link_input_bfd): Complain about relocations
|
||
against local symbols in discarded sections.
|
||
|
||
2002-03-26 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elflink.h (elf_gc_mark): Don't recurse into non-ELF sections.
|
||
|
||
2002-03-23 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
|
||
section file offset for !SEC_LOAD sections.
|
||
|
||
2002-03-21 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
* elf32-arm.h (elf32_arm_final_link_relocate <case R_ARM_GOTOFF>,
|
||
<case R_ARM_GOT>): Handle relocations to Thumb functions.
|
||
|
||
2002-03-21 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* coff64-rs6000.c (_bfd_xcoff64_put_symbol_name): Prototype.
|
||
Whitespace changes.
|
||
* archive.c: Update copyright date.
|
||
* bfd-in2.h: Regenerate.
|
||
* libbfd.h: Regenerate.
|
||
* Makefile.am: Run "make dep-am"
|
||
* Makefile.in: Regenerate.
|
||
* po/SRC-POTFILES.in: Regenerate.
|
||
|
||
2002-03-20 Daniel Jacobowitz <drow@mvista.com>
|
||
|
||
* dwarf2.c (struct funcinfo): Move up.
|
||
(lookup_address_in_function_table): New argument function_ptr.
|
||
Set it.
|
||
(lookup_address_in_line_table): New argument function. If function
|
||
is non-NULL, use it to handle ``addr'' before the first line note of
|
||
the function.
|
||
(comp_unit_find_nearest_line): Update and swap calls to
|
||
lookup_address_in_function_table and lookup_address_in_line_table.
|
||
* syms.c (_bfd_stab_section_find_nearest_line): Use the first
|
||
N_SLINE encountered if we see an N_FUN before any N_SLINE.
|
||
|
||
2002-03-20 Tom Rix <trix@redhat.com>
|
||
|
||
* coff-rs6000.c (_bfd_xcoff_stat_arch_elt): Renamed from
|
||
_bfd_xcoff_generic_stat_arch_elt. Fix format check.
|
||
* coff64-rs6000.c : Use _bfd_xcoff_stat_arch_elt.
|
||
|
||
2002-03-19 Tom Rix <trix@redhat.com>
|
||
|
||
* xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through all
|
||
dynamic objects in archives.
|
||
|
||
2002-03-19 Hans-Peter Nilsson <hp@bitrange.com>
|
||
|
||
* elflink.h (NAME(bfd_elf,record_link_assignment)): Don't set
|
||
STT_NOTYPE symbols to STT_OBJECT.
|
||
|
||
2002-03-18 Jan Hubicka <jh@suse.cz>
|
||
|
||
* cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64"
|
||
|
||
2002-03-18 Tom Rix <trix@redhat.com>
|
||
|
||
* aix5ppc.core.c : New file for AIX 5 64 bit core support.
|
||
* bfd-in.h : Add bfd_xcoff_ar_archive_set_magic declaration.
|
||
* coff-rs6000 (do_pad) : New function for archive padding.
|
||
(do_copy) : New function for object file copying in archives.
|
||
(do_shared_object_padding) : New function for padding shared
|
||
objects to their text section alignment in archives.
|
||
(bfd_xcoff_ar_achive_set_magic) : Stub.
|
||
(xcoff_write_armap_big) : Use do_copy and do_pad.
|
||
(xcoff_write_archive_contents_big) : Use do_shared_object_padding,
|
||
do_copy and do_pad.
|
||
* coff64-rs6000.c (xcoff64_write_ojbect_contents) : Use
|
||
bfd_xcoff_magic_number.
|
||
(xcoff64_bad_format_hook) : New function for _bfd_bad_format_hook
|
||
fop.
|
||
(xcoff_backend_data_r) : Use xcoff64_bad_format_hook.
|
||
(bfd_xcoff_aix5_backend_data) : New Aix 5 backend data.
|
||
(aix5coff64_vec) : New Aix 5 target aix5coff64-rs6000.
|
||
* rs6000-core.c : Update copyright date.
|
||
* xcofflink.c (bfd_xcoff_size_dynamic_sections): Check for NULL
|
||
csectpp.
|
||
* coffcode.h (coff_new_section_hook) : Use new accessor macros.
|
||
(coff_set_arch_mach_hook) : Add Aix 5 U64_TOCMAGIC magic #.
|
||
(coff_set_flags) : Use bfd_xcoff_magic_number.
|
||
* libxcoff.h (bfd_xcoff_is_xcoff64): Add U64_TOCMAGIC.
|
||
* configure.in : Add powerpc-*-aix5 and rs6000-*-aix5 support.
|
||
* Makefile.am : Same.
|
||
* config.bfd : Same.
|
||
* targets.c : Same.
|
||
* configure : Regnerate.
|
||
* Makefile.in : Same.
|
||
* bfd-in2.h : Same.
|
||
|
||
2002-03-18 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* po/fr.po: Updated version.
|
||
|
||
2002-03-18 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* libbfd.c (bfd_write_bigendian_4byte_int): Return true iff success.
|
||
* libbfd.h: Regenerate.
|
||
* archive.c (coff_write_armap): Pass on failures from
|
||
bfd_write_bigendian_4byte_int.
|
||
|
||
2002-03-14 H.J. Lu <hjl@gnu.org>
|
||
|
||
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the BFD
|
||
error to bfd_error_nonrepresentable_section for reinit_array
|
||
section in DSO.
|
||
|
||
2002-03-14 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* coffcode.h (coff_slurp_symbol_table): When adding BSF_WEAK flag,
|
||
OR it in rather than replacing previously selected flags.
|
||
|
||
* elfxx-target.h (TARGET_BIG_SYM): Set ar_max_namelen to 15.
|
||
(TARGET_LITTLE_SYM): Set ar_max_namelen to 15.
|
||
|
||
2002-03-14 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* cpu-mips.c (mips_compatible): New. Don't check bits_per_word.
|
||
(N): Use the above.
|
||
* elflink.h (elf_bfd_final_link): Revert last change. Instead,
|
||
ensure reloc size matches before calling elf_link_input_bfd.
|
||
Add an assert to check reloc size when counting output relocs.
|
||
|
||
2002-03-14 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* mmo.c (mmo_get_loc): Return NULL rather than false.
|
||
|
||
2002-03-13 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* po/fr.po: Updated version.
|
||
|
||
2002-03-13 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* archures.c (bfd_default_compatible): Test bits_per_word.
|
||
* cpu-i386.c (i386_compatible): Remove. Replace occurrences with
|
||
bfd_default_compatible.
|
||
* cpu-i370.c (i370_compatible): Likewise.
|
||
* cpu-sparc.c (sparc_compatible): Likewise.
|
||
* cpu-h8300.c (compatible): Test in->arch == out->arch.
|
||
|
||
* elflink.h: Formatting fixes.
|
||
(elf_link_output_extsym): Merge undefined and undef weak cases.
|
||
|
||
* elflink.h (elf_bfd_final_link): Only call elf_link_input_bfd
|
||
when word size of input matches output word size.
|
||
|
||
2002-03-12 Andreas Jaeger <aj@suse.de>
|
||
|
||
* cpu-i386.c (i386_compatible): New. Use it instead of
|
||
bfd_default_compatible.
|
||
|
||
2002-03-07 H.J. Lu (hjl@gnu.org)
|
||
|
||
* coff-sh.c (shcoff_reloc_map): Use bfd_reloc_code_real_type
|
||
as the type for bfd_reloc_val.
|
||
|
||
2002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
||
* elf-hppa.h (elf_hppa_is_dynamic_loader_symbol): New function.
|
||
(elf_hppa_relocate_section): Ignore undefined dynamic loader symbols.
|
||
(elf_hppa_final_link_relocate): Correct relocations for indirect
|
||
references to local data through the DLT. Fix .opd creation for
|
||
local symbols using R_PARISC_LTOFF_FPTR32 and R_PARISC_FPTR64
|
||
relocations. Use e_lsel selector for R_PARISC_DLTIND21L,
|
||
R_PARISC_LTOFF_FPTR21L and R_PARISC_LTOFF_TP21L as per
|
||
"Processor-Specific ELF for PA_RISC, Version 1.43" document.
|
||
Similarly, use e_rsel for DLT and LTOFF 'R' relocations.
|
||
* elf32-hppa.c (final_link_relocate): Revise relocation selectors
|
||
as per "Processor-Specific ELF for PA_RISC, Version 1.43" document.
|
||
|
||
2002-03-05 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* merge.c (_bfd_merge_sections): Don't segfault if there
|
||
is nothing to merge due to GC.
|
||
|
||
2002-03-05 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf32-hppa.c (clobber_millicode_symbols): Remove hack to keep
|
||
symbols that have been forced local.
|
||
|
||
* elflink.h (elf_bfd_final_link): Call elf_link_output_extsym
|
||
to output forced local syms for non-shared link.
|
||
(elf_link_output_extsym): Tweak condition for calling backend
|
||
adjust_dynamic_symbol so that previous behaviour is kept.
|
||
Whitespace changes throughout file.
|
||
|
||
2002-03-04 H.J. Lu <hjl@gnu.org>
|
||
|
||
* elf.c (bfd_section_from_shdr): Handle special sections,
|
||
.init_array, .fini_array and .preinit_array.
|
||
(elf_fake_sections): Likewise.
|
||
|
||
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Create the
|
||
DT entry only if the section is in output for .init_array,
|
||
.fini_array and .preinit_array. Complain about .preinit_array
|
||
section in DSO.
|
||
(elf_bfd_final_link): Warn zero size for .init_array,
|
||
.fini_array and .preinit_array sections.
|
||
|
||
* elfxx-ia64.c (elfNN_ia64_section_from_shdr): Remove
|
||
SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY.
|
||
(elfNN_ia64_fake_sections): Remove .init_array, .fini_array and
|
||
.preinit_array.
|
||
|
||
2002-03-04 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* configure.in (WIN32LIBADD): Don't eval PICFLAG assignment.
|
||
* configure: Regenerate.
|
||
|
||
2002-03-02 Tom Rix <trix@redhat.com>
|
||
|
||
* coff64-rs6000.c (xcoff64_howto_table): Replace howto types with
|
||
symbolic equiv.
|
||
* coff-rs6000.c (xcoff_howto_table): Same.
|
||
|
||
2002-03-01 David Mosberger <davidm@hpl.hp.com>
|
||
|
||
* elflink.h (size_dynamic_sections): If section named
|
||
".preinit_array" exists, create DT_PREINIT_ARRAY and
|
||
DT_PREINIT_ARRAYSZ entries in dynamic table. Analogously for
|
||
".init_array" and ".fini_array".
|
||
(elf_bfd_final_link): Handle DT_PREINIT_ARRAYSZ, DT_INIT_ARRAYSZ,
|
||
DT_FINI_ARRAYSZ, DT_PREINIT_ARRAY, DT_INIT_ARRAY, and
|
||
DT_FINI_ARRAY.
|
||
|
||
2002-02-26 Andrew Macleod <amacleod@cygnus.com>
|
||
|
||
* elflink.h (elf_bfd_final_link): Don't crash on SHN_UNDEF local
|
||
dynsyms.
|
||
|
||
2002-02-25 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-hppa.h: Update copyright date.
|
||
|
||
* elf64-ppc.c (ppc64_elf_check_relocs): Warning fix.
|
||
(ppc64_elf_relocate_section): Don't generate power4 style branch
|
||
hints for *_BRTAKEN and *_BRNTAKEN relocs.
|
||
|
||
2002-02-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* elf64-sh64.c (sh_elf64_relocate_section): Fix a typo from my
|
||
last patch.
|
||
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
|
||
|
||
2002-02-21 Andreas Jaeger <aj@suse.de>
|
||
|
||
* elf64-x86-64.c: Major rework that introduces all recent changes
|
||
to the x86-64 backend. Get a closer match to elf32-i386.
|
||
(struct elf64_x86_64_dyn_relocs): Rename from
|
||
elf64_x86_64_pcrel_relocs_copied, add additional fields. Change
|
||
all users.
|
||
(struct elf64_x86_64_link_hash_table): Add short cuts to some
|
||
sections.
|
||
(link_hash_newfunc): Rename from elf64_x86_64_link_hash_newfunc,
|
||
remove casts, initialize new hash members.
|
||
(create_got_section): New.
|
||
(elf64_x86_64_create_dynamic_sections): New.
|
||
(elf64_x86_64_copy_indirect_symbol): New.
|
||
(elf64_x86_64_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. Cache
|
||
pointer to "sreloc" section in elf_section_data. Tweak condition
|
||
under which .got created. Report files with bad relocation
|
||
section names.
|
||
(elf64_x86_64_gc_sweep_hook): Sweep dyn_relocs and local_dynrel.
|
||
Reference count possible .plt entries. Don't deallocate .got and
|
||
.relgot space here.
|
||
(elf64_x86_64_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.
|
||
(WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
|
||
(allocate_dynrelocs): New.
|
||
(readonly_dynrelocs): New.
|
||
(elf64_x86_64_size_dynamic_sections): Call readonly_dynrelocs.
|
||
Allocate space for dyn relocs. Replace BFD_ASSERT with abort.
|
||
Zero out the dynamic allocated content space.
|
||
(elf64_x86_64_discard_copies): Removed.
|
||
(elf64_x86_64_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.
|
||
(elf64_x86_64_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 relocate_section. Expand
|
||
SHN_UNDEF comment. Move expressions out of function calls.
|
||
Replace BFD_ASSERT with abort.
|
||
(bfd_elf64_bfd_final_link): Removed.
|
||
(elf_backend_copy_indirect_symbol): Define.
|
||
|
||
2002-02-20 Tom Rix <trix@redhat.com>
|
||
|
||
* coff-rs6000.c (xcoff_howto_table): Add 16 bit R_BA.
|
||
(_bfd_xcoff_reloc_type_lookup): Use it.
|
||
* coff64-rs6000.c (xcoff64_howto_table): Same.
|
||
(xcoff64_reloc_type_lookup): Same.
|
||
|
||
2002-02-20 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
|
||
|
||
* osf-core.c (osf_core_vec): OSF/1 (Digital Unix) core files are
|
||
little endian.
|
||
|
||
2002-02-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
|
||
|
||
* archures.c (bfd_mach_s390_esa): Rename to bfd_mach_s390_31.
|
||
(bfd_mach_s390_esame): Rename to bfd_mach_s390_64.
|
||
* bfd-in2.h: Regenerate.
|
||
* cpu-s390.c (arch_info_struct): Use renamed architecture defines.
|
||
Replace architecture name "s390" with "s390:31-bit" and "s390:esame"
|
||
with "s390:64-bit".
|
||
* elf32-s390.c (elf_howto_table): Add 32 bit pc relative relocations.
|
||
(elf_s390_reloc_type_lookup): Likewise.
|
||
(elf_s390_check_relocs): Likewise.
|
||
(elf_s390_gc_sweep_hook): Likewise.
|
||
(elf_s390_relocate_section): Likewise.
|
||
(elf_s390_object_p): Use renamed architecture define.
|
||
* elf64-s390.c (elf_s390_object_p): Use renamed architecture define.
|
||
|
||
2002-02-19 Frank Ch. Eigler <fche@redhat.com>
|
||
|
||
* syms.c (stt[]): Sorted. Added .init/.fini -> "t" mapping.
|
||
|
||
2002-02-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Enable
|
||
absptr -> pcrel optimization for shared libs.
|
||
Only create minimal .eh_frame_hdr if absptr FDE encoding in shared
|
||
library cannot be converted to pcrel.
|
||
(_bfd_elf_eh_frame_section_offset): Return -2 if making absptr
|
||
relative.
|
||
* elf32-i386.c (elf_i386_relocate_section): If
|
||
_bfd_elf_section_offset returned -2, skip, but make sure the
|
||
relocation is installed.
|
||
* elf32-arm.h (elf32_arm_final_link_relocate): Likewise.
|
||
* 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-ppc.c (ppc_elf_relocate_section): Likewise.
|
||
* elf32-s390.c (elf_s390_relocate_section): Likewise.
|
||
* elf32-sh.c (sh_elf_relocate_section): Likewise.
|
||
* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
|
||
* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
|
||
* elf64-s390.c (elf_s390_relocate_section): Likewise.
|
||
* elf64-sh64.c (sh_elf64_relocate_section): Likewise.
|
||
* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
|
||
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
|
||
* elf64-alpha.c (elf64_alpha_relocate_section): Handle
|
||
_bfd_elf_section_offset returning -2 the same way as -1.
|
||
* elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise.
|
||
* elf32-mips.c (mips_elf_create_dynamic_relocation): Add FIXME
|
||
and BFD_ASSERT.
|
||
* elf64-mips.c (mips_elf64_create_dynamic_relocation): Likewise.
|
||
|
||
2002-02-18 Tom Rix <trix@redhat.com>
|
||
|
||
* xcofflink.c (bfd_xcoff_link_gernate_rtinit): Add -brtl support.
|
||
(bfd_xcoff_size_dynamic_sections): Same.
|
||
* bfd-in.h (bfd_xcoff_link_generate_rtinit): Same.
|
||
(bfd_xcoff_size_dynamic_sections): Same.
|
||
* coff-rs6000.c (xcoff_generate_rtinit): Same.
|
||
* coff-rs646000.c (xcoff64_generate_rtinit): Same.
|
||
* libxcoff.h (struct xcoff_backend_data_rec): Same.
|
||
* xcofflink.c (xcoff_build_ldsyms, xcoff_link_add_symbols): Clean.
|
||
* bfd-in2.h: Regenerate.
|
||
|
||
2002-02-18 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (STFD_FR0_0R1, LFD_FR0_0R1, BLR): Define.
|
||
(struct ppc_link_hash_table): Add sfpr.
|
||
(ppc64_elf_link_hash_table_create): Init it.
|
||
(ppc64_elf_create_dynamic_sections): Split creation of .stub and
|
||
.glink out to..
|
||
(create_linkage_sections): ..here. Make .sfpr too.
|
||
(ppc64_elf_check_relocs): Call create_linkage_sections, and set
|
||
dynobj early.
|
||
(MIN_SAVE_FPR, MAX_SAVE_FPR): Define.
|
||
(ppc64_elf_func_desc_adjust): Look for missing ._savef* and
|
||
._restf* functions, and create as needed.
|
||
(func_desc_adjust): Only force_local for shared libs.
|
||
|
||
2002-02-18 David O'Brien <obrien@FreeBSD.org>
|
||
|
||
* configure.in: Bump version number post 2.12 branching.
|
||
* configure: Regenerate.
|
||
|
||
2002-02-17 Hans-Peter Nilsson <hp@bitrange.com>
|
||
|
||
* mmo.c: Correct and improve comments.
|
||
(mmo_write_chunk): Store trailing byte in bfd buffer; don't
|
||
zero-pad. Use input to fill up non-empty bfd buffer.
|
||
(mmo_flush_chunk): New function.
|
||
(mmo_write_loc_chunk): Add parameter last_vmap, all callers
|
||
changed. Don't emit location specifier if VMA is same as
|
||
*LAST_VMAP after omitting leading zero contents. Call
|
||
mmo_flush_chunk before emitting location specifier.
|
||
(mmo_write_loc_chunk_list): Call mmo_flush_chunk when finished
|
||
with mmo_write_loc_chunk calls.
|
||
(mmo_internal_write_section): Call mmo_flush_chunk after
|
||
mmo_write_chunk.
|
||
(mmo_write_symbols_and_terminator): Move :Main to first position
|
||
in symbol array. Add faked one if it does not exist if there are
|
||
other symbols. Don't add it if there are no symbols at all. Move
|
||
out test for value of :Main from symbol loop. Rename table
|
||
fakemain to maintable and variable mainsym to fakemain.
|
||
|
||
2002-02-15 Richard Henderson <rth@redhat.com>
|
||
|
||
* elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: A target
|
||
section with no got matches any got. Simplify error generaion.
|
||
|
||
2002-02-15 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
Support arbitrary length fill patterns.
|
||
* linker.c (bfd_new_link_order): Zero all fields with bfd_zalloc.
|
||
(_bfd_default_link_order): Remove bfd_fill_link_order code.
|
||
Call default_data_link_order.
|
||
(default_fill_link_order): Delete.
|
||
(default_data_link_order): New function.
|
||
* elf32-mips.c (_bfd_mips_elf_final_link): Replace occurrences
|
||
of bfd_fill_link_order with bfd_data_link_order.
|
||
* elf64-alpha.c (elf64_alpha_final_link): Likewise.
|
||
* elf64-mips.c (mips_elf64_final_link): Likewise.
|
||
|
||
* bfd.c (bfd_scan_vma): Clamp overflows to max bfd_vma value.
|
||
Correct value returned in "end" for "0x<non-hex>".
|
||
|
||
2002-02-14 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* cpu-arm.c (processors): Replace 'arch' field with 'mach'.
|
||
(scan): Test against 'mach' field in info structure.
|
||
|
||
2002-02-14 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf.c (elf_fake_sections): Use SHT_NOBITS when SEC_NEVER_LOAD.
|
||
|
||
2002-02-14 Matt Fredette <fredette@netbsd.org>
|
||
|
||
* elf32-m68k.c (elf32_m68k_print_private_bfd_data): Recognize
|
||
EF_M68000.
|
||
|
||
2002-02-13 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* elf.c (_bfd_elf_make_section_from_shdr): Do not insist on
|
||
non-zero physical addresses when adjusting the LMAs of new
|
||
sections.
|
||
|
||
2002-02-12 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
||
* elf-hppa.h (elf_hppa_reloc_final_type): New function stripped
|
||
from _bfd_elf_hppa_gen_reloc_type.
|
||
(_bfd_elf_hppa_gen_reloc_type): Remove duplicate prototype.
|
||
* elf32-hppa.h (elf32_hppa_reloc_final_type): Add protptype.
|
||
* elf32-hppa.c: Include elf32-hppa.h before elf-hppa.h.
|
||
* elf64-hppa.h (elf64_hppa_reloc_final_type): Add protptype.
|
||
|
||
2002-02-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
||
* elf-m10300.c (mn10300_elf_relax_section): Skip section before
|
||
loading its contents if there's nothing to do in it.
|
||
|
||
2002-02-12 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (ppc64_elf_size_stubs): Correct test for crossing
|
||
64k boundary.
|
||
|
||
* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Add dynamic
|
||
DT_PPC64_OPD and DT_PPC64_OPDSZ tags.
|
||
(ppc64_elf_finish_dynamic_sections): Set values for them.
|
||
|
||
2002-02-11 Michael Snyder <msnyder@redhat.com>
|
||
|
||
* elf-bfd.h (elfcore_write_lwpstatus): Add prototype.
|
||
* elf.c (elfcore_grok_pstatus): Add prototype.
|
||
(elfcore_grok_lwpstatus): Add prototype.
|
||
(elfcore_write_lwpstatus): New function.
|
||
(elfcore_write_pstatus): Fix typo, eliminate unnecessary memcpy.
|
||
|
||
2002-02-11 Alexandre Oliva <aoliva@redhat.com>
|
||
|
||
* elf32-sh.c: Added missing prototypes.
|
||
* elf32-sh64.c: Likewise.
|
||
(sh_elf_align_loads): Mark unused args as such.
|
||
* elf64-sh64.c: Added missing prototypes.
|
||
(struct elf_sh64_link_hash_entry): Fix typo.
|
||
(sh_elf64_relocate_section): Fix info argument passed to
|
||
_bfd_elf_section_offset.
|
||
|
||
2002-02-11 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* Makefile.am: "make dep-am".
|
||
* Makefile.in: Regenerate.
|
||
* aclocal.m4: Regenerate.
|
||
* config.in: Regenerate.
|
||
* configure: Regenerate.
|
||
|
||
2002-02-10 Daniel Jacobowitz <drow@mvista.com>
|
||
|
||
* coff-rs6000.c (xcoff_generate_rtinit): Silence uninitialized
|
||
variable warnings.
|
||
* elf32-sh.c (sh_elf_relax_section): Silence signed/unsigned
|
||
comparison warning.
|
||
* trad-core.c (trad_unix_core_file_p): Silence pointer/integer
|
||
cast warnings for the common case.
|
||
|
||
2002-02-10 Hans-Peter Nilsson <hp@bitrange.com>
|
||
|
||
* config.bfd (sh-*-linux*, sh-*-elf* | sh-*-rtemself*): Add sh64
|
||
vectors.
|
||
(sh-*-netbsdelf*): New, to trump sh*-*-netbsdelf* and add sh64
|
||
vectors.
|
||
|
||
2002-02-09 Richard Henderson <rth@redhat.com>
|
||
|
||
* elf64-alpha.c (elf64_alpha_howto): Add R_ALPHA_BRSGP.
|
||
(elf64_alpha_reloc_map, elf64_alpha_check_relocs): Likewise.
|
||
(elf64_alpha_relocate_section): Likewise.
|
||
* reloc.c (BFD_RELOC_ALPHA_BRSGP): New.
|
||
* bfd-in2.h, libbfd.h: Rebuild.
|
||
|
||
2002-02-09 Hans-Peter Nilsson <hp@bitrange.com>
|
||
|
||
* elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): Check
|
||
that base-plus-offset reloc accounting is consistent.
|
||
(mmix_elf_relax_section): Keep base-plus-offset reloc accounting
|
||
up to date for undefined symbols.
|
||
|
||
2002-02-08 Eric Christopher <echristo@redhat.com>
|
||
|
||
From Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
||
* elf32-mips.c (_bfd_mips_elf_fake_sections): Don't create .rela
|
||
sections for the O32 ABI.
|
||
|
||
2002-02-08 Chris Demetriou <cgd@broadcom.com>
|
||
|
||
* elf32-arm.h: Fix formatting of _("...").
|
||
* elf32-d10v.c: Likewise.
|
||
* elf32-m68k.c: Likewise.
|
||
* elf32-mips.c: Likewise.
|
||
|
||
2002-02-08 Ivan Guzvinec <ivang@opencores.org>
|
||
|
||
* coff-or32.c: Fix compile time warning messages.
|
||
|
||
2002-02-08 Alexandre Oliva <aoliva@redhat.com>
|
||
|
||
Contribute sh64-elf.
|
||
2002-01-23 Alexandre Oliva <aoliva@redhat.com>
|
||
* reloc.c (R_SH_GOTPLT32, R_SH_GOT_LOW16, R_SH_GOT_MEDLOW16,
|
||
R_SH_GOT_MEDHI16, R_SH_GOT_HI16, R_SH_GOTPLT_LOW16,
|
||
R_SH_GOTPLT_MEDLOW16, R_SH_GOTPLT_MEDHI16, R_SH_GOTPLT_HI16,
|
||
R_SH_PLT_LOW16, R_SH_PLT_MEDLOW16, R_SH_PLT_MEDHI16,
|
||
R_SH_PLT_HI16, R_SH_GOTOFF_LOW16, R_SH_GOTOFF_MEDLOW16,
|
||
R_SH_GOTOFF_MEDHI16, R_SH_GOTOFF_HI16, R_SH_GOTPC_LOW16,
|
||
R_SH_GOTPC_MEDLOW16, R_SH_GOTPC_MEDHI16, R_SH_GOTPC_HI16,
|
||
R_SH_GOT10BY4, R_SH_GOTPLT10BY4, R_SH_GOT10BY8, R_SH_GOTPLT10BY8,
|
||
R_SH_COPY64, R_SH_GLOB_DAT64, R_SH_JMP_SLOT64, R_SH_RELATIVE64):
|
||
New relocs.
|
||
* libbfd.h, bfd-in2.h: Rebuilt.
|
||
* elf32-sh.c (sh_elf_howto_table): Define new relocs.
|
||
(sh_reloc_map): Map them.
|
||
(PLT_ENTRY_SIZE, elf_sh_plt0_entry_be, elf_sh_plt0_entry_le,
|
||
elf_sh_plt_entry_be, elf_sh_plt_entry_le, elf_sh_pic_plt_entry_be,
|
||
elf_sh_pic_plt_entry_le, elf_sh_plt0_entry, elf_sh_plt_entry,
|
||
elf_sh_pic_plt_entry, elf_sh_sizeof_plt, elf_sh_plt_plt0_offset,
|
||
elf_sh_plt0_gotplt_offset, elf_sh_plt_temp_offset,
|
||
elf_sh_plt_symbol_offset, elf_sh_plt_reloc_offset,
|
||
movi_shori_putval) [INCLUDE_SHMEDIA]: New.
|
||
(elf_sh_link_hash_entry) [INCLUDE_SHMEDIA]: Add
|
||
datalabel_got_offset.
|
||
(sh_elf_link_hash_newfunc): Initialize it.
|
||
(sh_elf_relocate_section): Augment the scope of
|
||
seen_stt_datalabel. Introduce GOTPLT support. Extend GOTPC, PLT,
|
||
GOT and GOTOFF handling to new SHmedia relocation types. Support
|
||
GOT_BIAS.
|
||
(sh_elf_check_relocs): Likewise.
|
||
(sh_elf_finish_dynamic_symbol) [TARGET_SHMEDIA]: Set up values in
|
||
PLT entries using movi_shori_putval. Support GOT_BIAS.
|
||
(sh_elf_finish_dynamic_sections): Likewise.
|
||
* elf32-sh64.c (shmedia_prepare_reloc): Do not add addend to
|
||
relocation, it's now done by the caller.
|
||
(GOT_BIAS): New.
|
||
* elf64-sh64.c (GOT_BIAS, PLT_ENTRY_SIZE, elf_sh64_sizeof_plt,
|
||
elf_sh64_plt_plt0_offset, elf_sh64_plt0_gotplt_offset,
|
||
elf_sh64_plt_temp_offset, elf_sh64_plt_symbol_offset,
|
||
elf_sh64_plt_reloc_offset, ELF_DYNAMIC_INTERPRETER,
|
||
elf_sh64_pcrel_relocs_copied, elf_sh64_link_hash_entry,
|
||
elf_sh64_link_hash_table, sh64_elf64_link_hash_traverse,
|
||
sh64_elf64_hash_table): New.
|
||
(sh_elf64_howto_table): Introduce new relocs.
|
||
(sh_elf64_info_to_howto): Accept new PIC relocs.
|
||
(sh_elf64_relocate_section): Augment the scope of
|
||
seen_stt_datalabel. Support new PIC relocs.
|
||
(sh_elf64_check_relocs): Support new PIC relocs.
|
||
(elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le,
|
||
elf_sh64_plt_entry_be, elf_sh64_plt_entry_le,
|
||
elf_sh64_pic_plt_entry_be, elf_sh64_pic_plt_entry_le,
|
||
elf_sh64_plt0_entry, elf_sh64_plt_entry, elf_sh64_pic_plt_entry,
|
||
sh64_elf64_link_hash_newfunc, sh64_elf64_link_hash_table_create,
|
||
movi_shori_putval, movi_3shori_putval,
|
||
sh64_elf64_create_dynamic_sections,
|
||
sh64_elf64_adjust_dynamic_symbol, sh64_elf64_discard_copies,
|
||
sh64_elf64_size_dynamic_sections,
|
||
sh64_elf64_finish_dynamic_symbol,
|
||
sh64_elf64_finish_dynamic_sections): New.
|
||
(elf_backend_create_dynamic-sections,
|
||
bfd_elf64_bfd_link_hash_table_create,
|
||
elf_backend_adjust_dynamic_symbol,
|
||
elf_backend_size_dynamic_sections,
|
||
elf_backend_finish_dynamic_symbol,
|
||
elf_backend_finish_dynamic_sections, elf_backend_want_got_plt,
|
||
elf_backend_plt_readonly, elf_backend_want_plt_sym,
|
||
elf_backend_got_header_size, elf_backend_plt_header_size):
|
||
Define.
|
||
2001-05-16 Alexandre Oliva <aoliva@redhat.com>
|
||
* elf32-sh.c: Renumbered and renamed some SH5 relocations to
|
||
match official numbers and names; moved unmaching ones to the
|
||
range 0xf2-0xff.
|
||
* elf32-sh64.c, elf64-sh64.c: Likewise.
|
||
2001-03-12 DJ Delorie <dj@redhat.com>
|
||
* elf32-sh.c (sh_elf_relax_section): Don't relax SHmedia
|
||
sections.
|
||
2001-03-12 DJ Delorie <dj@redhat.com>
|
||
* elf32-sh64.c (shmedia_prepare_reloc): Validate relocs that must
|
||
be aligned.
|
||
* elf64-sh64.c (sh_elf64_relocate_section): Ditto.
|
||
2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* elf32-sh64.c (bfd_elf32_bfd_copy_private_section_data): Define.
|
||
(sh64_elf_fake_sections): Set type to SHT_SH5_CR_SORTED for a
|
||
.cranges section with SEC_SORT_ENTRIES set.
|
||
(sh64_backend_section_from_shdr): Set SEC_SORT_ENTRIES on an
|
||
incoming sorted .cranges section.
|
||
(sh64_bfd_elf_copy_private_section_data): New.
|
||
(sh64_elf_final_write_processing): Only sort .cranges and modify
|
||
start address if called by linker.
|
||
2001-01-08 Ben Elliston <bje@redhat.com>
|
||
* elf32-sh64.c (sh64_elf_final_write_processing): Activate
|
||
Hans-Peter Nilsson's set bit 0 patch from 2001-01-06.
|
||
* elf64-sh64.c (sh64_elf64_final_write_processing): Ditto.
|
||
2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* elf64-sh64.c (sh_elf64_howto_table): No open brace at start of
|
||
line. Add comments before all entries.
|
||
<R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct and clarify describing
|
||
comment.
|
||
(sh_elf64_reloc): Correct head comment.
|
||
(sh_elf64_relocate_section): Correct spacing.
|
||
<relocating for a local symbol>: Do not honour STO_SH5_ISA32;
|
||
instead call reloc_dangerous callback.
|
||
<case R_SH_SHMEDIA_CODE>: New case.
|
||
(sh_elf64_gc_mark_hook): Correct spacing.
|
||
(sh_elf64_check_relocs): Ditto.
|
||
* elf32-sh64.c (shmedia_prepare_reloc) <case R_SH_SHMEDIA_CODE>:
|
||
New case.
|
||
* elf32-sh.c: Correct #endif comments for #ifndef-wrapped
|
||
functions.
|
||
(sh_elf_howto_table) <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct,
|
||
clarify describing comment. Add comments before all entries.
|
||
(sh_elf_relocate_section) <relocating for a local symbol>: Do not
|
||
honour STO_SH5_ISA32; instead call reloc_dangerous callback.
|
||
2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
Sort .cranges section in final link. Prepare to set bit 0 on
|
||
entry address.
|
||
* elf32-sh64.c (struct sh64_find_section_vma_data): New.
|
||
(sh64_elf_link_output_symbol_hook): Fix typo in prototype.
|
||
(sh64_elf_set_mach_from_flags): Set SEC_DEBUGGING on incoming
|
||
.cranges section.
|
||
(sh64_backend_section_from_shdr): New, to recognize
|
||
SHT_SH5_CR_SORTED on incoming .cranges section.
|
||
(elf_backend_section_from_shdr): Define.
|
||
(sh64_elf_final_write_processing): Sort outgoing .cranges
|
||
section. (New, temporarily disabled:) Set bit 0 on entry address
|
||
according to ISA type.
|
||
(sh64_find_section_for_address): New.
|
||
(crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb,
|
||
crange_bsearch_cmpl): Move here from opcodes/sh64-dis.c.
|
||
(sh64_address_in_cranges): Move here from opcodes/sh64-dis.c. Use
|
||
bfd_malloc, not xmalloc.
|
||
(sh64_get_contents_type): Move here from opcodes/sh64-dis.c. Make
|
||
global.
|
||
* elf32-sh64.c (sh64_elf64_final_write_processing): New, (but
|
||
temporarily disabled) setting bit 0 on entry address.
|
||
(elf_backend_final_write_processing): Define.
|
||
2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* elf32-sh.c (sh_elf_howto_table) <R_SH_PT_16>: Adjust fields to
|
||
be a proper relocation for PTA and PTB rather than a marker.
|
||
<R_SH_IMMU5, R_SH_IMMS6, R_SH_IMMU6, R_SH_IMMS10, R_SH_IMMS10BY2,
|
||
R_SH_IMMS10BY4, R_SH_IMMS10BY8, R_SH_IMMS16, R_SH_IMMU16,
|
||
R_SH_IMM_LOW16, R_SH_IMM_LOW16_PCREL, R_SH_IMM_MEDLOW16,
|
||
R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16, R_SH_IMM_MEDHI16_PCREL,
|
||
R_SH_IMM_HI16, R_SH_IMM_HI16_PCREL, R_SH_64, R_SH_64_PCREL>:
|
||
Zero src_mask.
|
||
* elf64-sh64.c: Ditto.
|
||
(sh_elf64_relocate_section) <case R_SH_PT_16>: New case.
|
||
* elf32-sh64.c: Include opcodes/sh64-opc.h
|
||
(shmedia_prepare_reloc): Take a bfd_link_info pointer as first
|
||
argument. Drop const qualifiers from "bfd *" and "bfd_byte *"
|
||
parameters. No unused parameters. Caller changed.
|
||
<case R_SH_PT_16>: New case.
|
||
* Makefile.am (elf32-sh64.lo): Add dependency on sh64-opc.h.
|
||
* Makefile.in: Regenerate.
|
||
2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* elf64-sh64.c (sh64_elf64_fake_sections): Set SHF_SH5_ISA32 for
|
||
all code sections.
|
||
(sh_elf64_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
|
||
(sh64_elf_merge_private_data): Ditto.
|
||
* elf32-sh64.c (sh64_elf_fake_sections): Use sh64_elf_section_data
|
||
to access stored section flags.
|
||
(sh64_elf_final_write_processing): Return immediately unless
|
||
called by linker. Use sh64_elf_section_data (cranges) to get size
|
||
of linker-generated cranges entries.
|
||
(sh64_elf_copy_private_data): Add missing "return true".
|
||
(sh64_elf_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
|
||
(sh_elf64_merge_private_data): Ditto.
|
||
2000-12-19 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* elf64-sh64.c (sh64_elf64_fake_sections): New, copy of
|
||
elf64-sh64.c:sh64_elf_fake_sections.
|
||
(elf_backend_fake_sections): Define as sh64_elf64_fake_sections.
|
||
2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* elf32-sh64.c (sh64_elf_copy_private_data_internal): Delete.
|
||
(sh64_elf_final_write_processing): New.
|
||
(elf_backend_final_write_processing): Define.
|
||
(sh64_elf_fake_sections): Get header flags from tdata field.
|
||
(sh64_elf_copy_private_data): Do not call
|
||
sh64_elf_copy_private_data_internal, just copy e_flags field.
|
||
(sh64_elf_merge_private_data): Do not call
|
||
sh64_elf_copy_private_data_internal.
|
||
2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
Remove EF_SH64_ABI64, let ELF size make difference.
|
||
Remove SH64-specific BFD section flag.
|
||
* elf32-sh64.c (sh64_elf_fake_sections): Recognize section as
|
||
containing SHmedia through elf_section_data (asect)->tdata
|
||
non-zero, not using a BFD section flag.
|
||
(sh64_elf_set_mach_from_flags): Don't recognize EF_SH64_ABI64.
|
||
(sh64_elf_merge_private_data): Similar.
|
||
(elf_backend_section_flags): Don't define.
|
||
(sh64_elf_backend_section_flags): Delete.
|
||
* elf64-sh64.c (sh_elf64_set_mach_from_flags): Recognize EF_SH64,
|
||
not EF_SH64_ABI64.
|
||
(sh_elf64_merge_private_data): Similar.
|
||
* section.c (Section flags definitions): Don't define
|
||
SEC_SH_ISA_SHMEDIA.
|
||
(bfd-in2.h): Regenerate.
|
||
2000-12-09 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
Make DataLabel references work with partial linking.
|
||
* elf32-sh64.c: Fix formatting.
|
||
(sh64_elf_link_output_symbol_hook): New.
|
||
(elf_backend_link_output_symbol_hook): Define to
|
||
sh64_elf_link_output_symbol_hook.
|
||
(sh64_elf_add_symbol_hook): Make DataLabel symbol just global
|
||
undefined if partial linking. Adjust sanity check.
|
||
* elf64-sh64.c (sh64_elf64_link_output_symbol_hook): New.
|
||
(elf_backend_link_output_symbol_hook): Define to
|
||
sh64_elf64_link_output_symbol_hook.
|
||
(sh64_elf64_add_symbol_hook): Make DataLabel symbol just global
|
||
undefined if partial linking. Adjust sanity check.
|
||
2000-12-07 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
Implement semantics for inter-file DataLabel references.
|
||
* elf64-sh64.c (DATALABEL_SUFFIX): Define.
|
||
(sh64_elf64_add_symbol_hook): New.
|
||
(sh_elf64_relocate_section): If passing an indirect symbol with
|
||
st_type STT_DATALABEL on the way to a symbol with st_other
|
||
STO_SH5_ISA32, do not bitor 1 to the relocation.
|
||
(elf_backend_add_symbol_hook): Define to
|
||
sh64_elf64_add_symbol_hook.
|
||
* elf64-sh32.c: Tweak comments.
|
||
(DATALABEL_SUFFIX): Define.
|
||
(sh64_elf_add_symbol_hook): New.
|
||
(elf_backend_add_symbol_hook): Define to sh64_elf_add_symbol_hook.
|
||
* elf32-sh.c (sh_elf_relocate_section): If passing an indirect
|
||
symbol with st_type STT_DATALABEL on the way to a symbol with
|
||
st_other STO_SH5_ISA32, do not bitor 1 to the relocation.
|
||
2000-12-05 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
Pass through STT_DATALABEL.
|
||
* elf32-sh64.c (sh64_elf_get_symbol_type): New.
|
||
(elf_backend_get_symbol_type): Define.
|
||
* elf64-sh64.c (sh64_elf64_get_symbol_type): New.
|
||
(elf_backend_get_symbol_type): Define.
|
||
2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* elf32-sh64.c: Tweak comments.
|
||
(sh64_elf_copy_private_data_internal): Add prototype.
|
||
(bfd_elf32_bfd_set_private_flags): Define.
|
||
(sh64_elf_copy_private_data_internal): Compare machine name, not
|
||
textual BFD target name, to check whether to copy section flag
|
||
SHF_SH5_ISA32.
|
||
(sh64_elf_merge_private_data): Validize bfd_get_arch_size.
|
||
Tweak section-contents-type-mismatch message.
|
||
(shmedia_prepare_reloc): Add ATTRIBUTE_UNUSED markers.
|
||
Validize reloc-types.
|
||
* elf64-sh64.c: New file.
|
||
* targets.c (bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec): Declare.
|
||
* Makefile.am (BFD64_BACKENDS): Add elf64-sh64.lo.
|
||
(BFD64_BACKENDS_CFILES): Add elf64-sh64.c.
|
||
Regenerate dependencies.
|
||
* Makefile.in: Regenerate.
|
||
* config.bfd (sh64-*-elf*): Add bfd_elf64_sh64_vec and
|
||
bfd_elf64_sh64l_vec.
|
||
* configure.in: Handle bfd_elf64_sh64_vec and
|
||
bfd_elf64_sh64l_vec.
|
||
* configure: Regenerate.
|
||
* po/POTFILES.in: Regenerate.
|
||
* po/bfd.pot: Regenerate.
|
||
2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* elf32-sh64.c (sh64_elf_set_mach_from_flags): Do not recognize
|
||
anything else but EF_SH64 and EF_SH64_ABI64.
|
||
(sh64_elf_merge_private_data): Emit error for anything else but
|
||
EF_SH64 and EF_SH64_ABI64.
|
||
* config.bfd: Remove bfd_elf32_shblin_vec and bfd_elf32_shlin_vec
|
||
from targ_selvecs.
|
||
* configure.in: Add cofflink.lo to bfd_elf32_sh64_vec and
|
||
bfd_elf32_sh64l_vec as a temporary measure.
|
||
* configure: Regenerate.
|
||
2000-11-27 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* cpu-sh.c (arch_info_struct): Include sh5 item
|
||
unconditionalized.
|
||
* config.bfd (sh64-*-elf*): Do not set targ_cflags.
|
||
Add targ_selvecs bfd_elf32_sh_vec, bfd_elf32_shl_vec,
|
||
bfd_elf32_shblin_vec and bfd_elf32_shlin_vec.
|
||
* elf32-sh64.c: Tweak comments.
|
||
(sh64_elf_set_mach_from_flags): Recognize all machine flags that
|
||
are proper subsets of SH64 as bfd_mach_sh5. Add EF_SH64_ABI64.
|
||
(sh64_elf_copy_private_data_internal): Wrap long line.
|
||
(sh64_elf_merge_private_data): Rewrite to allow objects from
|
||
SH64 subsets to be linked together.
|
||
(INCLUDE_SHMEDIA): Define.
|
||
* elf32-sh.c (sh_elf_relocate_section) <local symbol>:
|
||
Parenthesize plus-expression inside or-expression.
|
||
<global symbol>: Ditto.
|
||
(sh_elf_set_mach_from_flags): Remove code refusing
|
||
deleted EF_SH64_32BIT_ABI flag.
|
||
2000-11-26 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* elf32-sh.c (sh_elf_howto_table) <R_SH_IMM_LOW16_PCREL,
|
||
R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16_PCREL,
|
||
R_SH_IMM_HI16_PCREL, R_SH_64_PCREL>: Set pcrel_offset to true.
|
||
(sh_elf_relocate_section) <local symbol>: Or 1 in
|
||
calculation of relocation if sym->st_other & STO_SH5_ISA32.
|
||
<global symbol>: Ditto if h->other & STO_SH5_ISA32.
|
||
* elf32-sh64.c (shmedia_prepare_reloc): Add rel->r_addend to
|
||
relocation.
|
||
2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
|
||
* Makefile.am (BFD32_BACKENDS): Add elf32-sh64.lo.
|
||
(BFD32_BACKENDS_CFILES): Add elf32-sh64.c.
|
||
Regenerate dependencies.
|
||
* Makefile.in: Regenerate.
|
||
* archures.c: Add bfd_mach_sh5.
|
||
* config.bfd: Map targ_cpu sh* to bfd_sh_arch.
|
||
Handle sh64-*-elf*. Set targ_cflags to -DINCLUDE_SHMEDIA.
|
||
* configure.in: Handle bfd_elf32_sh64_vec and bfd_elf32_sh64l_vec.
|
||
* configure: Regenerate.
|
||
* reloc.c (BFD_RELOC_SH_SHMEDIA_CODE, BFD_RELOC_SH_IMMU5,
|
||
BFD_RELOC_SH_IMMS6, BFD_RELOC_SH_IMMS6BY32, BFD_RELOC_SH_IMMU6,
|
||
BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
|
||
BFD_RELOC_SH_IMMS10BY4, BFD_RELOC_SH_IMMS10BY8,
|
||
BFD_RELOC_SH_IMMS16, BFD_RELOC_SH_IMMU16, BFD_RELOC_SH_IMM_LOW16,
|
||
BFD_RELOC_SH_IMM_LOW16_PCREL, BFD_RELOC_SH_IMM_MEDLOW16,
|
||
BFD_RELOC_SH_IMM_MEDLOW16_PCREL, BFD_RELOC_SH_IMM_MEDHI16,
|
||
BFD_RELOC_SH_IMM_MEDHI16_PCREL, BFD_RELOC_SH_IMM_HI16,
|
||
BFD_RELOC_SH_IMM_HI16_PCREL, BFD_RELOC_SH_PT_16): New relocations.
|
||
* cpu-sh.c [INCLUDE_SHMEDIA] (arch_info_struct): Define and link
|
||
in item for SH5.
|
||
* elf32-sh.c [INCLUDE_SHMEDIA] (sh_elf_howto_table): Add howto items
|
||
for SHmedia relocs.
|
||
[INCLUDE_SHMEDIA] (sh_rel): Add mappings for SHmedia relocs.
|
||
[INCLUDE_SHMEDIA] (sh_elf_relocate_section) [default]: Call
|
||
shmedia_prepare_reloc, goto final_link_relocate if it returns
|
||
non-zero, else fail as before.
|
||
(sh_elf_set_mach_from_flags): Provide function only if not defined
|
||
as macro. Do not recognize objects with EF_SH64_32BIT_ABI set.
|
||
(sh_elf_set_private_flags): Provide function only if not defined
|
||
as a macro.
|
||
(sh_elf_copy_private_data): Similar.
|
||
(sh_elf_merge_private_data): Similar.
|
||
* section.c (SEC_SH_ISA_SHMEDIA): New.
|
||
* targets.c (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec): Declare.
|
||
* elf32-sh64.c: New file.
|
||
* libbfd.h: Regenerate.
|
||
* bfd-in2.h: Regenerate.
|
||
* po/POTFILES.in: Regenerate.
|
||
* po/bfd.pot: Regenerate.
|
||
* bfd-in2.h: Regenerate.
|
||
* libbfd.h: Regenerate.
|
||
|
||
2002-02-07 Daniel Jacobowitz <drow@mvista.com>
|
||
|
||
* bfd-in.h: Update <stdbool.h> check to only see if <stdbool.h> has
|
||
been included, not drag it in.
|
||
* bfd-in2.h: Regenerate.
|
||
|
||
2002-02-06 H.J. Lu (hjl@gnu.org)
|
||
|
||
* elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Update
|
||
the mach and ISA fields if necessary.
|
||
|
||
2002-02-06 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* coffcode.h (coff_set_arch_mach_hook): Select the highest known
|
||
ARM architecture when an F_ARM_5 flag is detected, since we cannot
|
||
be sure exactly which architecture this represents.
|
||
|
||
2002-02-05 Nick Clifton <nickc@redhat.com>
|
||
|
||
* po/tr.po: Updated translation.
|
||
|
||
2002-02-05 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
From Jimi X <jimix@watson.ibm.com>
|
||
* archures (bfd_mach_ppc64): Define.
|
||
(bfd_powerpc_arch): Rename to bfd_powerpc_archs.
|
||
(bfd_powerpc_arch): Define.
|
||
* bfd-in2.h: Regenerate.
|
||
* cpu-powerpc.c (arch_info_struct): Rename to bfd_powerpc_archs.
|
||
(bfd_powerpc_arch): Move to tail of bfd_powerpc_archs.
|
||
(bfd_powerpc_archs): Add default powerpc64 arch.
|
||
|
||
2002-02-05 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Check for relocs
|
||
against section syms in readonly sections. Don't do the global
|
||
sym check if we find one.
|
||
* elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
|
||
* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
|
||
* elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
|
||
* elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
|
||
(elf_s390_grok_prstatus): Add missing prototype.
|
||
|
||
2002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
|
||
|
||
* elf64-mmix.c (mmix_dump_bpo_gregs): New function.
|
||
(mmix_elf_check_common_relocs) <case R_MMIX_BASE_PLUS_OFFSET>:
|
||
Call bfd_get_section_by_name only once. Initialize
|
||
bpodata->n_bpo_relocs_this_section.
|
||
(_bfd_mmix_prepare_linker_allocated_gregs): Remove comment
|
||
referring to DSOs.
|
||
(bpo_reloc_request_sort_fn): Don't use difference of values as
|
||
return-value.
|
||
|
||
2002-02-02 David O'Brien <obrien@FreeBSD>
|
||
|
||
* configure.in: Tweak the FreeBSD 4.x recognition more. Only treat
|
||
version 4.5 and later the same as 5-CURRENT.
|
||
* configure: Re-generate.
|
||
|
||
2002-02-02 Jason Thorpe <thorpej@wasabisystems.com>
|
||
|
||
* config.bfd (hppa*-*-netbsd*): New target.
|
||
|
||
2002-01-31 Philipp Thomas <pthomas@suse.de>
|
||
|
||
* coff-arm.c (coff_arm_merge_private_bfd_data): Move ERROR
|
||
to front of message. Unify messages with elf32-arm.h. Use
|
||
commas where neccessary.
|
||
* elf32-arm.h (elf32_arm_merge_private_bfd_data): Use all upcase
|
||
ERROR in messages. Unify messages with coff-arm.c. Correct
|
||
VFP/FPA error message.
|
||
(elf32_arm_print_private_bfd_data): Don't mark APCS-26 and
|
||
APCS-32 for translation.
|
||
|
||
2002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
|
||
|
||
Perform on-demand global register allocation from
|
||
R_MMIX_BASE_PLUS_OFFSET relocs.
|
||
* elf64-mmix.c (struct bpo_reloc_section_info, struct
|
||
bpo_reloc_request, struct bpo_greg_section_info): New.
|
||
(mmix_elf_check_common_relocs, mmix_elf_gc_sweep_hook,
|
||
bpo_reloc_request_sort_fn, mmix_elf_relax_section,
|
||
_bfd_mmix_check_all_relocs,
|
||
_bfd_mmix_prepare_linker_allocated_gregs,
|
||
_bfd_mmix_finalize_linker_allocated_gregs): New functions.
|
||
(elf_mmix_howto_table): Correct src_mask for most relocs.
|
||
(mmix_elf_perform_relocation) <case R_MMIX_BASE_PLUS_OFFSET>: New
|
||
case.
|
||
(mmix_final_link_relocate) <case R_MMIX_BASE_PLUS_OFFSET>: New
|
||
case. Fix typo in comment. New label do_mmix_reloc.
|
||
(mmix_elf_check_relocs): Abuse bfd_link_info member base_file to
|
||
store first object file with a base-plus-offset reloc. Call
|
||
mmix_elf_check_common_relocs for the part common with mmo.
|
||
(mmix_elf_final_link): Write out linker-allocated register
|
||
contents section.
|
||
(elf_backend_gc_sweep_hook): Define.
|
||
(bfd_elf64_bfd_relax_section): Define.
|
||
|
||
* mmo.c: Don't include <ctype.h>
|
||
(mmo_init): Correct init-once logic.
|
||
|
||
2002-02-01 Tom Rix <trix@redhat.com>
|
||
|
||
* config.bfd: Conditionally support <aiaff> for pre AIX 4.3.
|
||
|
||
2002-02-01 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* Makefile.am: Run "make dep-am"
|
||
* Makefile.in: Regenerate.
|
||
|
||
2002-01-31 David O'Brien <obrien@FreeBSD>
|
||
|
||
* configure.in: Recognize the differences in core files from FreeBSD
|
||
4.{0,1} and later versions of 4.x. This treats 4.2+ the same as
|
||
5-CURRENT.
|
||
* configure: Regenerate.
|
||
|
||
2002-01-31 Ivan Guzvinec <ivang@opencores.org>
|
||
|
||
* coff-or32.c: New file.
|
||
* cpu-or32.c: New file.
|
||
* elf32-or32.c: New file.
|
||
* archures.c: Add support for or32.
|
||
* targets.c: Add support for or32.
|
||
* bfd-in2.h: Regenerate.
|
||
* coffcode.h (coff_set_arch_mach_hook, coff_set_flags,
|
||
coff_write_object_contents): Add support for or32.
|
||
* config.bfd: Add target.
|
||
* configure.in: Add support for or32.
|
||
* configure: Regenerate.
|
||
* Makefile.am: Add support for or32.
|
||
* Makefile.in: Regenerate.
|
||
* po/SRC-POTFILES.in: Add or32 files.
|
||
* po/bfd.pot: Regenerate.
|
||
|
||
2002-01-31 Nick Clifton <nickc@cambridge.redhat.com>
|
||
Don Lindsay <lindsayd@cisco.com>
|
||
|
||
* elf32-mips.c (mips_elf_calculate_relocation): Replace 'return
|
||
false' with a return of a bfd_reloc_ error code.
|
||
|
||
2002-01-31 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
|
||
unexport unreferenced symbols when --export-dynamic. Call
|
||
_bfd_elf_strtab_delref when unexporting.
|
||
|
||
2002-01-30 Daniel Jacobowitz <drow@mvista.com>
|
||
|
||
* bfd-in.h: Include <stdbool.h> if it is available.
|
||
* bfd-in2.h: Regenerated.
|
||
|
||
2002-01-31 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (func_desc_adjust): STV_PROTECTED functions should
|
||
not go via the plt.
|
||
|
||
2002-01-30 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* archures.c: Tidy up formatting of embedded comments.
|
||
* bfd.c: Tidy up formatting of embedded comments.
|
||
* bfd-in.h: Fix formatting of comments.
|
||
* reloc.c: Tidy up formatting of ordinary & embedded comments.
|
||
* section.c: Tidy up formatting of embedded comments.
|
||
* syms.c: Tidy up formatting of embedded comments.
|
||
* targets.c: Tidy up formatting of embedded comments.
|
||
|
||
* bfd-in2.h: Regenerate.
|
||
|
||
2002-01-30 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* vms-tir.c (cmd_name): New function.
|
||
(tir_cmd_name): New function.
|
||
(etir_sta, etir_sto, etir_opr, etir_stc): Use cmd_name().
|
||
(tir_opr, tir_ctl, tir_cmd): use tir_cmd_name().
|
||
Fix formatting.
|
||
|
||
* peXXigen.c (pe_print_idata): Rearrange message to aid in
|
||
translation.
|
||
(pe_print_pdata): Rearrange message to aid in translation.
|
||
|
||
* libbfd.c (warn_deprecated): Rearrange error message to aid in
|
||
translation.
|
||
|
||
* ihex.c (ihex_write_object_contents): Fix spelling typo.
|
||
|
||
* ieee.c (ieee_slurp_external_symbols): Remove spurious space.
|
||
|
||
* elf64-sparc.c (sparc64_elf_add_symbol_hook): Rearrange error
|
||
message to aid in translation.
|
||
|
||
* elf64-mmix.c (mmix_final_link_relocate): Rearrange error message
|
||
to aid in translation.
|
||
|
||
* elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix typo.
|
||
|
||
2002-01-30 Philipp Thomas <pthomas@suse.de>
|
||
|
||
* coff-arm.c, elf32-elf.h: Unify messages.
|
||
|
||
2002-01-30 Nick Clifton <nickc@redhat.com>
|
||
|
||
* po/sv.po: Updated translation.
|
||
|
||
2002-01-30 Philipp Thomas <pthomas@suse.de>
|
||
|
||
* dwarf2.c (read_abbrev): Use full section name in error message.
|
||
(decode_line_info): Likewise.
|
||
|
||
* elf.c (_bfd_elf_symbol_from_bfd_symbol): Don't translate debugging
|
||
message.
|
||
|
||
2002-01-30 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (func_desc_adjust): Only provide missing function
|
||
descriptor symbols for undefined function code syms. Clear
|
||
ELF_LINK_NON_ELF so that they can stay weak.
|
||
|
||
2002-01-29 Chris Demetriou <cgd@broadcom.com>
|
||
Mitch Lichtenberg <mpl@broadcom.com>
|
||
|
||
* bfd-in.h (bfd_mips_elf32_create_embedded_relocs): New prototype.
|
||
* elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): New function
|
||
to handle 32-bit ELF embedded reloc (ld --embedded-relocs)
|
||
generation.
|
||
* bfd-in2.h: Regenerate.
|
||
|
||
2002-01-29 Chris Demetriou <cgd@broadcom.com>
|
||
|
||
* elf32-mips.c: Add additional comments about HI16 relocation
|
||
processing.
|
||
(_bfd_mips_elf_hi16_reloc): Don't subtract address here for
|
||
pc-relative relocations. (Reverts change made on 2001-10-31.)
|
||
(_bfd_mips_elf_lo16_reloc): Subtract address of LO16 part here
|
||
for pc-relative relocations.
|
||
(mips_elf_calculate_relocation): Add a comment about a kludge
|
||
in the R_MIPS_GNU_REL_HI16 handling.
|
||
(_bfd_mips_elf_relocate_section): Implement that kludge;
|
||
adjust pc-relative HI16 relocation for difference in HI16 and
|
||
LO16 addresses, since it can't easily be done in
|
||
mips_elf_calculate_relocation.
|
||
|
||
2002-01-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
|
||
|
||
* elf32-i386 (elf_i386_adjust_dynamic_symbol): Do not replace PLT32
|
||
relocations with PC32 relocations for undefined or weak symbols.
|
||
* elf32-s390 (elf_i386_adjust_dynamic_symbol): Likewise.
|
||
* elf64-s390x (elf_i386_adjust_dynamic_symbol): Likewise.
|
||
|
||
2002-01-28 Jason Thorpe <thorpej@wasabisystems.com>
|
||
|
||
* elfcore.h (elf_core_file_p): Improve comment for last change.
|
||
|
||
2002-01-27 Daniel Jacobowitz <drow@mvista.com>
|
||
|
||
* configure: Regenerated.
|
||
|
||
2002-01-27 Jason Thorpe <thorpej@wasabisystems.com>
|
||
|
||
* elfcore.h (elf_core_file_p): Set the machine architecture
|
||
before processing the program headers.
|
||
|
||
2002-01-26 Hans-Peter Nilsson <hp@bitrange.com>
|
||
|
||
* configure.in <64-bit configuration>: If using gcc, check and
|
||
emit error for egcs-1.1.2.
|
||
* configure: Regenerate.
|
||
|
||
2002-01-26 Egor Duda <deo@logos-m.ru>
|
||
|
||
* elf.c (elfcore_grok_win32pstatus): Copy only as much information
|
||
as possible to avoid stack corruption.
|
||
|
||
2002-01-26 Richard Henderson <rth@redhat.com>
|
||
|
||
* elf64-alpha.c (elf64_alpha_check_relocs): Don't set reltext
|
||
for non-allocated sections.
|
||
|
||
2002-01-25 Mark Kettenis <kettenis@gnu.org>
|
||
|
||
* elf.c (elfcore_write_prstatus): Make sure we pass the address of
|
||
prstat.pr_reg even if it is a struct.
|
||
|
||
2002-01-25 Steve Ellcey <sje@cup.hp.com>
|
||
|
||
* bfd/elfxx-ia64.c: Reset AIX vector function overrides for HP-UX.
|
||
|
||
2002-01-25 Philipp Thomas <pthomas@suse.de>
|
||
|
||
* coffgen.c (coff_print_symbol): Don't mark info message
|
||
for translation.
|
||
|
||
2002-01-25 Nick Clifton <nickc@redhat.com>
|
||
|
||
* po/fr.po: Updated translation.
|
||
* po/es.po: Updated translation.
|
||
|
||
2002-01-25 Philipp Thomas <pthomas@suse.de>
|
||
|
||
* coff-alpha.c (alpha_relocate_section): Unify warning message
|
||
for GP relative relocations without GP defined.
|
||
* coff-mips.c (mips_relocate_section): Likewise.
|
||
|
||
2002-01-25 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid
|
||
unsigned overflow when new_offset < old_offset.
|
||
|
||
2002-01-24 Philipp Thomas <pthomas@suse.de>
|
||
|
||
* bfd.c (_bfd_abort): Fix typo.
|
||
|
||
2002-01-23 Richard Henderson <rth@redhat.com>
|
||
|
||
* elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress
|
||
plt entries for undefweak symbols.
|
||
|
||
2002-01-23 Steve Ellcey <sje@cup.hp.com>
|
||
|
||
* bfd/targets.c (bfd_elf32_ia64_hpux_big_vec): Add to
|
||
DEFAULT_VECTOR.
|
||
(bfd_elf64_ia64_hpux_big_vec): Ditto.
|
||
(bfd_elf32_h8300_vec): Ditto.
|
||
|
||
2002-01-23 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c: Remove stale part of ABI comment.
|
||
(NO_OPD_RELOCS): Define.
|
||
(ppc64_elf_check_relocs): Use it.
|
||
(ppc64_elf_relocate_section): Here too.
|
||
(build_one_stub): Don't point function syms at the stub. Instead,
|
||
hijack plt.offset.
|
||
(ppc64_elf_relocate_section): Check whether REL24 relocs should
|
||
really go to the stub. Make all dynamic relocs in opd against
|
||
locals.
|
||
(ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of
|
||
plt.offset.
|
||
|
||
2002-01-22 Richard Henderson <rth@redhat.com>
|
||
|
||
* elf64-alpha.c (INSN_UNOP): Encode with RB as $sp.
|
||
|
||
2002-01-22 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Correct sign of
|
||
TOC_BASE_OFF adjustment.
|
||
|
||
* Makefile.am: Run "make dep-am".
|
||
* Makefile.in: Regenerate.
|
||
* po/SRC-POTFILES.in: Regenerate.
|
||
|
||
2002-01-22 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
||
* configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new
|
||
host defines.
|
||
|
||
2002-01-21 Hans-Peter Nilsson <hp@axis.com>
|
||
|
||
* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GOTREL>:
|
||
Check for and emit error if sgot is NULL at this point.
|
||
|
||
2002-01-21 Jason Thorpe <thorpej@wasabisystems.com>
|
||
|
||
* config.bfd (ia64*-*-netbsd*): New target.
|
||
|
||
2002-01-21 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>
|
||
|
||
* som.c (som_write_space_strings): Comment typo fix.
|
||
|
||
2002-01-21 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (struct ppc_link_hash_entry): Add is_func and
|
||
is_func_descriptor fields.
|
||
(link_hash_newfunc): Init them.
|
||
(ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a
|
||
dot are candidates for plt entries. When processing .opd relocs,
|
||
set function descriptor strings to point inside function code
|
||
string, and set new ppc_link_hash_entry fields.
|
||
(ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs.
|
||
(ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with
|
||
function descriptors. It's now done in..
|
||
(func_desc_adjust): New.
|
||
(ppc64_elf_func_desc_adjust): New.
|
||
(define elf_backend_always_size_sections): Define.
|
||
(ppc64_elf_hide_symbol): New.
|
||
(define elf_backend_hide_symbol): Define.
|
||
(allocate_dynrelocs): Remove code looking up function descriptors
|
||
as that has been done earlier.
|
||
(ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash
|
||
table.
|
||
(ppc64_elf_finish_dynamic_symbol): Likewise. Remove code looking
|
||
up function descriptor.
|
||
(build_one_stub): Look up the function code sym. Check for
|
||
invalid plt offsets.
|
||
(ppc64_elf_relocate_section): Tweak calls to undefined weak syms.
|
||
Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs.
|
||
|
||
* elf-bfd.h (elf_backend_data <elf_backend_hide_symbol>): Add
|
||
boolean param.
|
||
(_bfd_elf_link_hash_hide_symbol): Likewise.
|
||
* elflink.h (elf_link_add_object_symbols): Adjust call to
|
||
elf_backend_hide_symbol.
|
||
(elf_fix_symbol_flags): Likewise.
|
||
(elf_link_assign_sym_version): Likewise. Use bfd_malloc rather
|
||
than bfd_alloc.
|
||
* elf.c (_bfd_elf_link_hash_hide_symbol): Add "force_local" param.
|
||
Set ELF_LINK_FORCED_LOCAL and call _bfd_elf_strtab_delref.
|
||
* elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
|
||
(clobber_millicode_symbols): Adjust to suit new hide_symbol.
|
||
* elf32-cris.c (elf_cris_hide_symbol): Add "force_local" param
|
||
and adjust to suit.
|
||
* elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise, and call
|
||
_bfd_elf_link_hash_hide_symbol rather than duplicating code.
|
||
* elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
|
||
|
||
2002-01-18 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a
|
||
dynamic function descriptor symbol, not the associated function
|
||
symbol.
|
||
|
||
2002-01-17 Eric Christopher <echristo@redhat.com>
|
||
|
||
* elf32-mips.c (mips_elf_calculate_relocation): Fix typo.
|
||
|
||
2002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* po/bfd.pot: Regenerate.
|
||
* po/fr.po: Regenerate.
|
||
|
||
2002-01-17 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf-bfd.h (elf_backend_data <elf_backend_section_from_bfd_section>):
|
||
Remove "Elf_Internal_Shdr *" param.
|
||
(_bfd_mips_elf_section_from_bfd_section): Ditto.
|
||
* elf32-mips.c (_bfd_mips_elf_section_from_bfd_section): Ditto.
|
||
* elf32-m32r.c (_bfd_m32r_elf_section_from_bfd_section): Ditto.
|
||
* elf32-v850.c (v850_elf_section_from_bfd_section): Ditto.
|
||
* elf64-mmix.c (mmix_elf_section_from_bfd_section): Ditto.
|
||
* elfxx-ia64.c (elfNN_hpux_backend_section_from_bfd_section): Ditto.
|
||
* elf.c (_bfd_elf_section_from_bfd_section): Allow backend
|
||
function to override special sections. Remove hdr arg from
|
||
backend call, and don't loop.
|
||
|
||
2002-01-16 Eric Christopher <echristo@redhat.com>
|
||
|
||
* elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp
|
||
on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of
|
||
relocations requiring gp0 and gp.
|
||
|
||
2002-01-16 Richard Earnshaw <rearnsha@arm.com>
|
||
|
||
* elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle
|
||
EF_ARM_VFP_FLOAT.
|
||
(elf32_arm_print_private_bfd_data): Likewise.
|
||
|
||
2002-01-16 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* po/tr.po: Import new version.
|
||
|
||
2002-01-16 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf64-ppc.c (ppc64_elf_howto_raw): Remove stale FIXMEs.
|
||
(ppc64_elf_reloc_type_lookup): Use proper CTOR reloc.
|
||
(ORI_R0_R0_0): Correct.
|
||
|
||
2002-01-16 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elflink.c (_bfd_elf_create_dynamic_sections): Don't set SEC_CODE
|
||
when plt_not_loaded.
|
||
* elf64-ppc.c (ppc64_elf_create_dynamic_sections): No need to
|
||
clear .plt SEC_CODE here. Create .stub and correct .glink flags.
|
||
(PLT_INITIAL_ENTRY_SIZE): Set to 24.
|
||
(ppc64_elf_glink_code): Delete.
|
||
(PPC64_ELF_GLINK_SIZE): Delete.
|
||
(ADDIS_R12_R2, STD_R2_40R1, LD_R11_0R12, LD_R2_0R12, MTCTR_R11,
|
||
BCTR, ADDIS_R12_R12_1, LD_R2_40R1, NOP, LI_R0_0, B_DOT, LIS_R0_0,
|
||
ORI_R0_R0_0): Define.
|
||
(PLT_CALL_STUB_SIZE, GLINK_CALL_STUB_SIZE): Define.
|
||
(struct ppc_link_hash_table): Add sstub and plt_overflow.
|
||
(ppc64_elf_link_hash_table_create): Init them.
|
||
(ppc64_elf_check_relocs <R_PPC64_REL24>): Refcount .plt entry.
|
||
Don't copy to shared lib.
|
||
(ppc64_elf_check_relocs): Call bfd_set_error on errors.
|
||
(ppc64_elf_gc_sweep_hook <R_PPC64_REL24>): Sweep plt refcount.
|
||
(allocate_dynrelocs <plt>): Don't change function sym here. Make
|
||
room for .stub and .glink code.
|
||
(ppc64_elf_size_dynamic_sections): Handle .stub. Make entry for
|
||
DT_PPC64_GLINK.
|
||
(ppc64_elf_final_link): Rename to ppc64_elf_set_toc. Don't call
|
||
bfd_elf64_bfd_final_link.
|
||
(bfd_elf64_bfd_final_link): Don't define.
|
||
(ppc64_elf_size_stubs): New.
|
||
(build_plt_stub): New.
|
||
(build_one_stub): New.
|
||
(ppc64_elf_build_stubs): New.
|
||
(ppc64_elf_relocate_section <toc relocs>): Remove assert.
|
||
(ppc64_elf_relocate_section): Don't copy R_PPC64_REL24 relocs.
|
||
(ppc64_elf_finish_dynamic_symbol): Don't build stubs here. Set
|
||
DT_PPC64_GLINK entry. Tweak DT_PLTGOT, DT_JMPREL, DT_PLTRELSZ in
|
||
case output sections not separate. Adjust DT_RELASZ to not
|
||
include plt relocs. Set reserved got entry. Set got and plt
|
||
entry size.
|
||
(elf_backend_got_header_size): Set to 8.
|
||
* elf64-ppc.h: New file.
|
||
|
||
2002-01-16 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* elf32-arm.h (elf32_arm_size_dynamic_sections): When removing
|
||
sections, use bfd_section_list_remove.
|
||
* elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
|
||
* elflink.h (elf_link_add_object_symbols): When removing all
|
||
sections, use bfd_section_list_clear.
|
||
|
||
2002-01-15 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* po/sv.po: New file: Swedish translation.
|
||
* configure.in (ALL_LINGUAS): Add sv.
|
||
* configure: Regenerate.
|
||
|
||
2002-01-15 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* elflink.h (elf_link_input_bfd): Back out 2002-01-07 change.
|
||
* elf.c (merge_sections_remove_hook): New function.
|
||
(_bfd_elf_merge_sections): Pass it as 3rd argument to
|
||
_bfd_merge_sections.
|
||
* libbfd-in.h (_bfd_merge_sections): Add 3rd argument.
|
||
* libbfd.h: Rebuilt.
|
||
* merge.c (_bfd_merge_sections): Add remove_hook argument.
|
||
Call remove_hook if a SEC_EXCLUDE section is encountered.
|
||
|
||
2002-01-15 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* elf32-xstormy16.c (xstormy16_reloc_map): Add new field 'table'.
|
||
(xstormy16_reloc_map): Initialise new field with correct howto
|
||
table.
|
||
(xstormy16_reloc_type_lookup): Use 'table' field to locate correct
|
||
howto entry.
|
||
|
||
2002-01-10 Michael Snyder <msnyder@redhat.com>
|
||
|
||
* elf.c (elfcore_write_prstatus): Use long instead of pid_t;
|
||
(elfcore_write_pstatus): Use long instead of pid_t;
|
||
* elf-bfd.h: Change prototypes to use long instead of pid_t;
|
||
|
||
2002-01-09 Jason Thorpe <thorpej@wasabisystems.com>
|
||
|
||
* elf.c: Update copyright years.
|
||
(elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO
|
||
and NT_NETBSDCORE_FIRSTMACH. Improve a comment.
|
||
|
||
2002-01-08 Michael Snyder <msnyder@redhat.com>
|
||
|
||
Add capability to write corefile note sections, for gdb.
|
||
* elf.c (elfcore_write_note): New function.
|
||
(elfcore_write_prpsinfo): New function.
|
||
(elfcore_write_prstatus): New function.
|
||
(elfcore_write_pstatus): New function.
|
||
(elfcore_write_prfpreg): New function.
|
||
(elfcore_write_prxfpreg): New function.
|
||
* elf-bfd.h: Add prototypes for above functions.
|
||
|
||
2002-01-08 Alexandre Oliva <aoliva@redhat.com>
|
||
|
||
* elf.c (elf_fake_sections): Propagate errors from
|
||
elf_backend_fake_section.
|
||
|
||
2002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
|
||
|
||
* Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo.
|
||
(BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c.
|
||
(elf32-sh-nbsd.lo): New rule.
|
||
* Makefile.in: Regenerate.
|
||
* config.bfd (sh*le-*-netbsdelf*): New target.
|
||
(sh*-*-netbsdelf*): New target.
|
||
* configure.in: Include netbsd-core.lo for native sh*-*-netbsd*.
|
||
(bfd_elf32_shnbsd_vec): New vector.
|
||
(bfd_elf32_shlnbsd_vec): New vector.
|
||
* configure: Regenerate.
|
||
* elf32-sh-nbsd.c: New file.
|
||
* targets.c: Update copyright years.
|
||
(_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
|
||
bfd_elf32_shnbsd_vec.
|
||
|
||
2002-01-07 Aldy Hernandez <aldyh@redhat.com>
|
||
|
||
* coff-rs6000.c (READ20): Use bfd_scan_vma.
|
||
|
||
2002-01-07 Geoffrey Keating <geoffk@redhat.com>
|
||
|
||
* elflink.h (elf_link_input_bfd): Don't ask for the merged offset
|
||
of a symbol in a section that will be deleted.
|
||
|
||
2002-01-07 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* po/es.po: New file: Spanish translation.
|
||
* configure.in (ALL_LINGUAS): Add es.
|
||
* configure: Regenerate.
|
||
|
||
2002-01-06 Steve Ellcey <sje@cup.hp.com>
|
||
|
||
* elfxx-ia64.c (is_unwind_section_name): Add target vector as
|
||
argument so we can handle HP-UX specially.
|
||
(elfNN_ia64_hpux_vec): New for use in is_unwind_section_name.
|
||
(elfNN_hpux_backend_section_from_bfd_section): New for support
|
||
of SHN_IA_64_ANSI_COMMON.
|
||
(elfNN_ia64_relax_section): Add support for SHN_IA_64_ANSI_COMMON.
|
||
(is_unwind_section_name): Add special HP-UX support.
|
||
(elfNN_ia64_section_from_shdr): Add support for more sections.
|
||
(elfNN_ia64_fake_sections): Modify is_unwind_section_name call and
|
||
add support for more sections.
|
||
(elfNN_ia64_additional_program_headers): Modify
|
||
is_unwind_section_name call.
|
||
(elfNN_ia64_modify_segment_map): Remove assumption that there is
|
||
only one unwind section in segment.
|
||
|
||
2002-01-06 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* syms.c (_bfd_generic_make_empty_symbol): New function.
|
||
* libbfd-in.h (_bfd_nosymbols_make_empty_symbol): Define as
|
||
_bfd_generic_make_empty_symbol.
|
||
* libbfd.h: Regenerate.
|
||
* bfd-in2.h: Regenerate.
|
||
* hppabsd-core.c (hppabsd_core_make_empty_symbol): Delete function.
|
||
(hppabsd_core_get_symtab_upper_bound): Don't define.
|
||
(hppabsd_core_get_symtab): Likewise.
|
||
(hppabsd_core_print_symbol): Likewise.
|
||
(hppabsd_core_get_symbol_info): Likewise.
|
||
(hppabsd_core_bfd_is_local_label_name): Likewise.
|
||
(hppabsd_core_get_lineno): Likewise.
|
||
(hppabsd_core_find_nearest_line): Likewise.
|
||
(hppabsd_core_bfd_make_debug_symbol): Likewise.
|
||
(hppabsd_core_read_minisymbols): Likewise.
|
||
(hppabsd_core_minisymbol_to_symbol): Likewise.
|
||
(hppabsd_core_vec): Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols).
|
||
Formatting fixes.
|
||
* hpux-core.c: Similarly.
|
||
* irix-core.c: Similarly.
|
||
* osf-core.c: Similarly.
|
||
* sco5-core.c: Similarly.
|
||
* binary.c (binary_make_empty_symbol): Remove function, define as
|
||
_bfd_generic_make_empty_symbol.
|
||
* ihex.c (ihex_make_empty_symbol): Likewise.
|
||
* mmo.c (mmo_make_empty_symbol): Likewise.
|
||
* ppcboot.c (ppcboot_make_empty_symbol): Likewise.
|
||
* srec.c (srec_make_empty_symbol): Likewise.
|
||
* versados.c (versados_make_empty_symbol): Likewise.
|
||
* vms.c (_bfd_vms_make_empty_symbol): Remove.
|
||
(vms_make_empty_symbol): Define as _bfd_generic_make_empty_symbol.
|
||
* vms-gsd.c (_bfd_vms_slurp_gsd): Call bfd_make_empty_symbol
|
||
rather than _bfd_vms_make_empty_symbol.
|
||
* vms-misc.c (new_symbol): Likewise.
|
||
|
||
2002-01-05 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* section.c (bfd_section_init): Remove unnecessary initialisations.
|
||
(bfd_section_list_clear): New function.
|
||
(bfd_section_list_remove, bfd_section_list_insert): New macros.
|
||
(_bfd_strip_section_from_output): Use them.
|
||
* coffcode.h (coff_set_alignment_hook): Likewise.
|
||
* elf32-mips.c (_bfd_mips_elf_final_link): Likewise.
|
||
* elf64-mips.c (mips_elf64_final_link): Likewise.
|
||
* elf64-mmix.c (mmix_elf_final_link): Likewise.
|
||
* sunos.c (sunos_add_dynamic_symbols): Likewise.
|
||
* xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
|
||
* bfd-in2.h: Regenerate.
|
||
|
||
* netbsd-core.c (netbsd_core_file_p): Use bfd_make_section_anyway
|
||
rather than doing our own section handling. Clean up after errors
|
||
with bfd_release and bfd_section_list_clear. Handle unexpected
|
||
flags.
|
||
* aoutf1.h (sunos4_core_file_p): Likewise.
|
||
* aix386-core.c (aix386_core_file_p): Likewise.
|
||
* cisco-core.c (cisco_core_file_validate): Likewise.
|
||
* ptrace-core.c (ptrace_unix_core_file_p): Likewise.
|
||
* trad-core.c (trad_unix_core_file_p): Likewise.
|
||
|
||
* hppabsd-core.c (hppabsd_core_core_file_p): Clean up after errors
|
||
with bfd_release and bfd_section_list_clear.
|
||
* hpux-core.c (hpux_core_core_file_p): Likewise.
|
||
* irix-core.c (irix_core_core_file_p): Likewise.
|
||
* lynx-core.c (lynx_core_file_p): Likewise.
|
||
* osf-core.c (osf_core_core_file_p): Likewise.
|
||
* rs6000-core.c (rs6000coff_core_p): Likewise.
|
||
* sco5-core.c (sco5_core_file_p): Likewise.
|
||
|
||
* elf32-mips.c (_bfd_mips_elf_lo16_reloc): Simplify, and perform
|
||
sign extension adjustments without conditionals.
|
||
|
||
2002-01-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if
|
||
CIE at .eh_frame start is removed due to no FDEs referencing it.
|
||
|
||
2002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
|
||
|
||
* config.bfd (x86_64-*-netbsd*): New target.
|
||
* configure.in (x86_64-*-netbsd*): Set COREFILE
|
||
to netbsd-core.lo.
|
||
* configure: Regenerated.
|
||
|
||
2002-01-03 Tom Rix <trix@redhat.com>
|
||
|
||
* xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering
|
||
for recent bfd_make_section_anyway change.
|
||
|
||
2002-01-03 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* elf32-arm.h (elf32_arm_final_link_relocate): Handle
|
||
R_ARM_THM_PC11 reloc.
|
||
|
||
2002-01-02 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* configure.in (LINGUAS): Add ja.
|
||
* configure: Regenerate.
|
||
* po/ja.po: Import from translation project's web site.
|
||
|
||
2002-01-02 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
||
* elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error
|
||
messages to ease translation into other languages.
|
||
|
||
For older changes see ChangeLog-0001
|
||
|
||
Local Variables:
|
||
mode: change-log
|
||
left-margin: 8
|
||
fill-column: 74
|
||
version-control: never
|
||
End:
|