Commit graph

483 commits

Author SHA1 Message Date
Alexandre Oliva
b1bcb49f9c * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)'
for local symbols whose names are unknown.
2000-06-24 20:10:24 +00:00
Alan Modra
1581f8c9fe Ensure /usr/include and the like stay out of dependencies. 2000-06-22 13:01:43 +00:00
H.J. Lu
bbeb2e037c 2000-06-20 H.J. Lu <hjl@gnu.org>
* Makefile.am: Rebuild dependency.
	* Makefile.in: Rebuild.
2000-06-20 20:41:02 +00:00
Ulf Carlsson
8a20f077fe 2000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function.
	(elf_backend_copy_indirect_symbol): Map to the new function.
2000-06-20 16:37:36 +00:00
Alan Modra
2ab47eed68 Correct pointer comparisons relying on NULL less than any other pointer.
Alexander Aganichev's fix for ieee.c
2000-06-20 12:33:21 +00:00
Ulf Carlsson
b305ef96a1 2000-06-20 Ulf Carlsson <ulfc@engr.sgi.com>
* elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual
	sections elf_{text,data}_{section,symbol}.
	* elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove.
	(_bfd_mips_elf_hide_symbol): New function.
	(elf_backend_hide_symbol): Map to the new function.
	(_bfd_mips_elf_add_symbol_hook): Change to use new per BFD
	definitions of mips_elf_{text,data}_{section,symbol}.
	(mips_elf_local_relocation_p): Try to find the direct symbol
	based on new check_forced argument.
	(mips_elf_calculate_relocation): Use new version of
	mips_elf_local_relocation_p.
	(mips_elf_relocate_section): Likewise.
	(_bfd_mips_elf_relocate_section): Likewise.
	(mips_elf_sort_hash_table): Only assert that have enough GOT
	space.
	(mips_elf_got16_entry): Match all 32 bits to the existing GOT
	entry if the relocation based on the new external argument.
	(mips_elf_create_dynamic_relocation): Assert that we have a
	section contents allocated where we can swap out the dynamic
	relocations.
	(mips_elf_calculate_relocation): Find the real hash-table entry
	correctly by using h->root.root.type.  Only create a dynamic
	relocation entry if the symbol is defined in a shared library.
	Create an external GOT entry for the GOT16 relocation if the
	symbol was forced local.
	(_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a
	dynamic index if the symbol was forced local.

2000-06-20  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* elf32-mips.c: Fix typos in comments.
2000-06-20 11:06:19 +00:00
Mark Kettenis
1605fc4f2a * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef
CORE_VERSION_1.
2000-06-19 19:33:35 +00:00
Nick Clifton
60bcf0fa8c Applied Stephane Carrez <Stephane.Carrez@worldnet.fr> patches to add support
for m68hc11 and m68hc12 processors.
2000-06-19 01:22:44 +00:00
Ulf Carlsson
f41cbf038e 2000-06-18 Ulf Carlsson <ulfc@engr.sgi.com>
* elf_bfd.h (struct elf_backend_data): Add info argument to
	elf_backend_hide_symbol.
	(_bfd_elf_link_hash_hide_symbol): Likewise.
	* elf.c (_bfd_elf_link_hash_hide_symbol): Likewise.
	* elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise.
	* elflink.h (elf_link_add_object_symbols): Likewise.
	(elf_link_assign_sym_version): Likewise.
2000-06-19 00:18:58 +00:00
H.J. Lu
689be71704 2000-06-18 H.J. Lu <hjl@gnu.org>
* coff-i386.c (coff_i386_reloc): Don't return in case of
	output_bfd == (bfd *) NULL if COFF_WITH_PE is defined.
	Compensate PE relocations when linking with non-PE object
	files to generate a non-PE executable.
2000-06-18 23:48:21 +00:00
Ulf Carlsson
9a8f3bb734 2000-06-17 Ulf Carlsson <ulfc@engr.sgi.com>
* elf32-mips.c (mips_elf_calculate_relocation): Explicitly write
	GOT entries if we're doing a static link or -Bsymbolic link.
2000-06-17 09:47:15 +00:00
Ulf Carlsson
32f0787ac8 2000-06-15 Ulf Carlsson <ulfc@engr.sgi.com>
* elflink.h (elf_link_adjust_relocs): Check for and call backend
	specifific swap_reloc_{in,out} and swap_reloca_{in,out} if
	available.
	(elf_link_output_relocs): Likewise.
	(elf_reloc_link_order): Likewise.
2000-06-16 23:01:00 +00:00
Nicholas Duffek
87f33987cd * archures.c (enum bfd_architecture): #define constants for
PowerPc and RS6000 machine numbers.
	* bfd-in2.h: Regenerate.
	* coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch
	to bfd_arch_powerpc instead of bfd_arch_rs6000.  Refer to PowerPc
	and RS6000 machine numbers using #defined constants from
	archures.c.
	* cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000
	machine numbers using #defined constants from archures.c.  Add
	entries for EC603e, 630, A35, RS64II, RS64III, 7400.  Specify
	64-bit words in 620 entry.
	* cpu-rs6000.c (arch_info_struct): Create with entries for RS1,
	RSC, and RS2.
	(bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k).
2000-06-16 20:45:33 +00:00
Nicholas Duffek
a2fdf27064 * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64.
* libcoff-in.h (struct xcoff_tdata): Define xcoff64 field.
	* libcoff.h (struct xcoff_tdata): Define xcoff64 field.
2000-06-16 20:40:50 +00:00
Nicholas Duffek
9bd09e220f * bfd-in.h (bfd_family_coff): Define.
* bfd-in2.h: Regenerate.
	* coffgen.c (coff_count_linenumbers, coff_symbol_from,
	coff_find_nearest_line): Check COFFness using bfd_family_coff()
	instead of bfd_target_coff_flavour.
	* cofflink.c (_bfd_coff_final_link): Likewise.
	* cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to
	exclude XCOFF files.
	* reloc.c (bfd_perform_relocation, bfd_install_relocation):
	Likewise.
	* targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour.
	* xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour.
	* xcofflink.c (XCOFF_XVECP): Delete.
	(bfd_xcoff_link_record_set, bfd_xcoff_import_symbol,
	bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc,
	bfd_xcoff_record_link_assignment,
	bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with
	check for bfd_target_xcoff_flavour.
2000-06-16 20:35:08 +00:00
Nicholas Duffek
59d9f04945 * rs6000-core.c: Support 64-bit core files, support pre-4.3 core
files on AIX 4.3.
	(read_hdr): New function.
	(rs6000coff_core_p): Store mstsave or __context64 struct instead
	of trying to extract individual registers.  Set abfd->arch_info
	to match the architecture that created the core file.
	(rs6000coff_get_section_contents): Delete.
	* xcoff-target.h (rs6000coff_get_section_contents): Delete.
2000-06-16 20:19:24 +00:00
H.J. Lu
63e391789e 2000-06-14 H.J. Lu <hjl@gnu.org>
* vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec)
	is NULL.
2000-06-14 18:10:10 +00:00
H.J. Lu
bcef29e60c 2000-06-13 H.J. Lu <hjl@gnu.org>
* configure: Regenerate.
2000-06-13 19:11:54 +00:00
Joern Rennecke
26bfd1c08b Fix arm-epoc-pe build problem:
* peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of
	armpei_little_vec.
2000-06-13 00:30:46 +00:00
David O'Brien
946efd95b8 * configure.in (VERSION): Update to show this is the CVS mainline.
Approved by:	Nick Clifton <nickc@cygnus.com>
		Message-Id: <200005222205.PAA14565@elmo.cygnus.com>
2000-06-08 19:00:02 +00:00
Alan Modra
dc47f3278f (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and
move HOWTOs into elf_howto_table.
2000-06-07 14:23:51 +00:00
Alan Modra
1b452ec66b Get rid of the -1 dummy valued enum in START_RELOC_NUMBERS.
Remove duplicate reloc enums in elf32-d[13]0v.c
Remove EMPTY_HOWTOs in elf32-i386.c
2000-06-07 03:43:33 +00:00
Michael Snyder
e0ebfc612d 2000-06-06 Michael Snyder <msnyder@seadog.cygnus.com>
* elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t.
2000-06-06 20:00:33 +00:00
Michael Snyder
4a9383286c 2000-05-26 Michael Snyder <msnyder@seadog.cygnus.com>
* elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus,
        elfcore_grok_psinfo): Add code to allow debugging a 32-bit
        corefile on a 64-bit (Sparc Solaris) host.  Also clean up
        a few old comments.
2000-06-06 00:08:01 +00:00
H.J. Lu
9d6eee7847 2000-06-05 H.J. Lu <hjl@gnu.org>
* elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag
	an error when seeing an undefined symbol with hidden/internal
	attribute. It is handled in *_relocate_section ().
2000-06-05 20:46:21 +00:00
H.J. Lu
94b6c40a1a 2000-06-05 H.J. Lu <hjl@gnu.org>
* elflink.h (elf_fix_symbol_flags): Follow the link for the
	indirect symbol for the ELF_LINK_NON_ELF bit.
	(elf_link_output_extsym): Don't output the indirect symbol even
	if the ELF_LINK_NON_ELF bit is set.
2000-06-05 17:21:32 +00:00
J.T. Conklin
0af288f393 * config.bfd (i[3456]86-*-netbsdelf*): New target.
(i[3456]86-*-netbsdaout*): New target.
(i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs.
(i[3456]86-*-openbsd*): Likewise.
2000-06-01 22:06:18 +00:00
Andrew Cagney
12df4d3c6b * trad-core.c: From hpux-core.c, include <dirent.h> or
<sys/ndir.h> when possible.
2000-06-01 10:09:30 +00:00
Nick Clifton
c0ae4cccdd Add comment describoing why dgettext() is used in _() macro. 2000-05-31 18:32:07 +00:00
Ulrich Drepper
321fa0973d Update. 2000-05-31 17:27:56 +00:00
Alan Modra
70d72e0eec (elf_hppa_final_link_relocate) Fix handling of branches. 2000-05-31 09:00:00 +00:00
Nick Clifton
96f6d4c4e0 Accept 80960* machine names (as generated by ieee.c) 2000-05-30 21:31:56 +00:00
H.J. Lu
38048eb911 2000-05-30 H.J. Lu <hjl@gnu.org>
* elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the
	visibility bits if the symbol is undefined. Correctly handle
	weak undefined symbols with hidden and internal attributes.

	* elflink.h (elf_link_add_object_symbols): Always turn the
	symbol into local if it has the hidden or internal attribute.
2000-05-30 20:51:36 +00:00
Phil Blundell
8c763017d2 2000-05-29 Philip Blundell <philb@gnu.org>
* ppcboot.c: Add packed attribute if compiling with GCC.
2000-05-29 18:20:07 +00:00
Alan Modra
1ae00f9d91 (_bfd_elf_link_hash_table_init): Initialize dynlocal. 2000-05-29 05:16:19 +00:00
Alan Modra
2114f57b93 Update dependencies. 2000-05-26 14:14:21 +00:00
Alan Modra
5af11cab92 Eli Zaretskii's DOSish file name patches. 2000-05-26 13:11:57 +00:00
Alan Modra
b6cdd0fd9a (bfd_close_all_done): Mask file perms with 0777 not 0x777. 2000-05-26 07:32:26 +00:00
Jakub Jelinek
f7775d95e6 * elf64-sparc.c (sparc64_elf_relax_section): New.
(sparc64_elf_relocate_section): Optimize tail call into branch always
	if possible.
	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
	(elf32_sparc_relax_section): New.
2000-05-26 06:41:33 +00:00
Jakub Jelinek
6c08d69728 * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters.
Remove unusued variables.
	(sparc64_elf_relocate_section): Change r_symndx type to unsigned long.
	(sparc64_elf_merge_private_bfd_data): Fix shared library case from
	previous fix, so that shared libs really don't influence targets
	extension mask and memory model.
2000-05-26 06:39:51 +00:00
H.J. Lu
ba09750c1e 2000-05-23 H.J. Lu <hjl@gnu.org>
* elf32-mips.c (mips_elf_calculate_relocation): Check
	h->root.other not h->other.

	* elf32-ppc.c (ppc_elf_relocate_section): Fix a typo.
2000-05-23 14:20:57 +00:00
H.J. Lu
edb72b3b35 2000-05-23 H.J. Lu <hjl@gnu.org>
* elf64-alpha.c (elf64_alpha_relocate_section): Check
	h->root.other not h->other.
2000-05-23 14:15:30 +00:00
H.J. Lu
3a27a730c7 2000-05-23 H.J. Lu <hjl@gnu.org>
* elf32-i386.c (elf_i386_relocate_section): Don't allow the
	undefined symbol with the non-default visibility attributes.
	* elf-hppa.h (elf_hppa_relocate_section): Likewise.
	* elf32-arm.h (elf32_arm_relocate_section): Likewise.
	* elf32-i370.c (i370_elf_relocate_section): Likewise.
	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
	* elf32-mcore.c (mcore_elf_relocate_section): Likewise.
	* elf32-mips.c (mips_elf_calculate_relocation): Likewise.
	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
	* elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
	* elf64-ia64.c (elf64_ia64_relocate_section): Likewise.
	* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
2000-05-23 14:05:50 +00:00
Richard Henderson
748abff62c * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI,
PCREL22, PCREL64I.  Zero size of special relocs.
        (elf64_ia64_reloc_type_lookup): Likewise.
        (USE_BRL, oor_brl, oor_ip): New.
        (elf64_ia64_relax_section): New.
        (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I.
        (elf64_ia64_install_value): Likewise, plus PCREL21BI.
        (elf64_ia64_relocate_section): Likewise.
        (bfd_elf64_bfd_relax_section): New.
        * reloc.c (BFD_RELOC_IA64_PCREL21BI): New.
        (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New.
        * bfd-in2.h, libbfd.h: Regenerate.
2000-05-23 01:32:28 +00:00
Nick Clifton
fb67355a64 Add peigen.lo to MIPS PE target 2000-05-22 19:16:59 +00:00
Nick Clifton
1fe494a572 Use bfd_generic_verify_endian_match() and fix it to only check when endianness
is known.
2000-05-22 18:44:02 +00:00
H.J. Lu
32c092c3fa 2000-05-22 H.J. Lu <hjl@gnu.org>
* elflink.h (elf_link_output_extsym): Clear the visibility
	field for symbols not defined locally.
2000-05-22 07:26:58 +00:00
Jeff Law
df6d9773e2 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
        (hppa_rebuild_insn): Mask immediate bits here instead.
        * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
2000-05-19 00:20:31 +00:00
Nick Clifton
7ad3436572 Force relocs emited for an executable to contain virtual addresses. 2000-05-18 17:12:31 +00:00
Jeff Law
d1dab720ad * config.bfd (hppa*64*-*-hpux11*): New target triplet. 2000-05-18 16:55:34 +00:00