Alan Modra
fad2542d0f
* elflink.h (elf_link_input_bfd): Don't change internal symbols
...
when outputting relocs.
2002-07-23 04:38:17 +00:00
Alan Modra
6bef05105d
daily update
2002-07-23 00:00:05 +00:00
Alan Modra
c71d3cb363
daily update
2002-07-22 00:00:09 +00:00
Alan Modra
1e95bb00e0
daily update
2002-07-21 00:00:05 +00:00
Jason Thorpe
c0647bfc65
* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only insert
...
DT_PLTGOT into the dynamic section if there is a PLT.
2002-07-20 04:09:30 +00:00
Alan Modra
a1f67b5860
daily update
2002-07-20 00:00:05 +00:00
Thiemo Seufer
d01414a501
* elfxx-mips.c (_bfd_mips_elf_discard_info): New function, code from
...
elf32-mips.c.
(_bfd_mips_elf_write_section): Likewise.
* elfxx-mips.h (_bfd_mips_elf_discard_info): New prototype.
(_bfd_mips_elf_write_section): Likewise.
* elf32-mips.c (elf32_mips_discard_info): Move to elfxx-mips.c.
(elf32_mips_write_section): Likewise.
* elf64-mips.c (_bfd_mips_elf_ignore_discarded_relocs): Use it.
(_bfd_mips_elf_write_section): Likewise.
2002-07-19 21:34:02 +00:00
Alan Modra
40c97fc6d1
* elfxx-ia64.c: (elfNN_ia64_modify_segment_map): Properly scan
...
PT_IA_64_UNWIND segments for a given section.
2002-07-19 01:10:28 +00:00
Alan Modra
9e8c6684f1
daily update
2002-07-19 00:00:05 +00:00
Alan Modra
4b3aa33818
daily update
2002-07-18 00:00:04 +00:00
H.J. Lu
58378160bb
2002-07-17 H.J. Lu <hjl@gnu.org>
...
* Makefile.am: Fix a typo.
* Makefile.in: Regenerate.
2002-07-17 17:53:28 +00:00
Nick Clifton
cf88bb9f09
Add IP2k support to BFD and LD
2002-07-17 14:15:52 +00:00
Richard Earnshaw
0dafd5f6a9
From: Ian Rickards <irickard@arm.com>
...
* dwarf2.c (concat_filename): If we can't establish the directory
just return the filename.
2002-07-17 12:17:18 +00:00
Alan Modra
28de3fce21
daily update
2002-07-17 00:00:05 +00:00
Alan Modra
36b08f12d1
* peXXigen.c (_bfd_XXi_swap_aouthdr_out): Correct order of memset args.
2002-07-16 13:35:58 +00:00
Alan Modra
58821868a5
* elflink.h: Formatting fixes, tidy prototypes.
...
(elf_link_assign_sym_version): Move common code out of loop.
2002-07-16 12:31:35 +00:00
Alan Modra
c89583f83f
* elflink.h (elf_link_input_bfd): Don't call reloc_emitter when
...
reloc section size is zero. Correct reloc output location.
2002-07-16 09:00:42 +00:00
Alan Modra
ba94744e3b
* elf-hppa.h (elf_hppa_reloc_final_type): Use R_PARISC_PCREL16F as
...
the final type for the e_fsel selector when generating PA2.0W code.
(elf_hppa_relocate_insn): Provide support for PA2.0W 16-bit format 1
relocations.
2002-07-16 02:26:30 +00:00
Alan Modra
923ffb13fd
daily update
2002-07-16 00:00:04 +00:00
H.J. Lu
96a94295f2
bfd/
...
2002-07-14 H.J. Lu <hjl@gnu.org>
* elflink.h (elf_link_assign_sym_version): Hide the default
definition if there is a hidden versioned definition.
ld/
2002-07-14 H.J. Lu <hjl@gnu.org>
* ld.texinfo: Document a .symver takes precedence over a
version script.
2002-07-15 02:23:26 +00:00
Alan Modra
e4c35ea24e
daily update
2002-07-15 00:00:05 +00:00
Alan Modra
f971e29ff1
daily update
2002-07-14 00:00:05 +00:00
Alan Modra
a9d9051eab
daily update
2002-07-13 00:00:04 +00:00
Hans-Peter Nilsson
6849c52f0a
* elf32-cris.c (cris_elf_relocate_section): Drop nonsensical
...
dynamic reference test in assertion when initializing GOT with
static contents. Just assert that there are either no dynamic
sections, the symbol is defined in the regular objects or that the
symbol is undef weak. Tweak comment.
(elf_cris_finish_dynamic_symbol): Emit .got reloc for a program
only if the symbol isn't defined in the program and isn't undef
weak.
(elf_cris_adjust_dynamic_symbol): Simplify condition for getting
rid of PLT entry: only do it if the symbol isn't defined in a DSO.
When doing so, clear ELF_LINK_HASH_NEEDS_PLT. Tweak comments.
(elf_cris_discard_excess_program_dynamics): Don't consider
ELF_LINK_HASH_REF_DYNAMIC when omitting .got runtime relocs.
2002-07-12 15:54:57 +00:00
Alan Modra
ce66b72326
daily update
2002-07-12 00:00:03 +00:00
Alan Modra
239e1f3afa
* elf32-i386.c (elf_i386_relocate_section): Don't complain about
...
unresolved debugging relocs in dynamic applications.
* elf32-s390.c (elf_s390_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-sparc.c (sparc64_elf_relocate_section): Likewise.
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
2002-07-11 05:33:28 +00:00
Alan Modra
6cce648081
daily update
2002-07-11 00:00:05 +00:00
Alan Modra
f5e87a1da3
* elf64-ppc.c (ONES): Define.
...
(ppc64_elf_howto_table): Use ONES here to avoid warnings. Fill in
missing src_mask fields. Tweak R_PPC64_NONE, R_PPC64_COPY. Fill
in missing dst_mask fields on R_PPC64_PLT32, R_PPC64_PLTREL32.
2002-07-10 11:46:19 +00:00
Alan Modra
2f6d9989b7
* elf64-ppc.c (ppc64_elf_get_symbol_info): Delete.
...
(ppc64_elf_set_private_flags): Delete.
(ppc64_elf_section_from_shdr): Delete.
(ppc64_elf_merge_private_bfd_data): Remove flag checking/merging code.
(ppc64_elf_fake_sections): Delete.
(bfd_elf64_bfd_set_private_flags): Don't define.
(bfd_elf64_get_symbol_info): Likewise.
(elf_backend_section_from_shdr): Likewise.
(elf_backend_fake_sections): Likewise.
2002-07-10 10:28:44 +00:00
Alan Modra
0594c12d8e
* elf.c: (assign_section_numbers) Set sh_entsize for .stab only
...
when not already set.
* elf64-sparc.c: (sparc64_elf_fake_sections): New function.
(elf_backend_fake_sections): Define.
2002-07-10 04:59:42 +00:00
Alan Modra
e59b4d067a
daily update
2002-07-10 00:00:04 +00:00
Alan Modra
699cb9b870
* merge.c (_bfd_merge_section): Remove redundant output_section check.
...
Formatting.
(_bfd_merge_sections): Don't set SEC_EXCLUDE on unused sections.
2002-07-09 23:47:22 +00:00
Hans-Peter Nilsson
0a4787a081
* elf32-cris.c (cris_elf_relocate_section): Move sanity-check for
...
NULL sym_hashes to just before use.
<case R_CRIS_32_GOTREL>: In test for local symbol, accept also
symbol with non-default visibility.
<case R_CRIS_32_GOTREL, case R_CRIS_32_PLT_GOTREL>: Ditto.
<case R_CRIS_8_PCREL, case R_CRIS_16_PCREL, case R_CRIS_32_PCREL>:
Ditto.
(cris_elf_gc_sweep_hook): Only decrease h->plt.refcount for
symbol with non-default visibility.
(cris_elf_check_relocs): At tests for local symbol before
increasing h->plt.refcount, also check for non-default
visibility. Ditto when checking for local symbol to eliminate
pc-relative runtime relocs.
2002-07-09 03:49:27 +00:00
Alan Modra
2b8f7433db
daily update
2002-07-09 00:00:06 +00:00
Alan Modra
aecc8f8acd
* elf.c: Formatting.
...
(IS_SOLARIS_PT_INTERP): Add p_paddr and p_memsz checks.
(INCLUDE_SECTION_IN_SEGMENT): Remove IS_SOLARIS_PT_INTERP.
(copy_private_bfd_data): Set p_vaddr on broken Solaris PT_INTERP
segments.
2002-07-08 08:13:37 +00:00
Mark Mitchell
e9168c1e2b
* cofflink.c (_bfd_coff_final_link): On PE COFF systems, take into
...
account the impact of relocation count overflow when computing
section offsets.
* coffcode.h (coff_write_relocs): Use obj_pe when deciding whether
or not to apply the PE COFF reloc overflow handling. Fix a
fencepost error in deciding whether or not to use that technique.
2002-07-08 05:34:08 +00:00
Alan Modra
d1e122bd6a
daily update
2002-07-08 00:00:06 +00:00
Alan Modra
6cdc0ccc12
* elf-bfd.h (struct elf_reloc_cookie): Remove locsym_shndx,
...
change type of locsyms.
(bfd_elf_get_elf_syms): Declare.
* elf.c (bfd_elf_get_elf_syms): New function.
(group_signature): Use bfd_elf_get_elf_syms.
(bfd_section_from_r_symndx): Likewise.
* elfcode.h (elf_slurp_symbol_table): Likewise.
* elflink.h (elf_link_is_defined_archive_symbol): Likewise.
(elf_link_add_object_symbols): Likewise. Reorganise to increase
locality of various data structures. Properly free internal relocs.
(elf_bfd_final_link): Properly free internal relocs.
(elf_link_check_versioned_symbol): Use bfd_elf_get_elf_syms.
(elf_link_input_bfd): Likewise.
(elf_gc_mark): Likewise. Properly free internal relocs.
(elf_gc_sweep): Properly free internal relocs.
(elf_reloc_symbol_deleted_p): No need to swap syms in.
(elf_bfd_discard_info): Use bfd_elf_get_elf_syms. Properly free
internal relocs.
* elf-m10200.c (mn10200_elf_relax_section): Use bfd_elf_get_elf_syms.
Properly free possibly cached info.
(mn10200_elf_relax_delete_bytes): Remove symbol swapping code.
(mn10200_elf_symbol_address_p): Pass in internal syms. Remove
symbol swapping code.
(mn10200_elf_get_relocated_section_contents): Use bfd_elf_get_elf_syms.
Properly free possibly cached info.
* elf-m10300.c (mn10300_elf_relax_section): As above for elf-m10200.c.
(mn10300_elf_relax_delete_bytes): Likewise.
(mn10300_elf_symbol_address_p): Likewise.
(mn10300_elf_get_relocated_section_contents): Likewise.
* elf32-h8300.c (elf32_h8_relax_section): As above for elf-m10200.c.
(elf32_h8_relax_delete_bytes): Likewise.
(elf32_h8_symbol_address_p): Likewise.
(elf32_h8_get_relocated_section_contents): Likewise.
* elf32-m32r.c (m32r_elf_relax_section): As above for elf-m10200.c.
(m32r_elf_relax_delete_bytes): Likewise.
(m32r_elf_get_relocated_section_contents): Likewise.
* elf32-sh.c (sh_elf_reloc_loop): Free section contents using
elf_section_data to determine whether cached.
(sh_elf_relax_section): As above for elf-m10200.c.
(sh_elf_relax_delete_bytes): Likewise.
(sh_elf_get_relocated_section_contents): Likewise.
* elf32-xstormy16.c (xstormy16_elf_relax_section): As above.
* elf64-alpha.c (elf64_alpha_relax_section): As above. Also delay
reading of local syms.
* elf64-mmix.c (mmix_elf_relax_section): Likewise.
* elf64-sh64.c (sh_elf64_get_relocated_section_contents): As above.
* elfxx-ia64.c (elfNN_ia64_relax_section): As above.
* elfxx-mips.c (_bfd_mips_elf_check_relocs): Properly free internal
relocs.
* elf32-arm.h (bfd_elf32_arm_process_before_allocation): Properly
free internal relocs and section contents. Don't read symbols.
* elf32-hppa.c (get_local_syms): Use bfd_elf_get_elf_syms.
(elf32_hppa_size_stubs): Don't free local syms.
* elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Delay
reading of local syms. Use bfd_elf_get_elf_syms. Properly free
possibly cached info.
* elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
* elf64-hppa.c (elf64_hppa_check_relocs): Use bfd_elf_get_elf_syms.
* elf64-ppc.c (struct ppc_link_hash_table): Delete bfd_count and
all_local_syms.
(get_local_syms): Delete function.
(edit_opd): Use bfd_elf_get_elf_syms. Free on error exit. Cache
on exit.
(ppc64_elf_size_stubs): Use bfd_elf_get_elf_syms. Free/cache on exit.
2002-07-07 09:10:41 +00:00
Alan Modra
fcb95fb109
daily update
2002-07-07 00:00:06 +00:00
Alan Modra
f558386d13
daily update
2002-07-06 00:00:05 +00:00
Jim Wilson
b3212001ca
This makes gprof work with non-standard text sections.
...
* syms.c (decode_section_type): New.
(bfd_decode_symclass): Call decode_section_type.
2002-07-05 20:29:38 +00:00
Alan Modra
6d0d2cd21e
daily update
2002-07-05 00:00:05 +00:00
Jakub Jelinek
894bb1ee03
* merge.c (_bfd_merged_section_offset): Avoid accessing byte before
...
section content start.
Reported by Michael Schumacher <mike@hightec-rt.com>.
2002-07-04 15:57:24 +00:00
Alan Modra
bc0ba53708
* section.c (_bfd_strip_section_from_output): Remove unnecessary
...
link order code. Don't actually remove the output section here;
Just set a flag for the linker to do so.
* elflink.c (_bfd_elf_link_renumber_dynsyms): Test for removed
sections when setting up output section dynsyms.
2002-07-04 14:40:25 +00:00
Alan Modra
797fc050a0
* elflink.h (elf_link_add_object_symbols): Revert 1999-09-02 hpux
...
fudge.
* elf.c (bfd_section_from_shdr): Work around broken hpux shared
libs here instead.
2002-07-04 13:26:30 +00:00
Alan Modra
d82fc7fa84
daily update
2002-07-04 00:00:04 +00:00
Alan Modra
a2f65c535c
daily update
2002-07-03 00:00:05 +00:00
Martin Schwidefsky
99881371eb
2002-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com>
...
* elf64-s390.c (create_got_section): Set .got section alignment to
8 bytes.
(elf_s390_check_relocs): Set .rela.dyn section alignment to 8 bytes.
2002-07-02 09:05:51 +00:00
Alan Modra
47d9a59134
* elf.c (_bfd_elf_reloc_type_class): Fix comment grammar.
2002-07-02 04:31:22 +00:00
Alan Modra
319fb920c5
daily update
2002-07-02 00:00:05 +00:00