Commit graph

601 commits

Author SHA1 Message Date
Alan Modra
313e35ee7c * ld.texinfo (VERSION scripts): Symbol names are globbing patterns.
* ldgram.y (lang_new_vers_regex):  Rename to lang_new_vers_pattern;
	the pattern in question is not a regexp.
	* ldlang.c:  Likewise.
	* ldlang.h:  Likewise.
	* ldlex.l (V_IDENTIFIER):  Allow '[', ']', '-', '!', and '^' also.
2002-02-14 04:24:33 +00:00
Jakub Jelinek
2d20f7bf67 * ldlex.l (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
* ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
	(exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp).
	* ldexp.c (exp_data_seg): New variable.
	(exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END.
	(fold_binary): Handle DATA_SEGMENT_ALIGN.
	(exp_fold_tree): Handle DATA_SEGMENT_END.
	Pass allocation_done when recursing instead of hardcoding
	lang_allocating_phase_enum.
	* ldexp.h (exp_data_seg): New.
	* ldlang.c (lang_size_sections_1): Renamed from lang_size_sections.
	(lang_size_sections): New.
	* ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document.
	* scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
	if COMMONPAGESIZE is defined.
	* emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K.
	* emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K.
	* emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K.
	* emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K.
	* emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared
	libraries only.
2002-02-12 14:50:08 +00:00
Alan Modra
06880219d1 * Makefile.in: Regenerate. 2002-02-11 05:18:20 +00:00
Daniel Jacobowitz
37b0ac0fc8 2002-02-10 Daniel Jacobowitz <drow@mvista.com>
* lexsup.c: Remove strtoul declaration.
2002-02-11 02:41:37 +00:00
Daniel Jacobowitz
4e5bae56d4 2002-02-10 Daniel Jacobowitz <drow@mvista.com>
* ldmain.c: Add prototype for main ().
	* lexsup.c: Guard declaration of strtoul with HAVE_STDLIB_H.
	* emultempl/lnk960.em (lnk960_choose_target): Function should
	take two arguments.
2002-02-10 19:12:13 +00:00
Alan Modra
1e28151506 * ldlang.c (entry_section): New initialised variable.
(lang_finish): Use it.
	* ldlang.h (entry_section): Declare.
	* emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Set
	entry_section to ".opd".
2002-02-10 10:55:23 +00:00
Chris Demetriou
f92d92ffd1 Fix date in last entry. I should stop living in the past. 2002-02-10 02:50:09 +00:00
Chris Demetriou
0a9c1c8e0c 2002-02-08 Chris Demetriou <cgd@broadcom.com>
* ld.texinfo (Options): Add back in -nostdlib documentation,
        which had been inadvertently removed.
2002-02-10 00:40:38 +00:00
Hans-Peter Nilsson
74c44237fd * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Adjust
register section vma to a sane value after emitting error.  Make
	fatal conditions cause program exit when emitting message.
2002-02-09 05:07:07 +00:00
Nick Clifton
5e37cc4676 Fix compile time warning messages 2002-02-08 12:12:15 +00:00
Alexandre Oliva
2d92cb7d27 Contribute sh64-elf.
2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
in OTHER_RELOCATABLE_SECTIONS.
2002-01-18  Alexandre Oliva  <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define.
(OTHER_RELOCATABLE_SECTIONS): Renamed to...
(OTHER_SECTIONS): this.	 Removed stack settings.
* emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
(OTHER_SECTIONS): Reset after sourcing shelf32.sh.
2001-03-12  DJ Delorie	<dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
relaxing if any shmedia or mixed sections are found.
2001-03-07  DJ Delorie	<dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
einfo.	Gracefully decline to output to non-elf formats.
2001-03-06  Hans-Peter Nilsson	<hpn@redhat.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
Default to _end aligned to next multiple of 0x40000, plus 0x40000.
* emulparams/shelf32.sh: Ditto.
2001-01-14  Hans-Peter Nilsson	<hpn@cygnus.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
comment.
2001-01-10  Ben Elliston  <bje@redhat.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
non-portable shell constructs. From Hans-Peter Nilsson.
2001-01-09  Hans-Peter Nilsson	<hpn@cygnus.com>
* emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
* Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
dependencies to the shell script include chain.
* Makefile.in: Regenerate.
2001-01-06  Hans-Peter Nilsson	<hpn@cygnus.com>
* emultempl/sh64elf.em: Update and tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
make a .cranges section SEC_IN_MEMORY.
2000-12-30  Hans-Peter Nilsson	<hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
.cranges section found to be necessary; continue and set stored
section contents flags for sections with non-mixed contents.
Use a struct sh64_section_data container and sh64_elf_section_data
to store contents-type flags.
Remove unused update of "isec".
(sh64_elf_${EMULATION_NAME}_after_allocation): Only process
sections marked SHF_SH5_ISA32_MIXED.  Use sh64_elf_section_data to
access contents-type flags.  Assert that the associated container
is initialized.	 Use that container, not elf_gp_size, to hold size
of linker-generated cranges contents.
2000-12-18  Hans-Peter Nilsson	<hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
there's already a .cranges section.  When section flag difference
is found, don't NULL-check cranges a second time.  Tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
merging, not max size, as size of ld-generated .cranges contents.
Don't set ELF section flags in output section.	When checking for
needed .cranges descriptors, don't use a variable; compare
incoming ELF section flags directly to SHF_SH5_ISA32_MIXED.  Tweak
comments.
2000-12-18  Hans-Peter Nilsson	<hpn@cygnus.com>
* emultempl/sh64elf.em: New file.
* Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
* Makefile.in: Regenerate.
* emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
(OTHER_RELOCATING_SECTIONS): Ditto.
(EXTRA_EM_FILE): New, set to sh64elf if not set.
* emulparams/shlelf32.sh: Stub out all settings except
OUTPUT_FORMAT.	Source shelf32.sh.
* emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
OTHER_RELOCATING_SECTIONS.
(OTHER_RELOCATING_SECTIONS): Remove .cranges.
* emulparams/shlelf64.sh: Stub out all settings except
OUTPUT_FORMAT.	Source shelf64.sh.
2000-12-15  Hans-Peter Nilsson	<hpn@cygnus.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
.cranges section.
(DATA_START_SYMBOLS): Define, provide ___data.
(OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
for consecutive .data section.
(OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
section after .data section.
* emulparams/shlelf64.sh: Ditto.
* emulparams/shelf32.sh: Ditto.
(ALIGNMENT): Define to 8.
* emulparams/shelf32.sh: Ditto.
2000-12-12  Hans-Peter Nilsson	<hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
built-in linker scripts.
2000-11-30  Hans-Peter Nilsson	<hpn@cygnus.com>
* emulparams/shlelf64.sh: New.
* emulparams/shelf64.sh: New.
* configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
targ_extra_emuls.
* Makefile.am: Add support for shlelf64 and shelf64.
* Makefile.in: Regenerate.
2000-11-29  Hans-Peter Nilsson	<hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Add shelf as default.
Add shlelf to targ_extra_emuls.
2000-11-24  Hans-Peter Nilsson	<hpn@cygnus.com>
* emulparams/shelf32.sh: New file.
* emulparams/shlelf32.sh: New file.
* Makefile.am: Add support for shlelf32 and shelf32.
* configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
* Makefile.in: Regenerate.
2002-02-08 06:39:01 +00:00
Hans-Peter Nilsson
126730bd1c Forgot to ci ChangeLog 2002-02-05 07:14:26 +00:00
Hans-Peter Nilsson
e3dc884769 * ldlang.c (lang_reset_memory_regions): Rename from
reset_memory_regions.  Change all callers.  Make public.
	* ldlang.h (lang_reset_memory_regions): Prototype.
	* emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call
	lang_reset_memory_regions before lang_size_sections.
2002-02-05 06:52:17 +00:00
Hans-Peter Nilsson
8017dbcb39 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed
arithmetic when checking for too many global registers.
2002-02-04 04:42:29 +00:00
Jason Thorpe
006336b8fe bfd:
* config.bfd (hppa*-*-netbsd*): New target.

gas:
* configure.in (hppa-*-netbsd*): New target.
* configure: Regenerate.
* config/tc-hppa.h: Also define WARN_COMMENTS if TE_NetBSD.

ld:
* Makefile.am (ALL_EMULATIONS): Add ehppanbsd.o.
(ehppanbsd.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt (hppa*-*-netbsd*): New target.
* emulparams/hppalinux.sh: Add comment to check other files
that source this file it is modified, and list which
files that do.
* emulparams/hppanbsd.sh: New file.
2002-02-02 18:36:04 +00:00
Geoffrey Keating
da1f2fec05 In ld/ChangeLog:
* scripttempl/xstormy16.sc: Don't allocate extra space for the
	stack.
In libgloss/ChangeLog:
	* xstormy16/Makefile.in (SIM_OBJS): Remove sbrk.o, add
	sim_malloc_start.o.
	* xstormy16/eva_app.ld: Add __malloc_start.
	* xstormy16/sbrk.c: Remove.
	* xstormy16/sim_malloc_start.s: New file.
	* xstormy16/sim_high.ld: Make the stack start immediately at the
	end of the program.
In newlib/ChangeLog:
	* configure.host (xstormy16): Don't use the generic malloc.
	* libc/machine/xstormy16/Makefile.am: Build tiny-malloc.
	* libc/machine/xstormy16/Makefile.in: Regenerate.
	* libc/machine/xstormy16/mallocr.c: New file.
	* libc/machine/xstormy16/tiny-malloc.c: New file.
2002-02-01 18:00:36 +00:00
Hans-Peter Nilsson
48fa4a5def Support on-demand global register allocation from
R_MMIX_BASE_PLUS_OFFSET relocs.
	* emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from
	mmix_set_reg_section_vma.  Call
	_bfd_mmix_finalize_linker_allocated_gregs.
	(mmix_before_allocation): New function.
	(LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation.
	(LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation.
	* scripttempl/mmo.sc (.text): Mark .init, .fini as KEEP.
	(.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated
	before .MMIX.reg_contents.
	* emultempl/mmo.em (gldmmo_before_allocation): Define to default.
	(mmo_after_open): New function.
	(LDEMUL_AFTER_OPEN): Define to mmo_after_open.
	* emulparams/elf64mmix.sh (OTHER_SECTIONS): Tweak formatting.  Add
	.MMIX.reg_contents.linker_allocated before .MMIX.reg_contents.
2002-02-01 08:24:03 +00:00
Nick Clifton
3b16e843f2 Add support for OpenRISC 32-bit embedded processor 2002-01-31 17:33:08 +00:00
Chris Demetriou
f744d540a5 2002-01-29 Chris Demetriou <cgd@broadcom.com>
Mitch Lichtenberg  <mpl@broadcom.com>

        * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Define to be mipself.
        * emultempl/mipself.em: New file to handle MIPS ELF embedded
        reloc creation (ld --embedded-relocs).
2002-01-30 02:22:14 +00:00
Daniel Jacobowitz
4867be4168 2002-01-27 Daniel Jacobowitz <drow@mvista.com>
From Steve Ellcey <sje@cup.hp.com>:
        * libtool.m4 (HPUX_IA64_MODE): Set to 32 or 64 based on ABI.
        (lt_cv_deplibs_check_method, lt_cv_file_magic_cmd,
        lt_cv_file_magic_test_file): Set to appropriate values for HP-UX
        IA64.
        * ltcf-c.sh (archive_cmds, hardcode_*): Ditto.
        * ltconfig (shlibpath_*, dynamic_linker, library_names_spec,
        soname_spec, sys_lib_search_path_spec): Ditto.


Various configure scripts regenerated.
2002-01-28 04:59:39 +00:00
Hans-Peter Nilsson
cd8e197bd1 * Makefile.am (install): Depend on install-info.
* Makefile.in: Regenerate.
2002-01-26 21:33:06 +00:00
Alan Modra
9cb61eabc1 * ldmain.c (main): Use full sentences to ease translation. 2002-01-26 12:25:21 +00:00
Nick Clifton
1caa7b2354 Updated French translation 2002-01-26 08:53:50 +00:00
Nick Clifton
1ddbd15255 Updated Spanish translation 2002-01-25 14:25:03 +00:00
Andreas Jaeger
1e84433f5c * ldlex.l (yy_input): Correct error check. 2002-01-25 13:04:32 +00:00
Alan Modra
6d39955ebe * ldmisc.c (demangle): Put back dots when string not demangled. 2002-01-25 12:22:42 +00:00
Richard Henderson
a9ed1e1b4e * emulparams/elf64alpha.sh (NOP): Use unop. 2002-01-22 09:51:15 +00:00
Andreas Jaeger
968ec2b9ac * ldlex.l: Use fread instead of read. 2002-01-21 19:53:44 +00:00
Jason Thorpe
9596feeafe bfd:
* config.bfd (ia64*-*-netbsd*): New target.

gas:
* configure.in (ia64-*-netbsd*): New target.
* configure: Regenerate.

ld:
* configure.tgt (ia64-*-netbsd*): New target.
2002-01-21 18:17:28 +00:00
H.J. Lu
493a6d4755 2002-01-21 H.J. Lu <hjl@gnu.org>
* emulparams/elf32btsmip.sh (SHLIB_TEXT_START_ADDR): Change to
	0.
	* emulparams/elf64btsmip.sh (SHLIB_TEXT_START_ADDR): Likewise.
2002-01-21 17:19:09 +00:00
Andreas Jaeger
2a538ba50c gas:
2002-01-18  Andreas Jaeger  <aj@suse.de>

	* as.c (parse_args): Update year.

binutils:
2002-01-18  Andreas Jaeger  <aj@suse.de>

	* version.c (print_version): Update year.

ld:
2002-01-18  Andreas Jaeger  <aj@suse.de>

	* ldver.c (ldversion): Update year.
2002-01-18 11:28:42 +00:00
Nick Clifton
328577adeb Regenerate .pot and .po files 2002-01-17 14:12:08 +00:00
Alan Modra
1f808cd5d7 * Makefile.am (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em.
* Makefile.in: Regenerate.
	* emulparams/elf64ppc.sh (EXTRA_EM_FILE): Define.
	* emultempl/ppc64elf.em: New file.
2002-01-16 05:52:38 +00:00
DJ Delorie
335c561080 * scripttempl/pe.sc: Add support for constructor priorities. 2002-01-16 01:48:43 +00:00
Denis Chertykov
c40bbade5d * emulparams/avr1200.sh (DATA_START): Define as 0x60.
* emulparams/avr23xx.sh: Likewise.
	* emulparams/avr4433.sh: Likewise.
	* emulparams/avr44x4.sh: Likewise.
	* emulparams/avr85xx.sh: Likewise.
	* emulparams/avrmega103.sh: Likewise.
	* emulparams/avrmega161.sh: Likewise.
	* emulparams/avrmega603.sh: Likewise.
	* scripttempl/elf32avr.sc: Use DATA_START instead of 0x60.
2002-01-12 20:22:19 +00:00
Alexandre Oliva
34efb44947 * ldlang.c (walk_wild_section): Exclude object file if enclosing
archive is excluded.
2002-01-08 14:56:09 +00:00
Jason Thorpe
8d05742ff6 bfd:
* Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c.
(elf32-sh-nbsd.lo): New rule.
* Makefile.in: Regenerate.
* config.bfd (sh*le-*-netbsdelf*): New target.
(sh*-*-netbsdelf*): New target.
* configure.in: Include netbsd-core.lo for native sh*-*-netbsd*.
(bfd_elf32_shnbsd_vec): New vector.
(bfd_elf32_shlnbsd_vec): New vector.
* configure: Regenerate.
* elf32-sh-nbsd.c: New file.
* targets.c: Update copyright years.
(_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
bfd_elf32_shnbsd_vec.

gas:
* configure.in (sh*le): Set cpu_type=sh and endian=little.
(sh*-*-netbsdelf*): New target.
* configure: Regenerate.
* tc-sh.h: Update copyright years.
(TARGET_FORMAT): Add version for TE_NetBSD.

ld:
* Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
(eshelf_nbsd.c): New rule.
(eshlelf_nbsd.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt (sh*le-*-netbsdelf*): New target.
(sh*-*-netbsdelf*): New target.
* emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file.
* ld/emulparams/shelf_nbsd.sh: New emulation.
* ld/emulparams/shlelf_nbsd.sh: New emulation.
2002-01-08 04:23:02 +00:00
Nick Clifton
be2d1673e4 Add spanish translation files 2002-01-07 17:37:59 +00:00
Nick Clifton
dbab7a7bff Note that --emit-relocs is currently only implemented for ELF. 2002-01-07 17:32:42 +00:00
Alan Modra
3dfe7a8c3a * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use
of bfd_section_list_remove and bfd_section_list_insert macros.
	* emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
	* emultempl/mmo.em (mmo_place_orphan): Likewise.
2002-01-05 13:14:00 +00:00
Andreas Jaeger
8a8b2d4b4a bfd:
* config.bfd (x86_64-*-netbsd*): New target.
	* configure.in (x86_64-*-netbsd*): Set COREFILE
	to netbsd-core.lo.
	* configure: Regenerated.

gas:
	* configure.in (i386-*-netbsdelf*): Collapse target into...
	(i386-*-netbsd*): ...this.  Add support for x86-64.
	* configure: Regenerated.

ld:
	* configure.tgt (x86_64-*-netbsd*): New target.
2002-01-04 14:49:06 +00:00
Tom Rix
9a4c7f1669 -binitfini emulation, put __rtinit symbol generation into linker. 2001-12-22 17:18:34 +00:00
Alan Modra
cf86e6dffb * configure.tgt (mips*-dec-netbsd*): Delete alias for
mips*el-*-netbsd*.
	(sparc64-*-netbsd*): Add elf32_sparc to targ_extra_emuls.
2001-12-20 05:40:08 +00:00
Alan Modra
3695c2997d * configure.tgt (arm-*-netbsdelf*): Add target.
(arm-*-netbsd*): Add armelf and armelf_nbsd to targ_extra_emuls.
	* emulparams/armelf_nbsd.sh: Added.
	* Makefile.am: Add rules for earmelf_nbsd.
	* Makefile.in: Regenerate.
2001-12-20 03:19:43 +00:00
Andreas Jaeger
97cb79ae08 * configure.host: Add rules for x86_64-*linux-gnu. Change
s390x-linux entry to use gcc to report configuration, replace gcc
	with $CC in s390-linux
2001-12-19 19:58:28 +00:00
Andreas Jaeger
9d201f2ff1 * ld.texinfo (VERSION): Fix markup. 2001-12-19 09:20:22 +00:00
Matthew Green
0b69cd08e0 * config.bfd (m68*-*-netbsdelf*): New target.
(m68*-*-netbsd): Also include bfd_elf32_m68k_vec.
(m68*-*-netbsdaout*): New alias for m68*-*-netbsd.

* configure.in (m68k-*-netbsdelf*): New target.
(m68k-*-netbsd*): Also include ELF support.
(m68k-*-netbsdaout*): New alias for m68*-*-netbsd*.
* configure: Regenerate.

* Makefile.am (ALL_EMULATIONS): Add m68kelfnbsd.o.
(m68kelfnbsd.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt (m68*-hp-netbsd*): Renamed to ..
(m68*-*-netbsd*4k*): .. this.
(m68*-*-netbsdelf*): New target.
(m68*-*-netbsd*): Also include ELF support.
(m68*-*-netbsdaout*): New alias for m68*-*-netbsd*.
* emulparams/m68kelfnbsd.sh: New emulation.
2001-12-18 13:26:26 +00:00
Jakub Jelinek
6b9b879a02 * ldgram.y (vers_node): Support anonymous version tags.
* ldlang.c (lang_register_vers_node): Ensure anonymous version
	tag is not defined together with non-anonymous versions.
	* ld.texinfo: Document it.

	* elflink.h (size_dynamic_sections): Skip anonymous version tag.
	(elf_link_assign_sym_version): Don't count anonymous version tag.
2001-12-18 12:15:35 +00:00
Nick Clifton
9fc877edc5 Import Turkish translation. 2001-12-18 10:35:27 +00:00
Richard Henderson
fc18a3f3f5 * Makefile.am: Add rules for eelf64alpha_nbsd.
* Makefile.in: Regenerate.
        * configure.tgt (alpha*-*-netbsd*): Set
        targ_emul to elf64alpha_nbsd.
        * emulparams/elf64alpha_nbsd.sh: Added.
2001-12-17 23:54:58 +00:00