Commit Graph

2122 Commits

Author SHA1 Message Date
H.J. Lu
3194163592 Check symbols with undefine version. 2002-08-08 03:50:18 +00:00
Alan Modra
7330fb86f2 * elflink.h (elf_link_output_extsym): Don't output symbols from
SEC_EXCLUDE sections.
2002-08-08 00:20:16 +00:00
Alan Modra
0f3bd64fc5 * aoutx.h (aout_link_write_symbols): Correct handling of warning syms. 2002-08-08 00:11:37 +00:00
Alan Modra
ac0f9ca57d daily update 2002-08-08 00:00:04 +00:00
Alan Modra
a4aa0fb7d0 * elf64-ppc.c (edit_opd): Arrange to drop symbols for discarded .opd
entries.
2002-08-07 05:23:09 +00:00
Thiemo Seufer
34ea4a364d * elfxx-mips.c (mips_elf_create_dynamic_relocation): Cast signedness
mismatch.
2002-08-07 04:44:14 +00:00
Thiemo Seufer
141ff9705a * elfxx-mips.c (ABI_64_P): Remove superfluous check. 2002-08-07 04:37:24 +00:00
Thiemo Seufer
28458e7e44 * elf32-mips.c (mips_reloc_map): Fix typo. 2002-08-07 04:32:14 +00:00
Alan Modra
ca2045c1f6 daily update 2002-08-07 00:00:04 +00:00
Alan Modra
0121a3da9e * xcofflink.c (xcoff_write_global_symbol): Set n_scnum for abs_section. 2002-08-06 11:24:40 +00:00
Alan Modra
d006db6c06 * elf64-ppc.c (ppc64_elf_howto_raw): Zero all src_mask entries. 2002-08-06 09:09:08 +00:00
Alan Modra
2a52da5326 * libxcoff.h: Use PARAMS on function declarations.
* coff-rs6000.c (xcoff_generate_rtinit): Simplify size calc.
	* coff64-rs6000.c (xcoff64_generate_rtinit): Likewise.
2002-08-06 08:59:34 +00:00
Alan Modra
8ea80f0843 * coff-rs6000.c: (xcoff_rtype2howto): Don't place reloc address in
addend.
	* coff64-rs6000.c: (xcoff64_rtype2howto): Likewise.
2002-08-06 08:51:42 +00:00
Alan Modra
cf9ab45bc0 * coff-rs6000.c: Formatting fixes.
(xcoff_calculate_relocation): Use PARAMS in declaration.
	(xcoff_complain_overflow): Likewise.
	(xcoff_ppc_relocate_section): Use old-style function pointer call.
	(bfd_xcoff_backend_data): Remove useless comments.
	(rs6000coff_vec): Likewise.
	(bfd_pmac_xcoff_backend_data): Likewise.
	(pmac_xcoff_vec): Likewise.
	* coff64-rs6000.c: Formatting fixes.
	(xcoff64_calculate_relocation): Use PARAMS in declaration.
	(xcoff64_ppc_relocate_section): Use old-style function pointer call.
	(bfd_xcoff_backend_data): Remove useless comments.
	(rs6000coff64_vec): Likewise.
	(bfd_xcoff_aix5_backend_data): Likewise.
	(aix5coff64_vec): Likewise.
2002-08-06 05:52:29 +00:00
Alan Modra
a78eab4eaf * coff-rs6000.c (xcoff_howto_table): Revert some of last change to
mask entries.  Use complain_overflow_dont for R_REF.
	(xcoff_reloc_type_ba): Revert last change.
	(xcoff_reloc_type_br): Likewise.
	(xcoff_reloc_type_crel): Likewise.
	(xcoff_ppc_relocate_section): Likewise.
	* coff64-rs6000.c (xcoff64_reloc_type_br): Likewise.
	(xcoff64_ppc_relocate_section): Likewise.
	(xcoff64_howto_table): Revert some of last change to mask entries.
	Use complain_overflow_dont for R_REF.
2002-08-06 03:18:25 +00:00
Alan Modra
48bfecdd71 * coff-rs6000.c (xcoff_howto_table): Fix src_mask entries. Make all
relocs with bitsize == 16 have size = 1.
	(xcoff_reloc_type_ba): Correct src_mask and dst_mask adjustment.
	(xcoff_reloc_type_br): Likewise.
	(xcoff_reloc_type_crel): Likewise.
	(xcoff_ppc_relocate_section): Set up src_mask and dst_mask correctly.
	* coff64-rs6000.c (xcoff64_reloc_type_br): Correct src_mask and
	dst_mask adjustment.
	(xcoff64_ppc_relocate_section): Set up src_mask and dst_mask correctly.
	(xcoff64_howto_table): Fix src_mask entries.  Make all relocs with
	bitsize == 16 have size = 1.
