Commit Graph

2029 Commits

Author SHA1 Message Date
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
Jason Thorpe 179d3252e3 include/elf:
2002-07-01  Matt Thomas  <matt@3am-software.com>

* Rename EF_* to EF_VAX_*.

bfd:

2002-07-01  Matt Thomas  <matt@3am-software.com>

* elf32-vax.c (elf32_vax_print_private_bfd_data): Change EF_*
to EF_VAX_*.

binutils:

2002-07-01  Matt Thomas  <matt@3am-software.com>

* readelf.c: Include "elf/vax.h".
(guess_is_rela): Move EM_VAX from unknown to RELA case.
(dump_relocations): Handle VAX relocations.
(get_machine_flags): Handle VAX machine flags.
2002-07-01 16:43:38 +00:00
Thiemo Seufer 4a14403c9f * elfxx-mips.c (ABI_64_P): Fix comment.
(MIPS_ELF_OPTIONS_SECTION_NAME,MIPS_ELF_STUB_SECTION_NAME): Use the
	new section names for N64 ABI.
	(mips_elf_output_extsym): No special _gp_disp handling for NewABI.
	(mips_elf_calculate_relocation): Code formatting.
	(mips_elf_create_dynamic_relocation): Likewise.
	(_bfd_mips_elf_fake_sections): IRIX6 needs this hack, too.
	(_bfd_mips_elf_size_dynamic_sections): Handle GOT_PAGE for any NewABI.
	(_bfd_mips_elf_relocate_section): No special handling for R_MIPS_64
	in any NewABI.
	(_bfd_mips_elf_finish_dynamic_symbol): No special _gp_disp handling
	for NewABI.
	(_bfd_mips_elf_modify_segment_map): Handle any N64 ABI.
	(_bfd_mips_elf_gc_sweep_hook): NewABI GOT relocs should be handled
	here, too.
2002-07-01 10:01:01 +00:00
Andreas Schwab 607c0e0944 * elf64-x86-64.c (elf64_x86_64_relocate_section): Only convert
R_X86_64_64 to R_X86_64_RELATIVE.
2002-07-01 08:47:13 +00:00
Alan Modra ba26fd966c * vaxbsd.c: New BFD backend for VAX BSD and Ultrix.
* Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Add new backend.
	Run "make dep-am".
	* config.bfd (vax-*-bsd* | vax-*-ultrix*): Use vaxbsd_vec instead of
	host_aout_vec.
	* configure.in (vaxbsd_vec): Add.
	* targets.c (vaxbsd_vec): Add.
	* Makefile.in: Rebuild.
	* configure: Rebuild.
	* po/SRC-POTFILES.in: Rebuild.
