Commit graph

411 commits

Author SHA1 Message Date
Hans-Peter Nilsson
7e66c3f530 * ldlang.c (lang_check): Emit fatal error if relocatable link
between different object flavours.
2001-06-15 13:13:46 +00:00
Hans-Peter Nilsson
2a096f0438 * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
Set new link_info member export_dynamic.
	* ldmain.c (main): Initialize new link_info member export_dynamic.
2001-06-15 13:02:23 +00:00
Nick Clifton
6770ec8c9e Chnage load_symbols() to a boolean function 2001-06-15 09:00:11 +00:00
Alan Modra
b6a71ccaa1 Move an entry to the correct ChangeLog. 2001-06-10 13:41:43 +00:00
Alan Modra
8529105a0e * ldlang.c (record_bfd_errors): Remove.
* emultempl/aix.em: Fix copyright dates.
2001-06-08 01:58:20 +00:00
Andreas Jaeger
8f3aa7a03f * emulparms/elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
(TEXT_START_ADDR): Likewise.
2001-06-07 11:18:18 +00:00
Alan Modra
3277f888eb * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390. 2001-06-06 12:11:23 +00:00
DJ Delorie
3763134dca * emultempl/pe.em (init): Reduce default stack reserve to 0x200000. 2001-06-05 00:48:41 +00:00
H.J. Lu
5929ebc003 2001-05-31 H.J. Lu <hjl@gnu.org>
* ldlang.c (open_input_bfds): Don't change the bfd error
	handler whilst loading symbols.
2001-05-31 21:14:59 +00:00
Nick Clifton
c04a062df3 Rmeove i370-mvs architecture - it is not supported. 2001-05-28 08:25:20 +00:00
H.J. Lu
96fcab3e8d 2001-05-25 H.J. Lu <hjl@gnu.org>
* emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
	like emulparams/aixppc.sh.
2001-05-25 22:49:14 +00:00
H.J. Lu
db8d4f2320 2001-05-25 H.J. Lu <hjl@gnu.org>
* emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
	setting of output_filename after bfd_scan_arch.
	* emultempl/pe.em: Likewise.
2001-05-25 22:48:14 +00:00
H.J. Lu
5f64210127 2001-05-25 H.J. Lu <hjl@gnu.org>
* emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
	like emulparams/aixppc.sh.

	* emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
	instead of ${srcdir}/emultempl/stringify.sed.
2001-05-25 21:19:46 +00:00
Timothy Wall
64e9ece0ca monterey updates 2001-05-25 12:42:28 +00:00
Alan Modra
c709b09623 s/linuxaout/linux*aout/, s/linuxoldld/linux*oldld/ 2001-05-25 07:21:01 +00:00
H.J. Lu
6cbdcc6fa9 2001-05-24 H.J. Lu <hjl@gnu.org>
* emultempl/stringify.sed: Removed again.
2001-05-25 05:56:38 +00:00
H.J. Lu
86af25fe1d 2001-05-24 H.J. Lu <hjl@gnu.org>
* emultempl/aix.em (OUTPUT_ARCH): Defined.
	(gld${EMULATION_NAME}_before_parse): Initialize
	ldfile_output_architecture, ldfile_output_machine and
	ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
	* emultempl/beos.em: Likewise.
	* emultempl/elf32.em: Likewise.
	* emultempl/linux.em: Likewise.
	* emultempl/mipsecoff.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/sunos.em: Likewise.
