Commit Graph

600 Commits

Author SHA1 Message Date
Alan Modra
3fd367102d * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
ie. iterate over wild_statement.section_list.
	(gld${EMULATION_NAME}_place_orphan): Likewise.
2001-08-04 01:21:43 +00:00
Stephane Carrez
de0b18539d * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
.fini[0-4] sections used by _exit
	(CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
	(*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
	* scripttempl/elfm68hc11.sc: Likewise.
2001-08-03 20:41:26 +00:00
H.J. Lu
ff7e6f8868 2001-08-03 H.J. Lu <hjl@gnu.org>
* emultempl/beos.em (init): Add the missing initialization.
2001-08-03 19:19:42 +00:00
Alan Modra
b6bf44ba1b * ld.texinfo (Input Section Basics): Clarify ordering of output
sections.
	* ldlang.c (callback_t): Add wildcard_list param.
	(walk_wild_section): Remove "section" param.  Rewrite for
	lang_wild_statement_type change.  Remove unique_section_p test.
	(walk_wild_file): Remove "section" param.
	(walk_wild): Remove "section" and "file" params.
	(lang_gc_wild): Likewise.
	(wild): Likewise.  Modify for lang_wild_statement_type change.
	(wild_sort): Likewise.  Add "sec" param.
	(gc_section_callback): Likewise.
	(output_section_callback): Likewise.  Do unique_section_p test.
	(map_input_to_output_sections): Modify call to wild.
	(lang_gc_sections_1): Likewise.
	(print_wild_statement): Modify for lang_wild_statement_type
	change.
	(lang_add_wild): Replace filename, filenames_sorted param with
	filespec.  Replace section_name, sections_sorted,
	exclude_filename_list with section_list.
	* ldlang.h (lang_add_wild): Here too.
	(lang_wild_statement_type): Replace section_name, sections_sorted,
	and exclude_filename_list with section_list.
	* ldgram.y (current_file): Delete.
	(%union): Add wildcard_list.
	(file_NAME_list): Set type to wildcard_list.  Build a linked list
	rather than calling lang_add_wild for each entry.
	(input_section_spec_no_keep): Call lang_add_wild here instead.
	* ld.h (struct wildcard_list): Declare.
	* mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
2001-08-03 01:11:21 +00:00
Charles Wilson
b044cda1de 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
* ldmain.c (main): initialize link_info.pei386_auto_import
        * pe-dll.c: new tables for auto-export filtering
        (auto_export): change API, pass abfd for contextual filtering.
        Loop thru tables of excluded symbols instead of comparing
        "by hand".
2001-08-02  Paul Sokolovsky  <paul.sokolovsky@technologist.com>
        * pe-dll.c: new variable pe_dll_enable_extra_debug. New
        static variable current_sec (static struct sec *). Add
        forward declaration for add_bfd_to_link.
        (process_def_file): Don't export undefined symbols. Do not
        export symbols starting with  "_imp__".  Call auto_export()
        with new API.
        (pe_walk_relocs_of_symbol): New function.
        (generate_reloc): add optional extra debugging
        (pe_dll_generate_def_file): eliminate extraneous initial blank
        line in output
        (make_one): enlarge symtab to make room for __nm__ symbols
        (DATA auto-import support).
        (make_singleton_name_thunk): New function.
        (make_import_fixup_mark): New function.
        (make_import_fixup_entry): New function.
        (pe_create_import_fixup): New function.
        (add_bfd_to_link): Specify that 'name' argument is a CONST
        char *.
        * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
        declare new functions pe_walk_relocs_of_symbol and
        pe_create_import_fixup.
        * emultempl/pe.em: add new options --enable-auto-import,
        --disable-auto-import, and --enable-extra-pe-debug.
        (make_import_fixup): New function.
        (pe_find_data_imports): New function.
        (pr_sym): New function.
        (gld_${EMULATION_NAME}_after_open): Add optional extra pe
        debugging. Call pe_find_data_imports.  Mark .idata as DATA, not
        CODE.
2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
        * ld.texinfo: add additional documentation for
        --export-all-symbols.  Document --out-implib,
        --enable-auto-image-base, --disable-auto-image-base,
        --dll-search-prefix, --enable-auto-import, and
        --disable-auto-import.
        * ldint.texinfo: Add detailed documentation on auto-import
        implementation.
2001-08-02 23:12:02 +00:00
Charles Wilson
decc363800 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
* ldmain.c (main): initialize link_info.pei386_auto_import
        * pe-dll.c: new tables for auto-export filtering
        (auto_export): change API, pass abfd for contextual filtering.
        Loop thru tables of excluded symbols instead of comparing
        "by hand".
2001-08-02  Paul Sokolovsky  <paul.sokolovsky@technologist.com>
        * pe-dll.c: new variable pe_dll_enable_extra_debug. New
        static variable current_sec (static struct sec *). Add
        forward declaration for add_bfd_to_link.
        (process_def_file): Don't export undefined symbols. Do not
        export symbols starting with  "_imp__".  Call auto_export()
        with new API.
        (pe_walk_relocs_of_symbol): New function.
        (generate_reloc): add optional extra debugging
        (pe_dll_generate_def_file): eliminate extraneous initial blank
        line in output
        (make_one): enlarge symtab to make room for __nm__ symbols
        (DATA auto-import support).
        (make_singleton_name_thunk): New function.
        (make_import_fixup_mark): New function.
        (make_import_fixup_entry): New function.
        (pe_create_import_fixup): New function.
        (add_bfd_to_link): Specify that 'name' argument is a CONST
        char *.
        * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
        declare new functions pe_walk_relocs_of_symbol and
        pe_create_import_fixup.
        * emultempl/pe.em: add new options --enable-auto-import,
        --disable-auto-import, and --enable-extra-pe-debug.
        (make_import_fixup): New function.
        (pe_find_data_imports): New function.
        (pr_sym): New function.
        (gld_${EMULATION_NAME}_after_open): Add optional extra pe
        debugging. Call pe_find_data_imports.  Mark .idata as DATA, not
        CODE.
2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
        * ld.texinfo: add additional documentation for
        --export-all-symbols.  Document --out-implib,
        --enable-auto-image-base, --disable-auto-image-base,
        --dll-search-prefix, --enable-auto-import, and
        --disable-auto-import.
        * ldint.texinfo: Add detailed documentation on auto-import
        implementation.
2001-08-02 23:03:10 +00:00
Nick Clifton
39c183c149 Do not require any exception support library. Check results against NRV. 2001-08-01 14:37:47 +00:00
Nick Clifton
22a517d05e Do not require any exception support library. 2001-08-01 14:26:18 +00:00
Nick Clifton
156e34dd45 Fix computation in SECTIONS example. 2001-07-30 18:12:07 +00:00
H.J. Lu
e0d85c2645 2001-07-27 H.J. Lu <hjl@gnu.org>
* ld-selective/selective.exp: Fix the error in the last change.
2001-07-27 17:48:27 +00:00
Alan Modra
067f207480 * ld-selective/selective.exp: Support g++ V3 ABI (along side
the old ABI).  Make comparisons against normalized (to
	V3-style) demangled nm output.
2001-07-24 11:09:24 +00:00
Alan Modra
992c450de8 * config/default.exp (ld_nm): Add "nmflags" arg.
* lib/ld-lib.exp (default_ld_nm): Likewise.
	* ld-empic/empic.exp: Adjust call to ld_nm.
	* ld-scripts/defined.exp: Likewise.
	* ld-scripts/script.exp: Likewise.
	* ld-scripts/sizeof.exp: Likewise.
	* ld-selective/selective.exp: Likewise.
	* ld-sh/sh.exp: Likewise.
2001-07-24 11:07:16 +00:00
Alan Modra
d623142740 Update dependencies with "make dep-am". 2001-07-24 10:08:32 +00:00
Alan Modra
e14ec88b39 * ldcref.c (check_section_sym_xref): New function.
(check_nocrossrefs): Call it.
	(check_nocrossref): Interate over h->refs here instead of..
	(check_refs): ..here.  Pass in the symbol name, section, and bfd
	rather than hash_entry pointers.
	(struct check_refs_info): Keep symbol name rather than hash entry.
	Remove "same".
	(check_reloc_refs): Tweak for above changes in check_refs_info.
	Only report references to section syms when symname is NULL to
	prevent duplicate messages for the same reloc.
2001-07-23 07:54:04 +00:00
Nick Clifton
c7d701b094 Use stderr if config.map_file is not available. Do not print NULL trees. 2001-07-19 16:41:00 +00:00
Nick Clifton
1545243be0 If a region is specified assign it to all sections inside the overlay unless they have been assigned to the own, non-default, memory region. 2001-07-19 16:21:39 +00:00
Nick Clifton
1b577b00bd Change bug reporting email address. 2001-07-19 10:43:13 +00:00
H.J. Lu
5030876b5d 2001-07-14 H.J. Lu <hjl@gnu.org>
* emultempl/elf32.em (output_prev_sec_find): Never return
	bfd_abs_section_ptr, bfd_com_section_ptr nor
	bfd_und_section_ptr.
2001-07-14 16:36:25 +00:00
Nick Clifton
18c7a9a534 Fix dependency for em32relf.c 2001-07-14 15:47:17 +00:00
Matthew Green
9ffecff1ce * configure.tgt (i386-*-netbsdelf*): New target.
(i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
2001-07-14 14:45:42 +00:00
Jakub Jelinek
95500e1ca4 * emultempl/elf32.em (output_prev_sec_find): New.
(place_orphan): Use it.
2001-07-13 07:25:18 +00:00
H.J. Lu
bbfebd390d 2001-07-12 H.J. Lu <hjl@gnu.org>
* ld-selective/selective.exp: Mark selective1, selective2,
	selective4 and selective5 xfail on alpha*-*.
2001-07-12 15:03:27 +00:00
H.J. Lu
e97cb84f5a 2001-07-11 H.J. Lu <hjl@gnu.org>
* ldmain.c (main): Fix typos in the last change.
2001-07-11 19:50:56 +00:00
Jakub Jelinek
7333607ede 2001-07-11 Jakub Jelinek <jakub@redhat.com>
* ldmain.c (main): Disallow -F and -f without -shared.
2001-07-11 14:19:05 +00:00
Nick Clifton
d29d80f20c Check for the output_bfd not having any coff_data structure allocated to it. 2001-07-11 08:11:16 +00:00
David O'Brien
c2a1a436ff 2001-07-09 David O'Brien <obrien@FreeBSD.org>
* emultempl/elf32.em: Do not assuming that contents of the buffer
	returned from basename function will remain unchanged accross other
	function calls.

NOTE: DJ Delorie recomends doing a basename()->lbasename() conversion.

Approved by:  DJ Delorie
              <200107100030.UAA01223@envy.delorie.com>
2001-07-10 00:38:16 +00:00
H.J. Lu
63653551a8 2001-07-03 H.J. Lu <hjl@gnu.org>
* scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
	2001-07-03. It creates dynamic entries even for static binaries.
2001-07-03 23:22:20 +00:00
H.J. Lu
d303a449f2 2001-07-03 Jakub Jelinek <jakub@redhat.com>
* scripttempl/elf.sc (DYNAMIC_PAD): New variable.
	(DYNAMIC): Use it to reserve few dynamic entries for
	post-linking tools.
2001-07-03 17:40:14 +00:00
Alan Modra
9f22353f5b * emulparams/hppa64linux.sh: New file.
* configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
	* Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
	(ehppa64linux.c): Add rule to make it.
	Run "make dep-am".
	* Makefile.in: Regenerate.
2001-06-27 08:42:29 +00:00
Hans-Peter Nilsson
62bf86b426 * ld.texinfo (Options, -r): Mention restrictions when using
different object formats.
2001-06-20 22:40:13 +00:00
Hans-Peter Nilsson
429d935daa * ldlang.c (lang_check): Emit fatal error if relocatable link
between different object flavours with relocations in input.
2001-06-19 19:57:39 +00:00
H.J. Lu
cb840a31ad 2001-06-19 H.J. Lu <hjl@gnu.org>
* ld.texinfo (-E, --export-dynamic): Mention --version-script.
	(--version-script): Mention the language support.
2001-06-19 15:22:39 +00:00
H.J. Lu
9bf03accc3 2001-06-19 H.J. Lu <hjl@gnu.org>
* ldlang.c (lang_check): Revert the change mode on 2001-06-15.
2001-06-19 14:39:02 +00:00
Nick Clifton
c45021f2d2 Remove auot generated man pages 2001-06-19 11:57:29 +00:00
Hans-Peter Nilsson
605d9b3a4f * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
	* mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
	* ld.h (args_type): Remove member export_dynamic.  All users
	changed to use struct bfd_link_info member.
2001-06-18 22:20:57 +00:00
Hans-Peter Nilsson
6caa99ab75 * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
$(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
	* Makefile.in: Regenerate.
2001-06-18 20:19:52 +00:00
H.J. Lu
6f9efd9751 2001-06-18 H.J. Lu <hjl@gnu.org>
* ldlang.c (init_os): Add the newline to the einfo call.
	(lang_check): Likewise.
	(lang_do_version_exports_section): Likewise.
2001-06-18 17:23:52 +00:00
H.J. Lu
5af9fd8b93 2001-06-15 H.J. Lu <hjl@gnu.org>
* lexsup.c (parse_args); Save optind to report unrecognized
	option.
2001-06-16 03:41:45 +00:00
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
Hans-Peter Nilsson
261def7062 * config/default.exp (AS, GASP, OBJDUMP, NM, NMFLAGS, OBJCOPY,
OBJCOPYFLAGS, READELF, READELFFLAGS, LD, LDFLAGS): Provide
	default.

	* lib/ld-lib.exp (run_dump_test): Import from gas testsuite.  Add
	new options "ld", "source", "xfail", "target", "notarget" and
	"error".  Support the runtest_file_p "*.exp=testname" feature.
	(slurp_options, regexp_diff, file_contents, verbose_eval): Import
	from gas testsuite.
2001-06-13 03:08:21 +00:00
Nick Clifton
1e9f9630d4 Correct setup_xfail rule. 2001-06-12 16:02:13 +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
H.J. Lu
a5c9dff1ba Fix a typo. 2001-06-06 21:08:09 +00:00
H.J. Lu
66517a2f18 2001-06-06 H.J. Lu <hjl@gnu.org>
* ld-bootstrap/bootstrap.exp: Rebuild tmpdir/ld2 with tmpdir/ld3
	on Linux/mips.

	* ld-elfvers/vers.exp: Also run on istarget Linux/mips.
	* ld-elfvsb/elfvsb.exp: Likewise.
	* ld-shared/shared.exp: Likewise.

	* ld-selective/selective.exp: Mark selective2, selective3,
	selective4 and selective5 xfail on Linux/mips.

	* ld-shared/main.c: Skip invalid -Bsymbolic tests on Linux/mips.

	* symbolic.dat: Remove invalid -Bsymbolic tests on Linux/mips.

	* ld-srec/srec.exp: Add Linux/mips to xfail.
2001-06-06 21:03:59 +00:00
Alan Modra
d52f97627b * ld-undefined/undefined.exp: Add a setup_xfail line for a test
that will always fail on s/390.
2001-06-06 12:11:53 +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
1e329ce6ac For sh-*-linux-gnu target add a start address for the text section. 2001-05-28 10:55:23 +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
H.J. Lu
936f9717c0 2001-05-24 H.J. Lu <hjl@gnu.org>
* ld-scripts/phdrs.exp: Add sparc64 to 64 bit platform.
2001-05-25 04:31:55 +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
Alexandre Oliva
6be7c12c05 * ltconfig, ltmain.sh, libtool.m4, ltcf-c.sh, ltcf-cxx.sh,
ltcf-gcj.sh: Upgraded to libtool 1.4a 1.641.2.254.  Rebuilt a number
of subdir/configure scripts to use the new libtool.m4.
2001-05-20 19:02:56 +00:00
H.J. Lu
9d8b3bf43c 2001-05-18 H.J. Lu <hjl@gnu.org>
* ld-elfvers/vers.exp: Revert the last change.

	* ld-elfvers/vers2.ver: Put back "tmpdir/" the version
	references.
	* ld-elfvers/vers3.ver: Likewise.
	* ld-elfvers/vers6.ver: Likewise.
	* ld-elfvers/vers18.ver: Likewise.
2001-05-18 16:15:42 +00:00
H.J. Lu
0f3f880889 2001-05-17 H.J. Lu <hjl@gnu.org>
* ld-elfvers/vers.exp: Pass "-rpath .:$tmpdir" to "vers19".

	* ld-elfvers/vers1.ver: Remove "tmpdir/" from the version
	definition.
	* ld-elfvers/vers2.ver: Likewise.
	* ld-elfvers/vers3.ver: Likewise.
	* ld-elfvers/vers4a.ver: Likewise.
	* ld-elfvers/vers6.ver: Likewise.
	* ld-elfvers/vers7a.ver: Likewise.
	* ld-elfvers/vers8.ver: Likewise.
	* ld-elfvers/vers9.ver: Likewise.
	* ld-elfvers/vers15.ver: Likewise.
	* ld-elfvers/vers16a.ver: Likewise.
	* ld-elfvers/vers17.ver: Likewise.
	* ld-elfvers/vers18.ver: Likewise.
2001-05-18 01:25:34 +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
8b0fa28299 2001-05-03 H.J. Lu <hjl@gnu.org>
* ld-elfvers/vers19.ver: Expect vers17.so instead of
	*tmpdir/vers17.so.
2001-05-03 06:25:58 +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
7f9adacd07 * ld-scripts/phdrs.exp: Fix regexp, s390x is 64 bit platform.
* ld-scripts/phdrs.t: Use startaddress that's greater than any
        MAXPAGESIZE used.
2001-05-01 08:07:35 +00:00
Andreas Jaeger
35714f2a5d * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value. 2001-04-30 09:37:08 +00:00
H.J. Lu
f0f077e5e5 2001-04-29 H.J. Lu <hjl@gnu.org>
* ld-shared/symbolic.dat: New.

	* ld-shared/shared.exp: Also check -Bsymbolic.
2001-04-29 19:10:21 +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
Andreas Jaeger
b3992bc715 * ld-scripts/phdrs.exp: x86-64 is a 64 bit ELF platform, handle it
special.
2001-04-28 16:14:39 +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
David O'Brien
358a550280 2001-04-01 David O'Brien <obrien@FreeBSD.org>
* ld-undefined/undefined.exp: XFAIL on FreeBSD/i386 for the usual (even
	though it doesn't use DWARF2 yet (but its output is identical).

Approved by:  Alan Modra <alan@linuxcare.com.au>
              <Pine.LNX.4.21.0104021511350.487-100000@front.linuxcare.com.au>
2001-04-02 23:44:03 +00:00
David O'Brien
44df2f94b9 001-04-01 David O'Brien <obrien@FreeBSD.org>
* ld-selective/selective.exp: Use -O with gcc rather than -O2.
	This optimization level is buggy on some platforms, and this test
	is not intended to test compiler optimizations.

Approved by:  Alan Modra <alan@linuxcare.com.au>
              <Pine.LNX.4.21.0104021510450.487-100000@front.linuxcare.com.au>
2001-04-02 23:33:20 +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