2002-08-06 02:29:25 +00:00
Alan Modra
aed3c06f62 daily update 2002-08-06 00:00:08 +00:00
Alan Modra
7dcf061196 daily update 2002-08-05 00:00:04 +00:00
Alan Modra
d48f1a6304 daily update 2002-08-04 00:00:06 +00:00
Alan Modra
52799c296c daily update 2002-08-03 00:00:05 +00:00
Alan Modra
cc5b2fb930 daily update 2002-08-02 00:00:04 +00:00
Denis Chertykov
fd13ed0cdd * elf32-ip2k.c: Processor manufacturer changed to Ubicom.
(struct misc): New field isymbuf. All free_* fields removed.
	(symbol_value): Pass in internal syms. No need to swap syms in.
	(ip2k_elf_relax_section): Use bfd_elf_get_elf_syms. Properly free
	possibly cached info.
	(tidyup_after_error): Removed.
	(ip2k_elf_relax_section_pass1): Don't use removed fields of struct
	misc. Use new field.
	(adjust_all_relocations): Use internal syms. No need to swap syms
	in and out.
	(add_page_insn): Don't use removed fields of struct misc.
2002-08-01 18:29:09 +00:00
Nick Clifton
24a1ba0f48 Revert Adam Nemet's THUMB PLT patch 2002-08-01 14:03:01 +00:00
Nick Clifton
a6903459eb Bump version number. 2002-08-01 06:47:58 +00:00
H.J. Lu
39a2a3eb35 Enable x86-64 for Linux/i386 if 64bit BFD is selected. 2002-08-01 06:24:53 +00:00
Alan Modra
658cc59256 daily update 2002-08-01 00:00:06 +00:00
H.J. Lu
a0dfa6a805 Enable 64bit emulations for Linux/mips if 64bit BFD is selected. 2002-07-31 22:26:53 +00:00
Nick Clifton
4eb6b71c65 Fix bugs and remove compile time warnings for N"32K port. 2002-07-31 16:23:29 +00:00
Jakub Jelinek
cd67d26656 * elf32-i386.c (elf_i386_copy_indirect_symbol): Swap tls_type
if _bfd_elf_link_hash_copy_indirect will swap got.refcount.
2002-07-31 15:04:06 +00:00
Nick Clifton
f7c33884fa Add new field to bfd_link structure and use it to control how common symbols
are extracted from archives.
2002-07-31 12:50:09 +00:00
Nick Clifton
8f64befb29 Add support for Thumb PLT entries with interworking 2002-07-31 12:04:47 +00:00
Nick Clifton
47badb7be6 Rename function arguments to avoid shadowing global symbols of the same name. 2002-07-31 09:38:04 +00:00
Thiemo Seufer
8a397dadf0 * Makefile.am: Add n32 ABI support.
* Makefile.in: Regenerate.
	* config.bfd: Add n32 vectors to mips64*-*-linux* targets. Treat 64
	bit vectors for mips*-*-linux targets as optional.
	* configure.in: Add n32 ABI vectors.
	* configure: Regenerate.
	* elf32-mips.c (mips_elf32_object_p): Reject n32 ABI files.
	* elfn32-mips.c: New file, n32 ABI support.
	* targets.c: Add n32 ABI vectors.
2002-07-31 00:32:10 +00:00
Alan Modra
3edd64ea86 daily update 2002-07-31 00:00:04 +00:00
Nick Clifton
7e392df659 Add arm-*-nto port. 2002-07-30 17:32:30 +00:00
Nick Clifton
83e1617e06 Updated Translations 2002-07-30 15:53:18 +00:00
Jakub Jelinek
704afa601f * elf.c (elf_fake_sections): Fix up .tbss sh_size and sh_type.
* ldlang.c (lang_add_section): Don't turn .tbss into normal sections
	for relocatable link.
	(lang_size_sections_1): Don't make .tbss zero size for relocatable
	link.