2002-07-01 08:31:53 +00:00
Alan Modra 1e2f5b6e6b * elflink.h (elf_gc_mark): Pass in the section whose relocs we are
examining to gc_mark_hook, rather than the bfd.
	(elf_gc_sections): Adjust.
	* elf-bfd.h (struct elf_backend_data <gc_mark_hook>): Likewise.
	* elf-m10300.c (mn10300_elf_gc_mark_hook): Likewise.
	* elf32-arm.h (elf32_arm_gc_mark_hook): Likewise.
	* elf32-avr.c (elf32_avr_gc_mark_hook): Likewise.
	* elf32-cris.c (cris_elf_gc_mark_hook): Likewise.
	* elf32-d10v.c (elf32_d10v_gc_mark_hook): Likewise.
	* elf32-fr30.c (fr30_elf_gc_mark_hook): Likewise.
	* elf32-hppa.c (elf32_hppa_gc_mark_hook): Likewise.
	* elf32-i386.c (elf_i386_gc_mark_hook): Likewise.
	* elf32-m32r.c (m32r_elf_gc_mark_hook): Likewise.
	* elf32-m68k.c (elf_m68k_gc_mark_hook): Likewise.
	* elf32-mcore.c (mcore_elf_gc_mark_hook): Likewise.
	* elf32-openrisc.c (openrisc_elf_gc_mark_hook): Likewise.
	* elf32-ppc.c (ppc_elf_gc_mark_hook): Likewise.
	* elf32-s390.c (elf_s390_gc_mark_hook): Likewise.
	* elf32-sh.c (sh_elf_gc_mark_hook): Likewise.
	* elf32-sparc.c (elf32_sparc_gc_mark_hook): Likewise.
	* elf32-v850.c (v850_elf_gc_mark_hook): Likewise.
	* elf32-vax.c (elf_vax_gc_mark_hook): Likewise.
	* elf32-xstormy16.c (xstormy16_elf_gc_mark_hook): Likewise.
	* elf64-mmix.c (mmix_elf_gc_mark_hook): Likewise.
	* elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise.
	* elf64-s390.c (elf_s390_gc_mark_hook): Likewise.
	* elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
	* elfxx-mips.c (_bfd_mips_elf_gc_mark_hook): Likewise.
	* elfxx-mips.h (_bfd_mips_elf_gc_mark_hook): Likewise.
	* elf64-x86-64.c (elf64_x86_64_gc_mark_hook): Likewise.
	* elf32-frv.c (elf32_frv_gc_mark_hook): Likewise.  Also remove
	redundant local sym tests.
	* elf64-ppc.c (struct ppc_link_hash_entry): Add is_entry.
	(link_hash_newfunc): Init is_entry.
	(ppc64_elf_copy_indirect_symbol): Copy is_entry.
	(ppc64_elf_link_hash_table_create): Init all_local_syms.
	(create_linkage_sections): Use bfd_make_section_anyway rather than
	bfd_make_section.
	(ppc64_elf_mark_entry_syms): New function.
	(ppc64_elf_check_relocs): Don't bother testing elf_bad_symtab.  Set
	up opd entry to function section map.
	(ppc64_elf_gc_mark_hook): Special case opd section relocs, and
	relocs that reference the opd section.
	(edit_opd): New function.
	(ppc64_elf_size_dynamic_sections): Call get_local_syms and edit_opd.
	(ppc64_elf_setup_section_lists): Don't calculate htab->bfd_count here.
	(get_local_syms): Do so here.  Exit if we already have local syms.
	Remove bogus comment imported from elf32-hppa.c.  Don't attempt to
	read local syms on non-ELF input.
	(ppc64_elf_size_stubs): Call _bfd_elf64_link_read_relocs rather
	than duplicating it's function here.  Adjust free of internal
	relocs to suit.
	(ppc64_elf_relocate_section): Adjust local syms in opd section.
	* elf64-ppc.h (ppc64_elf_mark_entry_syms): Declare.
	* elf32-hppa.c (elf32_hppa_size_stubs): Call
	_bfd_elf32_link_read_relocs rather than duplicating it's function
	here.  Adjust free of internal relocs to suit.
2002-07-01 08:06:47 +00:00
Andreas Jaeger 1b71fb54e3 * elf64-x86-64.c (elf64_x86_64_check_relocs): Certain relocations
are not allowed in shared libs code, enforce -fPIC.
2002-07-01 06:42:27 +00:00
Alan Modra 8c8c7ed1df daily update 2002-07-01 00:00:06 +00:00
Alan Modra b16575a2ea daily update 2002-06-30 00:00:05 +00:00
Hans-Peter Nilsson 8d28f606dc * mmo.c (mmo_write_loc_chunk): Don't eliminate leading and
trailing zero-sequences when there's previous left-over data.
2002-06-29 21:45:09 +00:00
Alan Modra 42c15cc220 daily update 2002-06-29 00:00:06 +00:00
Alan Modra 9e2dd5dcde daily update 2002-06-28 00:01:04 +00:00
Jeff Law 5ac81c745e * elf64-hppa.c (elf64_hppa_reloc_type_class): New function.
(elf64_hppa_finish_dynamic_sections): Check other_rel_sec, dlt_rel_sec
        and opd_rel_sec in order for starting rela section.  Check _raw_size.
        (elf_backend_reloc_type_class): Define.
2002-06-27 22:57:02 +00:00
Alan Modra 91a4d5692a 2002-06-27 Kevin Buettner <kevinb@redhat.com>
* dwarf2.c (decode_line_info): Handle older, non-standard, 64-bit
	DWARF2 formats.
2002-06-27 11:51:42 +00:00
Alan Modra feee612b24 * cpu-powerpc.c: Comment on ordering of arch_info.
* elf32-ppc.c (ppc_elf_object_p): New function.
	(elf_backend_object_p): Define.
	* elf64-ppc.c (ppc64_elf_object_p): New function.
	(elf_backend_object_p): Define.
