Commit Graph

1902 Commits

Author SHA1 Message Date
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
Alan Modra
9dce4196b4 * elf.c (group_signature): Swap in the whole symbol, and handle
extracting section symbol names.
	(setup_group): Add comment.
	(set_group_contents): When called from objcopy or ld, arrange for
	section contents to be written.  Write group member output section
	indices to allow objcopy to reorganize sections.
	(_bfd_elf_copy_private_section_data): Copy group info.
2002-06-05 14:06:12 +00:00
Alan Modra
73ff0d563c * elf-bfd.h (struct elf_size_info): Add swap_symbol_in field.
(bfd_elf32_swap_symbol_in): Update prototype.
	(bfd_elf64_swap_symbol_in): Likewise.
	* elfcode.h (elf_swap_symbol_in): Change input args to const PTR *.
	(elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in.
	* elflink.h (elf_link_is_defined_archive_symbol): Likewise.
	(elf_link_add_object_symbols): Likewise.
	(elf_link_record_local_dynamic_symbol): Likewise.
	(elf_link_input_bfd): Likewise.
	(elf_gc_mark): Likewise.
	(elf_reloc_symbol_deleted_p): Likewise.
	* elf-m10200.c (mn10200_elf_relax_section): Likewise.
	(mn10200_elf_relax_delete_bytes): Likewise.
	(mn10200_elf_symbol_address_p): Likewise.
	(mn10200_elf_get_relocated_section_contents): Likewise.
	* elf-m10300.c (mn10300_elf_relax_section): Likewise.
	(mn10300_elf_relax_section): Likewise.
	(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): Likewise.
	(elf32_h8_relax_delete_bytes): Likewise.
	(elf32_h8_symbol_address_p): Likewise.
	(elf32_h8_get_relocated_section_contents): Likewise.
	* elf32-hppa.c (get_local_syms): Likewise.
	* elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise.
	* elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
	* elf32-sh.c (sh_elf_relax_section): Likewise.
	(sh_elf_relax_delete_bytes): Likewise.
	(sh_elf_get_relocated_section_contents): Likewise.
	* elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
	* elf64-alpha.c (elf64_alpha_relax_section): Likewise.
	* elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
	* elf64-mmix.c (mmix_elf_relax_section): Likewise.
	* elf64-ppc.c (get_local_syms): Likewise.
	* elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
	* elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
	* elfcode.h (NAME(_bfd_elf,size_info)): Update initialiser.
	* elf64-alpha.c (alpha_elf_size_info): Likewise.
	* elf64-hppa.c (hppa64_elf_size_info): Likewise.
	* elf64-mips.c (mips_elf64_size_info): Likewise.
	* elf64-s390.c (s390_elf64_size_info): Likewise.
	* elf64-sparc.c (sparc64_elf_size_info): Likewise.
2002-06-05 13:32:02 +00:00
Maciej W. Rozycki
53bfd6b45b * elf32-mips.c (elf32_mips_ignore_discarded_relocs): Move to...
elfxx-mips.c (_bfd_mips_elf_ignore_discarded_relocs): ... here.
elf64-mips.c (elf_backend_ignore_discarded_relocs): Use
_bfd_mips_elf_ignore_discarded_relocs.
elfxx-mips.h (_bfd_mips_elf_ignore_discarded_relocs): Declare.
2002-06-05 10:31:47 +00:00
H.J. Lu
d4df96e6ca 2002-06-05 H.J. Lu <hjl@gnu.org>
* elfxx-mips.c (mips_elf_calculate_relocation): Call
	_bfd_elf_rel_local_sym for STT_SECTION relocations against
	the SEC_MERGE section.
2002-06-05 06:50:16 +00:00
Alan Modra
3cac74d016 * coff-alpha.c: Update copyright date.
* coff-mips.c: Likewise.
	* xcoff-target.h: Likewise.
2002-06-05 04:22:27 +00:00
Alan Modra
e61463e1e6 * bfd-in.h: Remove "taken from the source" comment.
* libbfd-in.h: Likewise.
	* libcoff-in.h: Likewise.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
	* libcoff.h: Regenerate.

	* elf.c (bfd_elf_discard_group): Return true.
	* elf-bfd.h (bfd_elf_discard_group): Declare.
	* bfd-in.h (bfd_elf_discard_group): Don't declare here.
	* section.c (bfd_discard_group): Rename to bfd_generic_discard_group.
	* bfd.c (bfd_discard_group): Define.
	* targets.c (struct bfd_target): Add _bfd_discard_group.
	(BFD_JUMP_TABLE_LINK): Here too.
	* libbfd-in.h (_bfd_nolink_bfd_discard_group): Define.
	* aout-adobe.c (aout_32_bfd_discard_group): Define.
	* aout-target.h (MY_bfd_discard_group): Define.
	* aout-tic30.c (MY_bfd_discard_group): Define.
	* binary.c (binary_bfd_discard_group): Define.
	* bout.c (b_out_bfd_discard_group): Define.
	* coff-alpha.c (_bfd_ecoff_bfd_discard_group): Define.
	* coffcode.h (coff_bfd_discard_group): Define.
	* coff-mips.c (_bfd_ecoff_bfd_discard_group): Define.
	* elfxx-target.h (bfd_elfNN_bfd_discard_group): Define.
	* i386msdos.c (msdos_bfd_discard_group): Define.
	* i386os9k.c (os9k_bfd_discard_group): Define.
	* ieee.c (ieee_bfd_discard_group): Define.
	* ihex.c (ihex_bfd_discard_group): Define.
	* mmo.c (mmo_bfd_discard_group): Define.
	* nlm-target.h (nlm_bfd_discard_group): Define.
	* oasys.c (oasys_bfd_discard_group): Define.
	* ppcboot.c (ppcboot_bfd_discard_group): Define.
	* som.c (som_bfd_discard_group): Define.
	* srec.c (srec_bfd_discard_group): Define.
	* tekhex.c (tekhex_bfd_discard_group): Define.
	* versados.c (versados_bfd_discard_group): Define.
	* vms.c (vms_bfd_discard_group): Define.
	* xcoff-target.h (_bfd_xcoff_bfd_discard_group): Define.
	* coff64-rs6000.c (rs6000coff64_vec): Update initialiser.
	(aix5coff64_vec): Likewise.
	* coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise.
2002-06-05 03:43:11 +00:00
Alan Modra
86fb1dece3 * Makefile.am (libbfd.h): Add "Extracted from.." comment.
(libcoff.h, bfd.h): Likewise.
	* Makefile.in: Regenerate.
2002-06-05 03:40:58 +00:00
Jason Thorpe
9cba27b282 bfd/
* Makefile.am (BFD32_BACKENDS): Add elf32-sh64-com.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh64-com.c.
(elf32-sh64-com.lo): New dependency list.
* Makefile.in: Regenerate.
* configure.in (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec)
(bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec): Add
elf32-sh64-com.lo.
* configure: Regenerate.
* elf32-sh64.c (sh64_address_in_cranges)
(sh64_get_contents_type, sh64_address_is_shmedia): Move to...
(crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb):
(crange_bsearch_cmpl): Prepend _bfd_sh64_ to name and move to...
* elf32-sh64-com.c: ...here.  New file.

include/elf/
* sh.h (_bfd_sh64_crange_qsort_cmpb, _bfd_sh64_crange_qsort_cmpl)
(_bfd_sh64_crange_bsearch_cmpb, _bfd_sh64_crange_bsearch_cmpl): New
prototypes.
2002-06-05 01:50:42 +00:00
Alan Modra
58aaa5e6a5 daily update 2002-06-05 00:00:05 +00:00
Alan Modra
8d2c33be03 * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Remove
ATTRIBUTE_UNUSED on used params.
	* elf32-vax.c (elf_vax_gc_mark_hook): Remove unnecessary checks
	before calling bfd_section_from_elf_index on local syms.
	* elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
2002-06-04 05:28:52 +00:00
Jason Thorpe
5b0e55b627 bfd:
* Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
(BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
(BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
(elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
* Makefile.in: Regenerate.
* config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
* configure: Regenerate.
* elf32-sh64-nbsd.c: New file.
* elf64-sh64-nbsd.c: New file.
* targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
bfd_elf64_sh64lnbsd_vec.

gas:
* configure.in (sh5*): Set cpu_type to sh64 and endian to big.
(sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
(sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
* configure: Regenerate.
* config/tc-sh64.c (sh64_target_format): Add support for NetBSD
environment.

ld:
* Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
(eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
(eshlelf64_nbsd.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* emulparams/shelf32_nbsd.sh: New file.
* emulparams/shelf64_nbsd.sh: New file.
* emulparams/shlelf32_nbsd.sh: New file.
* emulparams/shlelf64_nbsd.sh: New file.

opcodes:
* configure.in: Add "sh5*-*" to list of targets which include
sh64 support.
* configure: Regenerate.
2002-06-04 02:57:44 +00:00
Alan Modra
b885599bed * elf.c (setup_group): Set SEC_LINK_ONCE on GRP_COMDAT groups.
(bfd_section_from_shdr): Likewise.  Set section name of group
	sections from signature.
	(group_signature): Split out from setup_group.  Ensure symbol table
	is available.
	(bfd_elf_discard_group): New function.
	(_bfd_elf_make_section_from_shdr): Don't set SEC_LINK_ONCE on
	.gnu.linkonce* sections if they are members of a group.
	(set_group_contents): Set GRP_COMDAT flag.
	* section.c (bfd_discard_group): New function.
	* bfd-in.h (bfd_elf_discard_group): Declare.
	* bfd-in2.h: Regenerate.
	* elf-bfd.h (struct bfd_elf_section_data): Add linkonce_p field.
	(elf_linkonce_p): Define.
2002-06-04 01:05:21 +00:00
Alan Modra
90937f86aa * elf.c (bfd_section_from_shdr): Make "name" const.
* elf-bfd.h (elf_backend_section_from_shdr): Likewise.
	* elf32-i370.c (i370_elf_section_from_shdr): Likewise.
	* elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
	* elf32-sh64.c (sh64_backend_section_from_shdr): Likewise.
	* elf32-v850.c (v850_elf_section_from_shdr): Likewise.
	* elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise.
	* elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise.
	* elf64-ppc.c (ppc64_elf_section_from_shdr): Likewise.
	* elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise.
	* elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise.
	* elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise.
2002-06-04 00:51:08 +00:00
Alan Modra
8898d63eae daily update 2002-06-04 00:00:04 +00:00
Maciej W. Rozycki
cf6fb9ce2f * elfxx-mips.c (ABI_64_P): Use backend's data to determine the
ABI.
2002-06-03 18:42:54 +00:00
Kazu Hirata
cedb70c545 * elf32-arc.c: Fix formatting.
* elf32-arm.h: Likewise.
	* elf32-cris.c: Likewise.
	* elf32-dlx.c: Likewise.
	* elf32-hppa.c: Likewise.
	* elf32-i386.c: Likewise.
	* elf32-i386qnx.c: Likewise.
	* elf32-or32.c: Likewise.
	* elf32-s390.c: Likewise.
	* elf32-sh64.c: Likewise.
	* elf32-vax.c: Likewise.
	* elf32-xstormy16.c: Likewise.
	* elf64-alpha.c: Likewise.
	* elf64-mmix.c: Likewise.
	* elf64-ppc.c: Likewise.
	* elf64-s390.c: Likewise.
	* elf64-sh64.c: Likewise.
	* elf64-x86-64.c: Likewise.
2002-06-03 01:57:10 +00:00
Alan Modra
67a9cc025d daily update 2002-06-03 00:00:05 +00:00
Richard Henderson
048d873d69 * elf64-alpha.c (elf64_alpha_relocate_section): Don't dereference
null when there are no got entries for a symbol.
        (elf64_alpha_relax_find_tls_segment): Rearrange to avoid
        uninitialized variable warning.
2002-06-02 08:35:51 +00:00
Richard Henderson
4a67a09883 * elf64-alpha.c (elf64_alpha_relax_with_lituse): Don't test for
undefined symbols here.
        (elf64_alpha_relax_section): Do it here.  Also test for not
        defined in the current module.
        (elf64_alpha_relocate_section_r): Split out of ...
        (elf64_alpha_relocate_section): ... here.  Don't dereference
        NULL when looking up local got entries.
2002-06-02 06:23:30 +00:00
Richard Henderson
f44f99a52f * elf64-alpha.c (elf64_alpha_relax_with_lituse): Reject undefined
symbols from JSR relaxation.
        (elf64_alpha_size_plt_section_1): New.
        (elf64_alpha_calc_dynrel_sizes): Split out .rela.got bits ...
        (elf64_alpha_size_rela_got_1): ... here.
        (elf64_alpha_size_dynamic_sections): Split out .rela.got bits ...
        (elf64_alpha_size_rela_got_section): ... here.
        (elf64_alpha_size_plt_section): New.
        (elf64_alpha_relax_section): Call them.
        (elf64_alpha_size_got_sections): Remove output_bfd arg.
        (elf64_alpha_finish_dynamic_symbol): Check gotent use_count.
2002-06-02 03:58:40 +00:00
Richard Henderson
9e756d64bb include/elf/
* alpha.h (LITUSE_ALPHA_ADDR, LITUSE_ALPHA_BASE, LITUSE_ALPHA_BYTOFF,
        LITUSE_ALPHA_JSR, LITUSE_ALPHA_TLSGD, LITUSE_ALPHA_TLSLDM): New.

	gas/
        * config/tc-alpha.c: Move LITUSE constants to "elf/alpha.h".
        Rename them LITUSE_ALPHA_*.

	bfd/
        * elf64-alpha.c (alpha_get_dtprel_base, alpha_get_tprel_base): New.
        (elf64_alpha_relocate_section): Use them.  Reject LE TLS relocs
        in shared libraries.  Fix DTPRELHI and TPRELHI value.
        (INSN_ADDQ, INSN_RDUNIQ): New.
        (struct alpha_relax_info): Add symtab_hdr, tls_segment, first_gotent.
        (elf64_alpha_relax_with_lituse): Return boolean.  Remove irelend
        argument.  Reject dynamic symbols.  Use LITUSE symbolic constants.
        (elf64_alpha_relax_got_load): Rename from relax_without_lituse.
        Handle GOTDTPREL and GOTTPREL relocations.
        (elf64_alpha_relax_gprelhilo): New.
        (elf64_alpha_relax_tls_get_addr): New.
        (elf64_alpha_relax_find_tls_segment): New.
        (elf64_alpha_relax_section): Handle TLS relocations.
        (ALPHA_ELF_LINK_HASH_TLS_IE): New.
        (elf64_alpha_check_relocs): Set it.
2002-06-02 02:28:45 +00:00
Alan Modra
868a747d4d daily update 2002-06-02 00:00:06 +00:00
Richard Henderson
b646261c73 * elf64-alpha.c (elf64_alpha_relax_section): Don't store computed gp. 2002-06-01 21:56:41 +00:00
Richard Henderson
d7e41a96e6 * elf64-alpha.c: Remove dead code. 2002-06-01 21:28:59 +00:00
Richard Henderson
c853d7f69e * elf64-alpha.c (elf64_alpha_check_relocs): Fix typo on maybe_dynamic
check; don't suppress dynamic relocs for non-allocated sections.
2002-06-01 21:25:33 +00:00
Alan Modra
4700754efc daily update 2002-06-01 00:00:05 +00:00
Alan Modra
08e0ee059e * bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
	* po/SRC-POTFILES.in: Regenerate.
2002-05-31 04:23:27 +00:00