2002-07-30 14:28:55 +00:00
Alan Modra
487e54f29a * aoutx.h (some_aout_object_p): Clean up tdata properly on error.
* archive.c (bfd_generic_archive_p): Likewise.
	* coff-rs6000.c (_bfd_xcoff_archive_p): Likewise.
	(_bfd_xcoff_archive_p): Use bfd_scan_vma in place of strtol.
	* coff64-rs6000.c (xcoff64_slurp_armap): Likewise.
	(xcoff64_archive_p): Likewise.
	(xcoff64_openr_next_archived_file): Likewise.
	(xcoff64_archive_p): Clean up tdata properly on error.
	* coffgen.c (coff_real_object_p): Likewise.
	(coff_object_p): Release filehdr and opthdr.
	* ecoff.c (_bfd_ecoff_archive_p): Clean up tdata properly on error.
	* ieee.c (ieee_archive_p): Likewise.
	* ihex.c (ihex_object_p): Likewise.
	(ihex_mkobject): Always allocate tdata.
	* peicode.h (pe_ILF_object_p): Release bfd_alloc'd buffer on error.
	* srec.c (srec_mkobject): Always allocate tdata.
	(srec_object_p): Clean up tdata properly on error.
	(symbolsrec_object_p): Likewise.
	* versados.c (versados_object_p): Likewise.
	* vms-misc.c (_bfd_vms_get_record): Use bfd_malloc instead of malloc,
	and bfd_realloc instead of realloc.
	(add_new_contents): Use bfd_alloc instead of bfd_malloc for sections.
	* vms.c (vms_initialize): Always allocate tdata.  Use bfd_alloc in
	place of bfd_malloc, simplifying error freeing.  Free hash table too.
	(vms_object_p): Clean up tdata on error.
	(vms_mkobject): Don't complain on stderr if vms_initialize fails.
	(vms_close_and_cleanup): Adjust for bfd_alloc use.
2002-07-30 05:49:24 +00:00
Alan Modra
9d46020e53 * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags. 2002-07-30 05:40:20 +00:00
Alan Modra
082818011f daily update 2002-07-30 00:00:05 +00:00
Alan Modra
c5075d8a7b daily update 2002-07-29 00:00:05 +00:00
Alan Modra
f580f40790 daily update 2002-07-28 00:00:06 +00:00
Alan Modra
7be965d994 daily update 2002-07-27 00:00:04 +00:00
Richard Sandiford
fb39dac1ef [bfd/]
* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE
	flags into resulting BFD.

[ld/testsuite/]
	* ld-mips-elf/mips16-1.d,
	* ld-mips-elf/mips16-1[ab].s: New test.
	* ld-mips-elf/mips-elf.exp: Run it.
2002-07-26 18:56:25 +00:00
Alan Modra
7a624474ee * elf32-i386.c (elf_i386_link_hash_table_create): Clear
tls_ldm_got.refcount.
2002-07-26 05:32:05 +00:00
Alan Modra
47d7baedf9 daily update 2002-07-26 00:00:05 +00:00
Thiemo Seufer
a4382ec6f5 * elf64-mips.c: Update TODO comment.
(mips_elf64_higher_reloc,mips_elf64_highest_reloc,
	mips_elf64_gprel16_reloca): Remove prototypes.
	(mips16_jump_reloc,mips16_gprel_reloc): Add functions.
	(UNUSED_RELOC): Replace by EMPTY_RELOC.
	(mips_elf64_howto_table_rel): Use special R_MIPS_HI16 handling. Remove
	wrong comments. Remove disfunctional support of R_MIPS_HIGHER and
	R_MIPS_HIGHEST.
	(mips_elf64_howto_table_rela): Fix handling of R_MIPS_GPREL16 and
	R_MIPS_GOT16. Remove wrong comments.
	(elf_mips16_jump_howto,elf_mips16_gprel_howto,
	elf_mips_gnu_vtinherit_howto,elf_mips_gnu_vtentry_howto): New, code
	from elf32-mips.c.
	(mips_elf64_hi16_reloc): Fix formatting.
	(mips_elf64_higher_reloc,mips_elf64_highest_reloc): Remove.
	(mips_elf64_got16_reloc): Fix formatting. Remove superfluous code.
	Better comment. Fall back to R_MIPS_GOT_DISP instead of abort().
	(mips_elf64_gprel16_reloc): Make static. Add check for
	partial_inplace.
	(mips_elf64_gprel16_reloca): Remove.
	(mips_elf64_literal_reloc): New function.
	(mips_elf64_gprel32_reloc): Fix formatting.
	(mips_elf64_shift6_reloc): Fix comment. Make static.
	(mips16_jump_reloc,mips16_gprel_reloc): New functions, code from
	elf32-mips.c.
	(elf_reloc_map,mips_reloc_map): New mapping table, similiar as in
	elf32-mips.c
	(bfd_elf64_bfd_reloc_type_lookup): Use the mapping table. Enable GNU
	specific relocations.
	(mips_elf64_rtype_to_howto): Enable GNU specific relocations.
	(mips_elf64_object_p): Invert logic to check for SGI-ish ABI.
	(ELF_MAXPAGESIZE): Add comment.