2002-06-27 11:29:15 +00:00
Alan Modra feb1911aea daily update 2002-06-27 00:00:06 +00:00
Jason Thorpe a4e6cefc0d * configure.in (vax-*-netbsd*): Set COREFILE to netbsd-core.lo.
* configure: Regenerate.
2002-06-26 03:10:20 +00:00
Alan Modra 0d8641dd17 daily update 2002-06-26 00:00:18 +00:00
Nick Clifton dae2dd0d26 Check unit->addr_size to read in the proper number of prologue bytes. 2002-06-25 19:10:00 +00:00
Nick Clifton 8f28b84541 fixup position of #ifdef BFD64 for powerpc delta recently applied. 2002-06-25 17:29:53 +00:00
Nick Clifton 680f9d5c14 Only create a selvecs for aix5coff64_vec if 64-bit bfd support has been enabled. 2002-06-25 10:05:05 +00:00
Alan Modra d4c88bbbc9 * elf64-ppc.c (ppc_add_stub): Replace strcpy/strncpy with memcpy.
* elf32-hppa.c (hppa_add_stub): Likewise.
	* elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise.
	* elflink.h (elf_add_default_symbol): Fix comment typo.
	(elf_add_default_symbol): Replace strcpy and strncpy with memcpy.
	(elf_link_add_object_symbols): Likewise.
	(elf_link_assign_sym_version): Likewise.
	* hash.c (bfd_hash_lookup): Likewise.
	* linker.c (_bfd_generic_link_add_one_symbol): Likewise.
	* section.c (bfd_get_unique_section_name): Likewise.
	* syms.c (_bfd_stab_section_find_nearest_line): Likewise.
	* elf.c (_bfd_elf_make_section_from_phdr): Likewise.
	(assign_section_numbers): Likewise.
	(_bfd_elfcore_make_pseudosection): Likewise.
	(elfcore_grok_lwpstatus): Likewise.
	(elfcore_grok_win32pstatus): Likewise.
	(elfcore_write_note): Constify input params.  Use PTR instead of
	void *.  Include terminating NUL in namesz.  Correct padding.
	Support NULL "name" param.  Use memcpy instead of strcpy.
	(elfcore_write_prpsinfo): Constify input params.
	(elfcore_write_prstatus): Likewise.  Use PTR instead of void *.
	(elfcore_write_lwpstatus): Likewise.
	(elfcore_write_pstatus): Likewise.
	(elfcore_write_prfpreg): Likewise.
	(elfcore_write_prxfpreg): Likewise.
	* elf-bfd.h (elfcore_write_note): Update declaration.
	(elfcore_write_prpsinfo): Likewise.
	(elfcore_write_prstatus): Likewise.
	(elfcore_write_pstatus): Likewise.
	(elfcore_write_prfpreg): Likewise.
	(elfcore_write_prxfpreg): Likewise.
	(elfcore_write_lwpstatus): Likewise.
2002-06-25 09:40:45 +00:00
Nick Clifton b0ac09d2fb Set BSF_FUNCTION for symbols of type stProc and stStaticProc.
Formatting tidy ups.
2002-06-25 08:47:31 +00:00
Alan Modra 021d609642 * coff-rs6000.c (xcoff_generate_rtinit): Fix typo. 2002-06-25 07:40:49 +00:00
Alan Modra 82e5191826 * aout-adobe.c: Don't compare against "true" or "false.
* aout-target.h: Likewise.
	* aoutx.h: Likewise.
	* archive.c: Likewise.
	* bout.c: Likewise.
	* cache.c: Likewise.
	* coff-a29k.c: Likewise.
	* coff-alpha.c: Likewise.
	* coff-i386.c: Likewise.
	* coff-mips.c: Likewise.
	* coff-or32.c: Likewise.
	* coff64-rs6000.c: Likewise.
	* coffcode.h: Likewise.
	* coffgen.c: Likewise.
	* cpu-ns32k.c: Likewise.
	* ecoff.c: Likewise.
	* ecofflink.c: Likewise.
	* elf.c: Likewise.
	* elf32-arm.h: Likewise.
	* elf32-cris.c: Likewise.
	* elf32-d30v.c: Likewise.
	* elf32-i386.c: Likewise.
	* elf32-mcore.c: Likewise.
	* elf32-ppc.c: Likewise.
	* elf32-sh.c: Likewise.
	* elf32-sh64.c: Likewise.
	* elf32-v850.c: Likewise.
	* elf64-alpha.c: Likewise.
	* elf64-sh64.c: Likewise.
	* elfcode.h: Likewise.
	* elfcore.h: Likewise.
	* elflink.h: Likewise.
	* elfxx-mips.c: Likewise.
	* i386os9k.c: Likewise.
	* ieee.c: Likewise.
	* libbfd.c: Likewise.
	* linker.c: Likewise.
	* mmo.c: Likewise.
	* nlm32-alpha.c: Likewise.
	* nlm32-i386.c: Likewise.
	* nlm32-ppc.c: Likewise.
	* nlm32-sparc.c: Likewise.
	* nlmcode.h: Likewise.
	* oasys.c: Likewise.
	* pdp11.c: Likewise.
	* peicode.h: Likewise.
	* reloc.c: Likewise.
	* som.c: Likewise.
	* srec.c: Likewise.
	* tekhex.c: Likewise.
	* vms.c: Likewise.
	* xcofflink.c: Likewise.
	* elf64-sparc.c: Edit comment to not use "== false".

	* aoutf1.h: Don't use "? true : false".
	* ecoff.c: Likewise.
	* format.c: Likewise.
	* ieee.c: Likewise.
	* linker.c: Likewise.
	* mmo.c: Likewise.
	* oasys.c: Likewise.