2001-05-25 05:39:22 +00:00
Tom Rix
3b1b01cf25 Support for xcoff64 2001-05-24 20:59:23 +00:00
Alexandre Oliva
57e6abd277 * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
variable to avoid non-portable shell construct.
2001-05-24 02:44:06 +00:00
Nick Clifton
d1cf510e5e Add MIPS r12k support 2001-05-23 17:26:40 +00:00
Nick Clifton
506eee2253 Improve Solaris compatability 2001-05-22 14:00:18 +00:00
Alan Modra
d1778b88f8 Add a flag to asection, linker_has_input, and use it to reliably
determine whether an input section is the first one assigned to
an output section.
2001-05-17 03:58:45 +00:00
DJ Delorie
02649152cc * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
* Makefile.in: Ditto.
2001-05-14 16:55:23 +00:00
Jakub Jelinek
579f31ac74 * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind
sections as well.
	(elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO
	to .gnu.linkonce.t.FOO text section.

	* readelf.c (process_unwind): Print all unwind sections, not just
	one.

	* config/tc-ia64.c (special_linkonce_name): New.
	(make_unw_section): Map .gnu.linkonce.t.FOO text section into
	.gnu.linkonce.ia64unw{,i}.FOO.
	(ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO.
	(dot_endp): Add comment about it.

	* elf/ia64.h (ELF_STRING_ia64_unwind_once): Define.
	(ELF_STRING_ia64_unwind_info_once): Define.

	* emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
	.gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
	output sections.
	* emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
2001-05-11 12:36:47 +00:00
Jakub Jelinek
8550eb6e64 * merge.c (struct sec_merge_hash_entry): Add u.entsize and u.suffix
fields, change sec into secinfo.
	(struct sec_merge_info): Add chain, remove last fields.
	(struct sec_merge_sec_info): Add next, sec, psecinfo fields.
	(sec_merge_hash_lookup): If lookup could not use a string only
	because it has bad alignment, mark the old string for deletion.
	(sec_merge_add): Add secinfo argument. Don't compute entry's
	position, instead record the section.
	(sec_merge_emit): Update for the sec into secinfo change in
	struct sec_merge_hash_entry.
	(_bfd_merge_section): Only record the section for merging, defer
	putting strings into the hash table.
	(cmplengthentry, last4_eq, last_eq, record_section, merge_strings,
	_bfd_merge_sections): New functions.
	(_bfd_merged_section_offset): Update for the sec_merge_hash_entry
	changes.
	* libbfd-in.h (_bfd_merge_sections): Add prototype.
	(_bfd_nolink_bfd_merge_sections): Define.
	* libbfd.h: Likewise.
	(bfd_generic_merge_sections): Add prototype.
	* targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_merge_sections.
	(struct bfd_target): Likewise.
	* bfd.c (bfd_merge_sections): Define.
	* bfd-in2.h: Rebuilt.
	* elf.c (_bfd_elf_merge_sections): New function.
	* elf-bfd.h (_bfd_elf_merge_sections): Add prototype.
	* elfxx-target.h (bfd_elfNN_bfd_merge_sections): Define.
	* reloc.c (bfd_generic_merge_sections): New function.
	* vms.c (vms_bfd_merge_sections): New function.
	* aout-adobe.c (aout_32_bfd_merge_sections): Define.
	* aout-target.h (MY_bfd_merge_sections): Define.
	* aout-tic30.c (MY_bfd_merge_sections): Define.
	* binary.c (binary_bfd_merge_sections): Define.
	* bout.c (b_out_bfd_merge_sections): Define.
	* coff-alpha.c (_bfd_ecoff_bfd_merge_sections): Define.
	* coffcode.c (coff_bfd_merge_sections): Define.
	* coff-mips.c (_bfd_ecoff_bfd_merge_sections): Define.
	* i386msdos.c (msdos_bfd_merge_sections): Define.
	* i386os9k.c (os9k_bfd_merge_sections): Define.
	* ieee.c (ieee_bfd_merge_sections): Define.
	* ihex.c (ihex_bfd_merge_sections): Define.
	* nlm-target.h (nlm_bfd_merge_sections): Define.
	* oasys.c (oasys_bfd_merge_sections): Define.
	* ppcboot.c (ppcboot_bfd_merge_sections): Define.
	* som.c (som_bfd_merge_sections): Define.
	* srec.c (srec_bfd_merge_sections): Define.
	* tekhex.c (tekhex_bfd_merge_sections): Define.
	* versados.c (versados_bfd_merge_sections): Define.
	* xcoff-target.h (_bfd_xcoff_bfd_merge_sections): Define.

	* ldlang.c (lang_process): Call bfd_merge_sections.
2001-05-11 12:23:48 +00:00
Alan Modra
8e5a525cbb * ldgram.y: Fix typo. 2001-05-07 09:20:25 +00:00
H.J. Lu
1c9acd948f 2001-05-03 H.J. Lu <hjl@gnu.org>
* emultempl/elf32.em: Include "libiberty.h".
	(gld${EMULATION_NAME}_vercheck): Call basename () to get the
	basename of the bfd filename.
	(gld${EMULATION_NAME}_stat_needed): Likewise.
	(gld${EMULATION_NAME}_try_needed): Likewise.
	(gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
2001-05-03 06:26:26 +00:00
H.J. Lu
14fe918ef2 2001-05-02 H.J. Lu <hjl@gnu.org>
* emultempl/pe.em: Include <ctype.h>.
2001-05-02 21:01:03 +00:00
Nick Clifton
c7e4034828 Add gas and ld support for openrisc 2001-05-02 18:14:31 +00:00
H.J. Lu
d1b2b2dcb9 2001-05-02 H.J. Lu <hjl@gnu.org>
* ldfile.c: Include "libiberty.h".
	* ldlex.l: Likewise.

	* ldmisc.c (buystring): Removed.
	* ldmisc.h: Likewise.

	* ldfile.c: Replace buystring with xstrdup.
	* ldlang.c: Likewise.
	* ldlex.l: Likewise.
	* ldmain.c: Likewise.
	* ldmisc.c: Likewise.
	* lexsup.c: Likewise.
	* mpw-eppcmac.c: Likewise.
2001-05-02 16:42:55 +00:00
Andreas Jaeger
35714f2a5d * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value. 2001-04-30 09:37:08 +00:00
Nick Clifton
884fb58eeb Give emulation a chance to process unrecognized file before fatal error is
reported, not after.
2001-04-28 18:00:10 +00:00
Nick Clifton
87748b3227 Add support for arm-vxworks target 2001-04-27 17:12:18 +00:00
J.T. Conklin
7ce691aec4 * ld.texinfo: Document --fatal-warnings.
* ld.1: Regenerate.

* ldmisc.c (vfinfo): Set flag to inhibit making executable if
warnings have been turned into errors.
* lexsup.c (OPTION_WARN_FATAL): Define.
(ld_options): Entry for --fatal-warnings.
(parse_args): Handle OPTION_WARN_FATAL.
* ld.h (ld_config_type): Add fatal_warnings field.
2001-04-13 02:22:23 +00:00
Jakub Jelinek
f5fa8ca231 bfd/
* libbfd-in.h (_bfd_merge_section): New.
	(_bfd_write_merged_section): New.
	(_bfd_merged_section_offset): New.
	* libbfd.h: Rebuilt.
	* linker.c (_bfd_generic_link_output_symbols): Handle
	discard_sec_merge.
	* aoutx.h (aout_link_write_symbols): Likewise.
	* pdp11.c (aout_link_write_symbols): Likewise.
	* elflink.h (elf_link_add_object_symbols): Call _bfd_merge_section.
	(elf_bfd_final_link): Adjust global symbols pointing into SEC_MERGE
	sections.
	(elf_link_sec_merge_syms): New.
	(elf_link_input_bfd): Call _bfd_merged_section_offset
	and _bfd_write_merged_section.
	Handle discard_sec_merge.
	* elf-bfd.h (struct elf_link_hash_table): Add merge_info
	field.
	(struct bfd_elf_section_data): Likewise.
	* elf.c (_bfd_elf_make_section_from_shdr): Set SEC_MERGE and
	SEC_STRINGS section flags and entsize from their ELF counterparts.
	(_bfd_elf_link_hash_table_init): Initialize merge_info.
	(elf_fake_sections): Set SHF_MERGE, SHF_STRINGS and sh_entsize
	from their BFD counterparts.
	* merge.c: New file.
	* Makefile.am: Add strtab.lo.
	* Makefile.in: Rebuilt.
include/
	* bfdlink.h (bfd_link_discard): Add discard_sec_merge.
gas/
	* config/obj-elf.c (obj_elf_change_section): Add entsize argument,
	handle SHF_MERGE and SHF_STRINGS.
	(obj_elf_parse_section_letters): Set SHF_MERGE and SHF_STRINGS.
	(obj_elf_section): Allow additional argument specifying entity size.
	* write.c (adjust_reloc_syms): Keep relocations against local symbols
	in SEC_MERGE sections.
ld/
	* ldmain.c (main): Default to discard_sec_merge.
	* lexsup.c (OPTION_DISCARD_NONE): Define.
	(ld_options): Add --discard-none.
	(parse_args): Handle OPTION_DISCARD_NONE.
	* ldlang.c (wild_doit): SEC_MERGE should be set in the output
	section only if SEC_MERGE and SEC_STRINGS flags and entsize of
	all its input sections match.
2001-04-13 00:34:36 +00:00
H.J. Lu
fdec3cfc83 2001-04-05 Steven J. Hill <sjhill@cotw.com>
* Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
	(ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
	(eelf32ltsmip.c): New target.
	(eelf64btsmip.c): Likewise.
	(eelf64ltsmip.c): Likewise.
	* Makefile.in: Regenerated.

	* configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
	target.
	(mips*-*-linux-gnu*): Likewise.

	* emulparams/elf32ltsmip.sh: New. Traditional little endian
	MIPS taget.
	* emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
	target.
	* emulparams/elf64ltsmip.sh: New. Traditional 64bit little
	endian target.
2001-04-08 05:13:57 +00:00
Hans-Peter Nilsson
589bad82a2 * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
correct value of __Stext here.
	(TEXT_START_SYMBOLS): Define; always define __Stext, to start of
	.startup section.

	* emulparams/crislinux.sh: Remove FIXME.
2001-04-05 20:37:54 +00:00
Alan Modra
94202e16cf Bump page size to 64k 2001-04-02 01:21:27 +00:00
Hans-Peter Nilsson
1268a053f8 * configure.tgt (cris-*-*): Change default emulation to criself.
(cris-*-*aout*): New rule.
2001-03-27 02:37:41 +00:00
Alan Modra
d85e9ff7b1 Go to 16k page size on hppa-linux. 2001-03-27 00:42:47 +00:00
Andreas Jaeger
0879a67a8f 2001-03-26 Andreas Jaeger <aj@suse.de>
* binutils.texi (nm): Fix texi syntax.

2001-03-26  Andreas Jaeger  <aj@suse.de>

	* ld.texinfo (Overview): Fix syntax in texi code.
2001-03-26 07:02:59 +00:00
Nick Clifton
0285c67df1 Automate generate on man pages 2001-03-25 20:32:31 +00:00
Nick Clifton
c20ec07b9a Support the GCC flags '-ffunction-sections' and '-fdata-sections'.
Set the VMA of STABS sections to zero.
2001-03-23 23:05:07 +00:00
Ulrich Drepper
cc5ce05235 * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
is an absolute path look only for this file and not along the path.
2001-03-20 18:39:21 +00:00
Ulrich Drepper
a1ab1d2aa3 * emultempl/elf32.em (OPTION_GROUP): New macro.
Add new option Bgroup to longopts.
	(gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
	(gld*_list_options): Add -Bgroup and -z defs.
	* ld.1: Document -Bgroup and -z defs.
	* ld.texinfo: Likewise.
2001-03-17 21:24:26 +00:00
Nick Clifton
a2b64bede3 Fixtypos in ChangeLogs, fix copyright dates in files 2001-03-13 06:14:29 +00:00
Michael Meissner
788fca5a32 Add support for -fdata-sections 2001-03-08 02:20:25 +00:00
Alan Modra
1c7566d167 * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
after_allocation_default, not gld..._before_allocation.
2001-03-05 05:02:03 +00:00
Matthew Hiller
c19bd1c6f4 *** empty log message *** 2001-03-01 19:39:30 +00:00
Matthew Hiller
1688b748f1 2001-02-28 Matt Hiller <hiller@redhat.com>
* testsuite/ld-scripts/crossref.exp: Initialize flags to
	[big_or_little_endian].
	* testsuite/ld-undefined/undefined.exp: Ditto, and include $flags
	in ld invocations.
	* testsuite/lib/ld-lib.exp (big_or_little_endian): Recognize -EB,
	-eb, EL and el.
	(is_endian_output_format): New function.
	(default_ld_link): Set flags to [big_or_little_endian] only if ld
	is being invoked such that the output format being used is of
	known endianness.
	(default_ld_simple_link): Ditto.
2001-03-01 19:13:27 +00:00