2002-07-25 15:35:14 +00:00
Nick Clifton
219576a4db New translations 2002-07-25 10:31:28 +00:00
Alan Modra
8c58d23b6d * elf-bfd.h (_bfd_elf32_link_record_local_dynamic_symbol): Define
as elf_link_record_local_dynamic_symbol.
	(_bfd_elf64_link_record_local_dynamic_symbol): Likewise.
	(elf_link_record_local_dynamic_symbol): Declare.  Now returns int.
	* elflink.h (elf_link_record_local_dynamic_symbol): Move to..
	* elflink.c: .. here.  Use bfd_elf_get_elf_syms.  Check whether an
	attempt is made to record a symbol in a discarded section, and
	return `2' in that case.
2002-07-25 06:54:51 +00:00
Alan Modra
493329900c daily update 2002-07-25 00:00:05 +00:00
Nick Clifton
ff3063f557 Update Spanish and Swedish translations 2002-07-24 09:34:08 +00:00
Alan Modra
f345c7910f daily update 2002-07-24 00:00:04 +00:00
Nick Clifton
4455705d76 fix typo introduced in previous delta 2002-07-23 18:02:32 +00:00
Alan Modra
c1fb5f8a73 Regenerate. 2002-07-23 12:37:37 +00:00
Alan Modra
de2d743ed8 missed 'em from the last delta 2002-07-23 12:34:35 +00:00
Alan Modra
f0fe0e16e1 * elf-hppa.h (elf_hppa_relocate_section): If relocatable, return
immediately.  Remove code handling relocatable linking.
	* elf32-avr.c (elf32_avr_relocate_section): Likewise.
	* elf32-cris.c (cris_elf_relocate_section): Likewise.
	* elf32-fr30.c (elf32_frv_relocate_section): Likewise.
	* elf32-h8300.c (elf32_h8_relocate_section): Likewise.
	* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
	* elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
	* elf32-v850.c (v850_elf_relocate_section): Likewise.
	* elf32-vax.c (elf_vax_relocate_section): Likewise.
	* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
	* elf32-avr.c (elf_backend_rela_normal): Define.
	* elf32-cris.c: Likewise.
	* elf32-fr30.c: Likewise.
	* elf32-h8300.c: Likewise.
	* elf32-hppa.c: Likewise.
	* elf32-ip2k.c: Likewise.
	* elf32-sparc.c: Likewise.
	* elf32-v850.c: Likewise.
	* elf32-vax.c: Likewise.
	* elf64-hppa.c: Likewise.
	* elf64-sparc.c: Likewise.
	* elf32-fr30.c (elf32_frv_relocate_section): Edit comment.
	* elf32-i860.c (elf32_i860_relocate_section): Likewise.
	* elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
	* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
	* elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
	* elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
	* elf-m10200.c (USE_RELA): Don't define.
	* elf-m10300.c: Likewise.
	* elf32-i370.c: Likewise.
	* elf32-ip2k.c: Likewise.
	* elf32-m68k.c: Likewise.
	* elf32-mcore.c: Likewise.
	* elf32-ppc.c: Likewise.
	* elf32-s390.c: Likewise.
	* elf32-vax.c: Likewise.
	* elf64-ppc.c: Likewise.
	* elf64-s390.c: Likewise.
	* elf64-x86-64.c: Likewise.
	* elfxx-ia64.c: Likewise.
	* elf32-avr.c (USE_REL): Don't undef.
	* elf32-ip2k.c: Likewise.
2002-07-23 12:29:33 +00:00
Nick Clifton
5e8d754953 Add new bitfield 'want_p_paddr_set_to_zero'.
Set this field for HPUX IA64 port.
Test this field when setting p_paddr.
2002-07-23 11:15:06 +00:00
Nick Clifton
9e12c7db7f Swapped the order of the MeSsAgEs and CoPyRiGhT tags to make >=NW4.x NLM
loaders to show the Copyright string.
2002-07-23 10:25:34 +00:00
Nick Clifton
0461a601af update translations. 2002-07-23 09:58:05 +00:00
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