2002-06-25 06:21:54 +00:00
Alan Modra d226df4d47 daily update 2002-06-25 00:11:06 +00:00
Alan Modra 0f67e2ff77 daily update 2002-06-24 00:00:07 +00:00
Alan Modra 48fc70a2b6 * elflink.h (elf_link_add_archive_symbols): For the default
version, check references with only one `@' first.
2002-06-23 12:44:31 +00:00
Alan Modra 47b7c2db07 * elf64-hppa.c (elf64_hppa_mark_milli_and_exported_functions): New
function.
	(allocate_global_data_dlt):  Don't add millicode symbols to dynamic
	symbol table.
	(allocate_global_data_opd, allocate_dynrel_entries): Likewise.
	(elf64_hppa_size_dynamic_sections): Revise to use
	elf64_hppa_mark_milli_and_exported_functions.
	(elf64_hppa_finish_dynamic_symbol): Remove code to keep millicode
	symbols out of dynamic symbol table.
2002-06-23 09:05:59 +00:00
Alan Modra bb3fff1e12 * Makefile.in: Regenerate.
* libbfd.h: Regenerate.
	* bfd-in2.h: Regenerate.
	* configure: Regenerate.
	* po/SRC-POTFILES.in: Regenerate.
2002-06-23 02:09:05 +00:00
Alan Modra f5d44ba06b 2002-06-23 Alan Modra <amodra@bigpond.net.au>
* elflink.h: Comment typo fixes.

2002-06-23  H.J. Lu  <hjl@gnu.org>

	* elf-bfd.h (elf_link_loaded_list): New structure.
	(elf_link_hash_table): Add "loaded".
	* elf.c (_bfd_elf_link_hash_table_init): Initialize "loaded".
	* elflink.h (elf_link_check_versioned_symbol): New function.
	(elf_link_output_extsym): Call elf_link_check_versioned_symbol.
2002-06-23 02:04:28 +00:00
Alan Modra d7eac87a3f daily update 2002-06-23 00:00:07 +00:00
Alan Modra a9419e526c daily update 2002-06-22 00:00:07 +00:00
Alan Modra 256333c7ea daily update 2002-06-21 00:00:08 +00:00
Alan Modra 1ae9cf22fa daily update 2002-06-20 00:00:05 +00:00
Nick Clifton cc36acdfd5 If the target does not support an ELF style has table, return true, indicating
that nothing needed to be done, rather than false, indicating that the
section's size could not be computed.
2002-06-19 10:07:37 +00:00
Alan Modra 9d9a8108cc daily update 2002-06-19 00:00:07 +00:00
Dave Brolley 4e5ba5b7eb 2002-06-18 Dave Brolley <brolley@redhat.com>
From Catherine Moore, Michael Meissner, Dave Brolley:
	* po/SRC-POTFILES.in: Add cpu-frv.c and elf32-frv.c
	* targets.c: Support bfd_elf32_frv_vec.
	* reloc.c: Add FRV relocs.
	* configure.in: Add support for bfd-elf32-frv-vec.
	* config.bfd (targ_cpu): Add support for frv-*-elf.
	* archures.c: Add frv arch and machines.
	* Makefile.am (ALL_MACHINES): Add cpu-frv.lo.
	(ALL_MACHINES_CFILES): Add cpu-frv.c.
	(BFD32_BACKENDS): Add elf32-frv.lo.
	(BFD32_BACKENDS_CFILES): Add elf32-frv.c
	(cpu-frv.lo): New target.
	(elf32-frv.lo): New target.
	* cpu-frv.c: New file.
	* elf32-frv.c: New file.
2002-06-18 21:10:55 +00:00
Jakub Jelinek 7ece0d85fd binutils/
* readelf.c (get_file_header): Only read the first section header if
	e_shoff is non-zero.

bfd/
	* elfcode.h (elf_object_p): Sanity check eh_shoff == 0 implies
	e_shnum == 0.
	Only read the first section header if e_shoff is non-zero.
	Don't consider e_shstrndx if there are no sections.
2002-06-18 14:09:06 +00:00
Alan Modra bc67e3a921 daily update 2002-06-18 00:00:06 +00:00
Tom Rix 57fb03ac80 Fix pc relocations. 2002-06-17 13:43:50 +00:00
Alan Modra 767e34d13c * opncls.c (bfd_openr): Remove redundant bfd_set_error.
(bfd_fdopenr): Likewise.
	(bfd_openstreamr): Likewise.
	(bfd_openw): Likewise.
2002-06-17 02:33:42 +00:00
Alan Modra 341ca62211 * targets.c: Sort target vecs.
(_bfd_target_vector): Add aix5coff64_vec, bfd_elf32_sh64_vec,
	bfd_elf32_sh64l_vec, bfd_elf32_sh64lnbsd_vec,
	bfd_elf32_sh64nbsd_vec, bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec,
	bfd_elf64_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec.
	* configure.in: Sort target vecs.  Add m88kmach3_vec.
	* configure: Regenerate.
2002-06-17 02:27:38 +00:00
Alan Modra 1e81458254 daily update 2002-06-17 00:00:06 +00:00
Hans-Peter Nilsson dfbbae4ca3 * elf64-mmix.c (bpo_reloc_request_sort_fn): Use member
bpo_reloc_no to break sort order ties, not address of items.
2002-06-16 20:48:46 +00:00
Jeff Law d663e1cd53 * elf-hppa.h (elf_hppa_final_link): Fix formatting in comment.
Skip excluded sections in determing __gp value.
	(elf_hppa_final_link_relocate): Use the symbol's address in
	R_PARISC_FPTR64 relocations that don't need an opd entry.
	* elf64-hppa.c (allocate_dynrel_entries): Simplify code.
	(elf64_hppa_finalize_dynreloc): Likewise.
	(elf64_hppa_size_dynamic_sections): Move comments and fix typo.
	(elf64_hppa_finish_dynamic_symbol): Break up assert.
2002-06-16 15:32:08 +00:00
Alan Modra b9ab661c81 daily update 2002-06-16 00:00:04 +00:00
Alan Modra e75700dfba daily update 2002-06-15 00:00:05 +00:00
Nick Clifton a829521801 Enable 16 byte alignment for .bss, .data and .text sections so that sse and
sse2 code will work.
2002-06-14 11:24:12 +00:00
Alan Modra 9faaac0e27 daily update 2002-06-14 00:00:05 +00:00
Joern Rennecke 5d9b5481e3 Individual processor configurations for sh-elf / sh-linux:
gcc:
	* config.gcc: Add support for sh[234]*-*-elf*, sh[2346lbe]*-*-linux*.
	* config/sh/linux.h (TARGET_DEFAULT): Use TARGET_CPU_DEFAULT.
	* sh.h (SELECT_SH1, SELECT_SH2, SELECT_SH3, SELECT_SH3E): New macros.
	(SELECT_SH4_NOFPU, SELECT_SH4_SINGLE_ONLY, SELECT_SH4): Likewise.
	(SELECT_SH4_SINGLE, SELECT_SH5_64, SELECT_SH5_64_NOFPU): Likewise.
	(SELECT_SH5_32, SELECT_SH5_32_NOFPU, SELECT_SH5_COMPACT): Likewise.
	(SELECT_SH5_COMPACT_NOFPU): Likewise.
	(TARGET_SWITCHES): Use them.
	(TARGET_CPU_DEFAULT): Define if not already defined.
	(TARGET_DEFAULT): Use it.
	(LINK_DEFAULT_CPU_EMUL): Value now depends on TARGET_CPU_DEFAULT.
	* config/sh/t-linux (MULTILIB_OPTIONS): Use MULTILIB_ENDIAN.
	* config/sh/t-monolib: New file.

bfd:
	config.bfd: Add support for sh[1234]l*-*-elf* | sh3el*-*-elf*,
	sh[1234]*-elf*.

ld:
	* configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf.

Still outstanding:
	config.sub:
		* config.sub: Add support for sh[12], sh3e, sh[1234]le, sh3ele,
		shle, sh[1234]le, sh3ele, sh64le.
2002-06-13 20:11:35 +00:00
Alan Modra 3b2687aae5 daily update 2002-06-13 00:00:06 +00:00
Jeff Law 2cb69dd361 * elflink.h (elf_bfd_final_link): Improve error handling for missing
dynamic sections.
2002-06-12 18:14:05 +00:00
Jeff Law 3db4b61245 * elf64-hppa.c (allocate_global_data_opd): We don't need an opd entry
for a symbol that has no output section.
	(allocate_dynrel_entries): Correct comment.
	(elf64_hppa_finalize_dynreloc): Likewise.  Don't create an opd entry
	unless we want one.
	(elf64_hppa_finalize_opd): Prevent segfault if dyn_h is NULL.
	(elf64_hppa_finalize_dlt): Likewise.  Prevent segfault for symbols
	with no section.  Remove unnecessary parentheses.
2002-06-12 18:12:25 +00:00
Tom Rix f381349953 Change text alignement to 4 bytes. 2002-06-12 16:04:39 +00:00
Alan Modra bbd24b5b2e daily update 2002-06-12 00:00:05 +00:00
Alan Modra 013585f27e daily update 2002-06-11 00:00:06 +00:00
Richard Sandiford 0ebaf18527 * section.c (_bfd_strip_section_from_output): Set SEC_EXCLUDE
for removed output sections.
2002-06-10 16:10:43 +00:00
Nick Clifton ebe3e2d199 Use htab_create_alloc with calloc, not htab_alloc. 2002-06-10 10:18:33 +00:00
Alan Modra ea09de6a21 daily update 2002-06-10 00:00:06 +00:00
H.J. Lu 0b14c2aa9b 2002-06-08 H.J. Lu <hjl@gnu.org>
* elf.c (copy_private_bfd_data): Don't cast to bfd_size_type to
	work around a long long bug in gcc 2.96 on mips.
2002-06-09 03:08:54 +00:00
Alan Modra 05b65acb41 daily update 2002-06-09 00:00:03 +00:00
Jason Thorpe 3c2bfad6a0 * Makefile.am (BFD32_BACKENDS): Add vax1knetbsd.lo.
(BFD32_BACKENDS_CFILES): Add vax1knetbsd.c.
Regenerate dependency lists.
* Makefile.in: Regenerate.
* config.bfd (vax-*-netbsdelf*, vax-*-netbsdaout*): Add
vax1knetbsd_vec to targ_selvecs.
* configure.in: Add vax1knetbsd_vec.
* configure: Regenerate.
* targets.c (_bfd_target_vector): Add vax1knetbsd_vec.
* vax1knetbsd.c: New file.
* vaxnetbsd.c: Update copyright years.
(TARGET_PAGE_SIZE): Set to 0x1000.
(DEFAULT_MID): Set to M_VAX4K_NETBSD.
2002-06-08 23:23:08 +00:00
Jason Thorpe 91149be392 2002-06-08 Matt Thomas <matt@3am-software.com>
* libaout.h (enum machine_type): Add M_VAX4K_NETBSD.
2002-06-08 23:01:10 +00:00
Alan Modra 21e152480c * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Make static. 2002-06-08 12:27:33 +00:00
Alan Modra 796f6cb780 * Makefile.am: Fix quote style in last change.
* Makefile.in: Regenerate.
2002-06-08 08:50:44 +00:00
Alan Modra e90b95f66d * Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
2002-06-08 08:45:03 +00:00
Alan Modra 3f9c735ef4 * armnetbsd.c: Replace CONST with const.
* corefile.c: Likewise.
	* elf32-dlx.c: Likewise.
	* elf64-mips.c: Likewise.
	* mmo.c: Likewise.
	* ns32knetbsd.c: Likewise.
2002-06-08 07:27:52 +00:00
Alan Modra 986b7daaef * elf64-sparc.c (sparc64_elf_add_symbol_hook): Check the hash
table is elf64-sparc.
2002-06-08 03:01:47 +00:00
Alan Modra 965cd73762 daily update 2002-06-08 00:00:04 +00:00
Thiemo Seufer 5a65966349 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Simplify code.
Fix RELA addends to get not shifted in the result. Don't do special
	handling of R_MIPS_64 for NewABI.
2002-06-07 23:43:41 +00:00
Alan Modra 9bab7074b0 Replace bfd_alloc/bfd_malloc + memset with bfd_zalloc/bfd_zmalloc 2002-06-07 15:04:49 +00:00
Alan Modra 1126897b36 * elf-bfd.h (struct bfd_elf_section_data <group_name>): Replace with
"group" union.
	(elf_group_name): Update.
	(elf_group_id): Define.
	(bfd_elf_set_group_contents): Declare.
	* elf.c (elf_fake_sections): Qualify use of elf_group_name.
	(set_group_contents): Rename to bfd_elf_set_group_contents.  Remove
	ATTRIBUTE_UNUSED from failedptrarg.  If elf_group_id is set, use
	that sym for the signature.
	(_bfd_elf_compute_section_file_positions): Don't call
	set_group_contents for "ld -r" case.
	(swap_out_syms): Use bfd_zalloc.
	* elflink.h (elf_link_add_archive_symbols): Likewise.
	(NAME(bfd_elf,size_dynamic_sections)): Likewise.
	(elf_bfd_final_link): Call bfd_elf_set_group_contents.
2002-06-07 14:57:11 +00:00
Alan Modra 3fad3c7c22 * elf64-ppc.c (ppc64_elf_relocate_section): Allow unresolved
relocs in opd for non-shared too.
2002-06-07 10:21:53 +00:00
Alan Modra c46f20ef0a * Makefile.am (libbfd.h): Don't use "echo -n".
(libcoff.h, bfd.h): Likewise.
	* Makefile.in: Regenerate.
2002-06-07 07:37:20 +00:00
Alan Modra feb2269354 daily update 2002-06-07 00:11:11 +00:00
Jeff Law 76f99c63fb * elf32-h8300.c (elf32_h8_relax_section): Ignore uninteresting
relocations.
2002-06-06 21:33:11 +00:00
Nick Clifton 7217313c59 Include libiberty.h 2002-06-06 10:47:27 +00:00
Alan Modra 6cb2281567 * peXXigen.c (pe_print_idata): Remove unused variable. 2002-06-06 10:45:14 +00:00
Nick Clifton 1ed89aa92e Do not include empty sections in loadable segments. 2002-06-06 10:03:38 +00:00
Alan Modra abd4c6a26d * bfdint.texi: Change registry@sco.com to registry@caldera.com. 2002-06-06 09:58:57 +00:00
Richard Sandiford 644c4c80f9 * stabs.c (_bfd_link_section_stabs): Check that the symbol offset
is within the .stabstr section.
2002-06-06 09:24:56 +00:00
Alan Modra f8ecb12b16 elf_swap_symbol_in args should be "const PTR", not "const PTR *". 2002-06-06 00:29:22 +00:00
Alan Modra a1c1c00904 daily update 2002-06-06 00:00:05 +00:00
Joern Rennecke 7a33bc1016 gcc:
* config.gcc (sh-*-elf*,  sh64*-*-elf*): Unify.
	(shl*-*-elf*): Add.
	* config/sh/t-be (MULTILIB_ENDIAN): Set.
	* config/sh/t-le (MULTILIB_ENDIAN): Likewise.
	* t-sh (MULTILIB_ENDIAN): Set.
	(MULTILIB_OPTIONS): Use it.
	* t-sh64 (MULTILIB_OPTIONS): Likewise.
	(MULTILIB_DIRNAMES): Likewise.
bfd:
	* config.bfd (sh64l*-*-elf*, shl*-*-elf*): New configurations.
ld:
	configure.tgt (shle*-*-elf*, sh64le-*-elf*): New configurations.
2002-06-05 19:54:28 +00:00