Commit Graph

1079 Commits

Author SHA1 Message Date
Alan Modra
19c7c58222 * ld-discard/discard.exp, ld-scripts/phdrs.exp, ld-scripts/phdrs2.exp,
ld-selective/sel-dump.exp: Test hppa*64*-*-hpux* target.
	* ld-elfvers/vers.exp, ld-elfvsb/elfvsb.exp, ld-elfweak/elfweak.exp,
	ld-linkonce/linkonce.exp, ld-shared/shared.exp,
	ld-undefined/weak-undef.exp:  Test hppa*64*-*-hpux* and hppa*-*-linux*
	targets.
	* ld-discard/exit.s, ld-discard/extern.s, ld-discard/start.s,
	ld-discard/static.s: Add whitespace before assembler directives.
2002-07-30 07:41:15 +00:00
Chris Demetriou
70a3140046 [ gas/testsuite/ChangeLog ]
2002-07-26  Chris Demetriou  <cgd@broadcom.com>

        * gas/mips/elf_ase_mips16.d: New file to test ELF MIPS16 ASE marking.
        * gas/mips/elf_ase_mips16.s: Likewise.
        * gas/mips/mips.exp: Run the new test.

[ ld/testsuite/ChangeLog ]
2002-07-26  Chris Demetriou  <cgd@broadcom.com>

        * ld-mips-elf/mips16-1.d: Check that ASE flag is actually set.
2002-07-29 21:07:12 +00:00
Richard Sandiford
fb39dac1ef [bfd/]
* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE
	flags into resulting BFD.

[ld/testsuite/]
	* ld-mips-elf/mips16-1.d,
	* ld-mips-elf/mips16-1[ab].s: New test.
	* ld-mips-elf/mips-elf.exp: Run it.
2002-07-26 18:56:25 +00:00
Bernd Schmidt
7dcd22c276 Change from OTHER_RELOCATING_SECTIONS to STACK_ADDR in elf32frv.sh 2002-07-26 11:14:04 +00:00
Nick Clifton
219576a4db New translations 2002-07-25 10:31:28 +00:00
Nick Clifton
ff3063f557 Update Spanish and Swedish translations 2002-07-24 09:34:08 +00:00
Alan Modra
a59f3d35c8 Add missing 2001-09-29 entry 2002-07-24 06:45:02 +00:00
H.J. Lu
d11032092d Fix a typo. 2002-07-24 06:42:54 +00:00
Nick Clifton
0461a601af update translations. 2002-07-23 09:58:05 +00:00
Alan Modra
25844aaec2 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
bomb on /DISCARD/ input section.
	* emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
	* emultempl/mmo.em (mmo_place_orphan): Likewise.
2002-07-20 13:41:11 +00:00
Hans-Peter Nilsson
ccaf4e0741 * ld-mmix/sec-1.d: Adjust for changes in padding.
* ld-mmix/sec-3.d: Ditto.
2002-07-19 03:30:13 +00:00
Hans-Peter Nilsson
3595bd6e74 * emultempl/mmo.em (mmo_place_orphan): Handle case of no .text
output section.
2002-07-19 02:56:59 +00:00
Nick Clifton
cf88bb9f09 Add IP2k support to BFD and LD 2002-07-17 14:15:52 +00:00
Nick Clifton
2cbb2eefe2 Add 'Chnages in 2.13' to NEWS files. 2002-07-16 07:58:34 +00:00
H.J. Lu
b42d80615e 2002-07-15 H.J. Lu <hjl@gnu.org>
* ld-elfvers/vers.exp: Add vers21.

	* ld-elfvers/vers21.c: New.
	* ld-elfvers/vers21.dsym: New.
	* ld-elfvers/vers21.map: New.
	* ld-elfvers/vers21.sym: New.
	* ld-elfvers/vers21.ver: New.
2002-07-16 00:15:57 +00:00
H.J. Lu
96a94295f2 bfd/
2002-07-14  H.J. Lu <hjl@gnu.org>

	* elflink.h (elf_link_assign_sym_version): Hide the default
	definition if there is a hidden versioned definition.

ld/
2002-07-14  H.J. Lu <hjl@gnu.org>

	* ld.texinfo: Document a .symver takes precedence over a
	version script.
2002-07-15 02:23:26 +00:00
Hans-Peter Nilsson
f1cf2c2e58 * ld-cris/nodyn4.d, ld-cris/expdyn4.d, ld-cris/comref1.s,
ld-cris/euwref1.s, ld-cris/expdyn3.d, ld-cris/expdyn2.d,
	ld-cris/expdref1.s: New tests.
2002-07-12 15:51:54 +00:00
Alan Modra
120d20f266 * emulparams/elf64ppc.sh (ARCH): Set to powerpc:common64.
(COMMONPAGESIZE): Define.
2002-07-12 06:48:54 +00:00
Richard Sandiford
ad42262f8f * ld-scripts/dynamic-sections*: New test. 2002-07-09 08:47:24 +00:00
Alan Modra
0d2ddeb220 * emulparams/hppanbsd.sh: Remark that hppaobsd.sh references this file. 2002-07-09 08:13:06 +00:00
Alan Modra
554690edf3 oops, forgot to commit. 2002-07-09 07:49:49 +00:00
Hans-Peter Nilsson
57a4c58413 * ld-cris/libdso-3.d, ld-cris/dso-3.s, ld-cris/noglob1.s,
ld-cris/noglob1.d: New tests.
2002-07-09 03:46:49 +00:00
Alan Modra
c29ef4b56a * configure.tgt: Add hppaobsd.o.
* Makefile.am: Add support for alpha-*-openbsd*, hppa-*-openbsd*,
	powerpc-*-openbsd* and sparc64-*-openbsd*.
	* Makefile.in: Regenerate.
	* emulparams/hppaobsd.sh: New file.
2002-07-09 02:42:13 +00:00
Hans-Peter Nilsson
def7023cdf Fix typo last change 2002-07-09 02:41:15 +00:00
Hans-Peter Nilsson
6030b50afa * ld-cris/libdso-1.d: Tweak for change in size of dynamic sections. 2002-07-09 00:50:01 +00:00
Alan Modra
34786259b8 * ldlang.c (print_wild_statement): Fix output formatting. 2002-07-05 12:54:28 +00:00
Alan Modra
4bd5a3935b * ldlang.c: (strip_excluded_output_sections): New function.
(lang_process): Call it.
	(lang_size_sections_1): Revert 2002-06-10 change.
2002-07-04 14:41:01 +00:00
Alan Modra
ce4f738593 * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change.
Run "make dep-am".
	* Makefile.in: Regenerate.
2002-07-02 23:56:53 +00:00
Alan Modra
3e8cba195d * lib/ld-lib.exp (default_ld_nm): Run nm with LC_ALL=C to ensure
consistent sorting.
	(run_dump_test): Likewise for objdump/nm/objcopy/readelf.
	* ld-sh/sh64/sh64.exp (run_ld_link_tests): Likewise.
2002-07-02 23:54:39 +00:00
Alan Modra
71daf8b446 * ldfile.c (ldfile_try_open_bfd): Formatting. 2002-07-02 04:26:39 +00:00
Alan Modra
b7b482a3f5 * ldmisc.c (demangle): Move so that it doesn't intrude between
vfinfo comment and body.  Add comment.
2002-07-02 04:21:57 +00:00
Alan Modra
29e2951eb7 * emulparams/vax.sh (OUTPUT_FORMAT): Use a.out-vax-bsd format. 2002-07-01 08:32:30 +00:00
Alan Modra
e3e942e990 * ldlang.h (entry_sym): Make it a struct bfd_sym_chain.
* ldlang.c (entry_sym): Likewise.
	(ldlang_undef_chain_list_type): Likewise.
	(lang_finish): Adjust references to entry_symbol.
	(lang_add_entry): Likewise.
	(lang_gc_sections): Use link_info.gc_sym_list.
	(lang_process): Set link_info.gc_sym_list.
	* ldlex.l: Include bfdlink.h.
	* ldmain.c (main): Init link_info.gc_sym_list.
	* emultempl/aix.em: Adjust references to entry_symbol.
	* emultempl/armcoff.em: Likewise.
	* emultempl/armelf.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/ppc64elf.em (ppc_after_open): New function.
	(LDEMUL_AFTER_OPEN): Define.
	* emulparams/elf64ppc.sh: KEEP .opd sections.
2002-07-01 08:07:31 +00:00
Hans-Peter Nilsson
9f6067066d * ld-mmix/sec-8m.d, ld-mmix/sec-8m.s, ld-mmix/sec-8a.s,
ld-mmix/sec-8b.s, ld-mmix/sec-8d.s: New test.
2002-06-29 21:33:28 +00:00
Stephane Carrez
a66c0f2c3b * emulparams/m68hc12elfb.sh (EEPROM_MEMORY): Define.
* emulparams/m68hc11elfb.sh (EEPROM_MEMORY): Define.
	* emulparams/m68hc11elf.sh (EEPROM_SIZE): Define.
	(EEPROM_START_ADDR): Define.
	(EEPROM_MEMORY): Define.
	* emulparams/m68hc12elf.sh: Likewise.
	* scripttempl/elfm68hc11.sc: Handle .eeprom section; handle .softregs
	section to put soft registers in .page0.
	* scripttempl/elfm68hc12.sc: Likewise but put soft registers in bss.
2002-06-29 10:33:45 +00:00
Jeff Law
2b67cf0053 * emulparams/hppa64linux.sh (OTHER_GOT_RELOC_SECTIONS): Add rela.opd
section.  Add ${RELOCATING-0}.
2002-06-27 22:57:50 +00:00
Joern Rennecke
164c405440 ld:
* emulparams/shelf.sh (STACK_ADDR): Don't define.
        (OTHER_SECTIONS): Define.
        * emulparams/shelf_nbsd.sh ((STACK_ADDR): Don't undef.
        (OTHER_SECTIONS): Undef.
newlib:
        * libc/sys/sh/crt0.S: Remove vestigial .section directive.
gcc:
        * config/sh/crt1.asm: remove _stack label definition
        and sentinel value.
2002-06-26 15:42:33 +00:00
Alan Modra
fc28fbc2a9 * ldmisc.c (demangle): Restore dots stripped from sym name. 2002-06-26 13:22:55 +00:00
H.J. Lu
a13a0de813 2002-06-25 H.J. Lu <hjl@gnu.org>
* Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it.
	* Makefile.in: Regenerated.
2002-06-26 01:12:32 +00:00
Nick Clifton
b553b18375 Update bug reporting guidelines 2002-06-20 14:44:10 +00:00
Nick Clifton
2755afbaec Remove romp target 2002-06-20 14:10:38 +00:00
Chris Demetriou
7d0a848ef9 2002-06-18 Chris Demetriou <cgd@broadcom.com>
* emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Check
	section flags for SEC_DATA, rather than for SEC_CODE being unset.
2002-06-19 05:34:56 +00:00
Chris Demetriou
8505f88407 2002-06-18 Chris Demetriou <cgd@broadcom.com>
* emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Fix
	format specifier used to print BFD name.
2002-06-19 01:52:52 +00:00
Chris Demetriou
e0350bfbf7 2002-06-18 Chris Demetriou <cgd@broadcom.com>
* ld-mips-elf/empic2-ref.s: Add a missing .end, apparently
	turned up by recent assembler changes.
2002-06-19 01:48:10 +00:00
Dave Brolley
7d553a408b 2002-06-18 Dave Brolley <brolley@redhat.com>
From Catherine Moore, Michael Meissner, Jim Blandy:
	* emulparams/elf32frv.sh: New file.
	* configure.tgt: Support frv-*-*.
	* Makefile.am (ALL_EMULATIONS): Add eelf32frv.o.
	(eelf32frv.c): New target.
2002-06-18 21:17:27 +00:00
Tom Rix
8243435612 Fix ld segfault for some elf targets. Fix default layout for d10v. 2002-06-17 14:08:40 +00:00
Tom Rix
4c0b7915d4 Tests for d10v. 2002-06-17 14:05:53 +00:00
Joern Rennecke
5d9b5481e3 Individual processor configurations for sh-elf / sh-linux:
gcc:
	* config.gcc: Add support for sh[234]*-*-elf*, sh[2346lbe]*-*-linux*.
	* config/sh/linux.h (TARGET_DEFAULT): Use TARGET_CPU_DEFAULT.
	* sh.h (SELECT_SH1, SELECT_SH2, SELECT_SH3, SELECT_SH3E): New macros.
	(SELECT_SH4_NOFPU, SELECT_SH4_SINGLE_ONLY, SELECT_SH4): Likewise.
	(SELECT_SH4_SINGLE, SELECT_SH5_64, SELECT_SH5_64_NOFPU): Likewise.
	(SELECT_SH5_32, SELECT_SH5_32_NOFPU, SELECT_SH5_COMPACT): Likewise.
	(SELECT_SH5_COMPACT_NOFPU): Likewise.
	(TARGET_SWITCHES): Use them.
	(TARGET_CPU_DEFAULT): Define if not already defined.
	(TARGET_DEFAULT): Use it.
	(LINK_DEFAULT_CPU_EMUL): Value now depends on TARGET_CPU_DEFAULT.
	* config/sh/t-linux (MULTILIB_OPTIONS): Use MULTILIB_ENDIAN.
	* config/sh/t-monolib: New file.

bfd:
	config.bfd: Add support for sh[1234]l*-*-elf* | sh3el*-*-elf*,
	sh[1234]*-elf*.

ld:
	* configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf.

Still outstanding:
	config.sub:
		* config.sub: Add support for sh[12], sh3e, sh[1234]le, sh3ele,
		shle, sh[1234]le, sh3ele, sh64le.
2002-06-13 20:11:35 +00:00
H.J. Lu
c4bb8067a5 2002-06-12 H.J. Lu <hjl@gnu.org>
* emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Return
	false if xvec doesn't match.
2002-06-13 02:43:23 +00:00
Jeff Law
9b17aab627 2002-06-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
* ld-scripts/cross1.t: Add .hash, .dynstr and .dynsym sections to
	script.
2002-06-12 18:14:48 +00:00
Martin Schwidefsky
704e79f982 AJ found the problem and created the patch. 2002-06-11 13:16:01 +00:00
Martin Schwidefsky
20c4e93273 2002-06-11 Martin Schwidefsky <schwidefsky@de.ibm.com>
* ld-undefined/undefined.exp: Add s390x to dwarf2 xfails.
2002-06-11 09:50:44 +00:00
Richard Sandiford
e560f274e3 * ld-mips-elf/region1a.s,
* ld-mips-elf/region1b.s,
	* ld-mips-elf/region1.t,
	* ld-mips-elf/region1.d: New test.
	* ld-mips-elf/mips-elf.exp: Run it.
2002-06-10 16:14:08 +00:00
Richard Sandiford
e052cfbe68 * ldlang.c (lang_size_sections_1): Skip removed output sections. 2002-06-10 16:12:04 +00:00
Alan Modra
4da711b140 * ldexp.c: Replace CONST with const.
* ldfile.c: Likewise.
	* ldfile.h: Likewise.
	* ldlex.l: Likewise.
	* mri.c: Likewise.
	* pe-dll.h: Likewise.
2002-06-08 07:39:45 +00:00
Alan Modra
eb95bb9a4e * emultempl/ppc64elf.em (new_vers_pattern): Warning fix. 2002-06-07 15:09:21 +00:00
Nick Clifton
e0076ab314 Enable pei386_auto_import by default. Only print a info message about auto
imports being resilved if this feature was not requested via a command line
switch.
2002-06-07 14:56:01 +00:00
Nick Clifton
1634475f71 Fix phdrs2 test 2002-06-07 10:30:56 +00:00
Alan Modra
f13a54248a * scripttempl/elf.sc (.tbss): Fix mismatched parentheses/braces. 2002-06-07 09:59:07 +00:00
Nick Clifton
1ed89aa92e Do not include empty sections in loadable segments. 2002-06-06 10:03:38 +00:00
Jeff Law
1abffd82ca * configure.host (hppa*64*-*-hpux11*): Define NATIVE_LIB_DIRS,
HOSTING_CRT0 and HOSTING_LIBS.
2002-06-06 06:45:54 +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
Jason Thorpe
4a5e698dbf * emulparams/ns32knbsd.sh (EXECUTABLE_SYMBOLS): Set _DYNAMIC to 0.
(NONPAGED_TEXT_START_ADDR): Set to 0x1000.
2002-06-05 16:59:12 +00:00
Alan Modra
1d475d825e * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Place
SEC_EXCLUDE sections when doing a relocatable link.
2002-06-05 14:07:29 +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
9ad85d9b01 * ldlang.c (section_already_linked): Call bfd_discard_group. Typo fix. 2002-06-04 01:07:29 +00:00
H.J. Lu
bfba206a7e 2005-06-02 H.J. Lu <hjl@gnu.org>
* ld-srec/sr3.cc (__dso_handle): Added for gcc 3.1 with
	-fuse-cxa-atexit.
	(__cxa_atexit): Likewise.
2002-06-03 04:56:52 +00:00
Marek Michalkiewicz
0c9b4fee1c * scripttempl/avr.sc: Changes to support current GCC and avr-libc,
C++ constructors/destructors, loosely based on the m68hc11 port.
2002-06-01 23:28:59 +00:00
Alan Modra
2c538bdec9 * Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.
2002-05-31 04:33:55 +00:00
Alan Modra
a0cb91c657 * Makefile.am (ALL_EMULATIONS): Add ei386nto.o.
(ei386nto.c): Add rule.
	* Makefile.in: Regenerate.
	* configure.tgt: Add i[3456]86-*-nto-qnx*.
	* emulparams/i386nto.sh: New file.
2002-05-31 03:02:35 +00:00
Richard Henderson
0085b5a8ab * ld-bootstrap/bootstrap.exp: Test --relax. 2002-05-30 21:39:41 +00:00
Jason Thorpe
37020578cf * NEWS: Add entry for VAX ELF support. 2002-05-30 02:58:04 +00:00
Jason Thorpe
ab68f3e06f 2002-05-29 Matt Thomas <matt@3am-software.com>
Jason Thorpe  <thorpej@wasabisystems.com>

* Makefile.am (ALL_EMULATIONS): Add eelf32vax.o and evaxnbsd.o.
(eelf32vax.c)
(evaxnbsd.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (vax-*-netbsdelf*)
(vax-*-netbsdaout*)
(vax-*-netbsd*): New targets.
* emulparams/elf32vax.sh: New file.
* emulparams/vaxnbsd.sh: New file.
2002-05-30 02:40:03 +00:00
Nick Clifton
8afb0e028c Fix genreation of arm <->thumb glue stubs by ensuring that they are in the last section linked. 2002-05-29 16:03:04 +00:00
Nick Clifton
d172d4ba03 Add DLX target 2002-05-28 14:08:47 +00:00
Hans-Peter Nilsson
69de2f8959 * ld-cris/libdso-2.d: Tweak for combreloc now default on. 2002-05-28 01:44:46 +00:00
Nick Clifton
b4477fa895 Install new elf_chaos.sc script. 2002-05-27 17:52:56 +00:00
Richard Sandiford
ee3cc2e2ee * ldlang.c (lang_size_sections_1): Move check for conflicting load
addresses and regions from here...
	(lang_get_regions): ...to this new function.
	(lang_leave_output_section_statement): Use lang_get_regions.
	(lang_leave_overlay): Likewise.
	* mri.c (mri_draw_tree): Pass null as last argument to
	lang_leave_output_section_statement.
	* emultempl/elf32.em (gld*_place_orphan): Likewise.
	* emultempl/mmo.em (mmo_place_orphan): Likewise.
	* emultempl/pe.em (gld*_place_orphan): Likewise.
2002-05-27 08:22:08 +00:00
Jason Thorpe
aa501e5cee gas:
* configure.in: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
* configure: Regenerate.

ld:
* configure.tgt: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
2002-05-26 05:04:53 +00:00
Kazu Hirata
658957dba8 * ldemul.c: Fix formatting.
* ldfile.c: Likewise.
	* pe-dll.c: Likewise.
	* pe-dll.h: Likewise.
2002-05-25 20:39:25 +00:00
Alan Modra
0d6d936fc1 * ldlang.c (lang_process): Formatting, grammar. 2002-05-25 13:10:11 +00:00
Alan Modra
3511b5956d * ldlex.l: Use #include "" instead of <> for local header files. 2002-05-25 12:54:12 +00:00
Nick Clifton
436e8db0b7 Add a target for i386-netbsdpe. 2002-05-24 09:26:58 +00:00
Jakub Jelinek
13ae64f3c7 * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_THREAD_LOCAL
for symbols from SHF_TLS section.
	(_bfd_elf_print_private_bfd_data): Add PT_TLS.
	(elf_fake_sections): Set SHF_TLS for SEC_THREAD_LOCAL sections.
	(map_sections_to_segments): Build PT_TLS segment if necessary.
	(assign_file_positions_for_segments): Likewise.
	(get_program_header_size): Account for PT_TLS segment.
	(swap_out_syms): Set type of BSF_THREAD_LOCAL symbols and symbols from
	SEC_THREAD_LOCAL sections to STT_TLS.
	* reloc.c: Add 386 and IA-64 TLS relocs.
	* section.c (SEC_THREAD_LOCAL): Define.
	(SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS):
	Remove.
	* elflink.h (elf_link_add_object_symbols): Support .tcommon.
	(size_dynamic_sections): If DF_STATIC_TLS, set DF_FLAGS
	unconditionally.
	(struct elf_final_link_info): Add first_tls_sec.
	(elf_bfd_final_link): Set first_tls_sec.
	Compute elf_hash_table (info)->tls_segment.
	(elf_link_output_extsym): Handle STT_TLS symbols.
	(elf_link_input_bfd): Likewise.
	* syms.c (BSF_THREAD_LOCAL): Define.
	* bfd-in2.h: Rebuilt.
	* libbfd.h: Rebuilt.
	* elf32-i386.c (elf_i386_tls_transition, dtpoff_base, tpoff,
	elf_i386_mkobject, elf_i386_object_p): New functions.
	(elf_howto_table): Add TLS relocs.
	(elf_i386_reloc_type_lookup): Support TLS relocs.
	(elf_i386_info_to_howto_rel): Likewise.
	(struct elf_i386_link_hash_entry): Add tls_type.
	(struct elf_i386_obj_tdata): New.
	(elf_i386_hash_entry, elf_i386_tdata, elf_i386_local_got_tls_type):
	New macros.
	(struct elf_i386_link_hash_table): Add tls_ldm_got.
	(link_hash_newfunc): Clear tls_type.
	(elf_i386_check_relocs): Support TLS relocs.
	(elf_i386_gc_sweep_hook): Likewise.
	(allocate_dynrelocs): Likewise.
	(elf_i386_size_dynamic_sections): Likewise.
	(elf_i386_relocate_section): Likewise.
	(elf_i386_finish_dynamic_symbol): Likewise.
	(bfd_elf32_mkobject, elf_backend_object_p): Define.
	* elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add tprel_offset,
	dtpmod_offset, dtprel_offset, tprel_done, dtpmod_done, dtprel_done,
	want_tprel, want_dtpmod, want_dtprel.
	(elfNN_ia64_tprel_base, elfNN_ia64_dtprel_base): New functions.
	(ia64_howto_table): Add TLS relocs, rename R_IA64_LTOFF_TP22 to
	R_IA64_LTOFF_TPREL22.
	(elf_code_to_howto_index): Add TLS relocs.
	(elfNN_ia64_check_relocs): Support TLS relocs.
	(allocate_global_data_got): Account for TLS .got data.
	(allocate_dynrel_entries): Account for TLS dynamic relocations.
	(elfNN_ia64_install_value): Supprt TLS relocs.
	(set_got_entry): Support TLS relocs.
	(elfNN_ia64_relocate_section): Likewise.

	* config/obj-elf.c (elf_common): Renamed from obj_elf_common.
	(obj_elf_common): Call elf_common.
	(obj_elf_tls_common): New function.
	(elf_pseudo_tab): Support .tls_common.
	(special_sections): Add .tdata and .tbss.
	(obj_elf_change_section): Set SEC_THREAD_LOCAL for SHF_TLS
	sections.
	(obj_elf_parse_section_letters): Support T in section flags (SHF_TLS).
	(obj_elf_parse_section_letters): Include T in error message.
	* config/tc-ppc.c (ppc_section_letter): Likewise.
	* config/tc-alpha.c (alpha_elf_section_letter): Likewise.
	(tc_gen_reloc): Handle SEC_THREAD_LOCAL the same way as
	SEC_MERGE.
	* config/tc-sparc.c (md_apply_fix3): Likewise.
	* config/tc-i386.c (tc_i386_fix_adjustable): Add TLS relocs.
	Define them if not BFD_ASSEMBLER.
	(lex_got): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF, @DTPOFF
	and @NTPOFF.
	(md_apply_fix3): Add TLS relocs.
	* config/tc-ia64.c (enum reloc_func): Add FUNC_DTP_MODULE,
	FUNC_DTP_RELATIVE, FUNC_TP_RELATIVE, FUNC_LT_DTP_MODULE,
	FUNC_LT_DTP_RELATIVE, FUNC_LT_TP_RELATIVE.
	(pseudo_func): Support @dtpmod(), @dtprel() and @tprel().
	(ia64_elf_section_letter): Include T in error message.
	(md_begin): Support TLS operators.
	(md_operand): Likewise.
	(ia64_gen_real_reloc_type): Support TLS relocs.
	* testsuite/gas/i386/tlspic.s: New file.
	* testsuite/gas/i386/tlsd.s: New file.
	* testsuite/gas/i386/tlsnopic.s: New file.
	* testsuite/gas/i386/tlsd.d: New file.
	* testsuite/gas/i386/tlsnopic.d: New file.
	* testsuite/gas/i386/tlspic.d: New file.
	* testsuite/gas/i386/i386.exp: Add tlsd, tlsnopic and tlspic tests.
	* testsuite/gas/ia64/tls.s: New file.
	* testsuite/gas/ia64/tls.d: New file.
	* testsuite/gas/ia64/ia64.exp: Add tls test.
	* write.c (adjust_reloc_syms): Don't change symbols in
	SEC_THREAD_LOCAL sections to STT_SECTION + addend.

	* elf/common.h (PT_TLS, SHF_TLS, STT_TLS, DF_STATIC_TLS): Define.
	* elf/ia64.h (R_IA64_LTOFF_TPREL22): Renamed from R_IA64_LTOFF_TP22.
	* elf/i386.h: Add TLS relocs.

	* scripttempl/elf.sc: Add .rel{,a}.t{bss,data}, .tdata and .tbss.
	* ldlang.c (lang_add_section): Set SEC_THREAD_LOCAL for
	output section if necessary.  Handle .tbss.
	(lang_size_sections): Clear _raw_size for .tbss section
	(it allocates space in PT_TLS segment only).
	* ldwrite.c (build_link_order): Build link order for .tbss too.

	* readelf.c (get_segment_type): Add PT_TLS.
	(get_elf_section_flags): Add SHF_TLS.
	(get_dynamic_flags): Optimize.  Add DF_STATIC_TLS.
	(process_dynamic_segment): Use puts instead of printf.
	(get_symbol_type): Support STT_TLS.
	* objdump.c (dump_section_header): Remove SEC_CONSTRUCTOR_TEXT,
	SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS.
	Add SEC_THREAD_LOCAL.
2002-05-23 13:12:53 +00:00
Alan Modra
68b2fc7af6 * configure.in: Correct spelling of AC_PREREQ. 2002-05-23 08:17:10 +00:00
Christopher Faylor
70b0be7903 * pe-dll.c (autofilter_liblist): Add more system libs excluded by default.
(autofilter_objlist): Add crtbegin.o, crtend.o.
* emultempl/pe.em (OPTION_EXCLUDE_LIBS): Add new define.
(longopts): Add new option --exclude-libs.
(gld_${EMULATION_NAME}_list_options): Give quick help about it.
(gld_${EMULATION_NAME}_parse_args): Use it.
* pe-dll.h (pe_dll_add_excludes): Add second param to prototype.
* pe-dll.c (exclude_list_struct): Add field type to distinguish symbols from
whole archives.
(pe_dll_add_excludes): Set excludes->type.
(auto_export): Add new variable libname and set to archive basename if abfd.
Use it when filtering default and user-specified libarary excludes.  Let string
"ALL" mean all libs when filtering user-specified libs.
* ld.texinfo: Document --exclude-libs.
2002-05-22 18:03:09 +00:00
Alan Modra
fac1652d6b * ldemul.c (ldemul_new_vers_pattern): New function.
* ldemul.h (ldemul_new_vers_pattern): Declare.
	(struct ld_emulation_xfer_struct): Add new_vers_pattern.
	* ldlang.c (lang_new_vers_pattern): Call ldemul_new_vers_pattern.
	* emultempl/ppc64elf.em (dotsyms): New static var.
	(gld${EMULATION_NAME}_new_vers_pattern): New function.
	(LDEMUL_NEW_VERS_PATTERN): Define.
	(PARSE_AND_LIST_PROLOGUE): Add OPTION_DOTSYMS, OPTION_NO_DOTSYMS.
	(PARSE_AND_LIST_LONGOPTS): Likewise.
	(PARSE_AND_LIST_ARGS_CASES): Handle them.
	* emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Update
	initialiser.
	* emultempl/armcoff.em: Likewise.
	* emultempl/armelf_oabi.em: Likewise.
	* emultempl/beos.em: Likewise.
	* emultempl/elf32.em: Likewise.
	* emultempl/generic.em: Likewise.
	* emultempl/gld960.em: Likewise.
	* emultempl/gld960c.em: Likewise.
	* emultempl/linux.em: Likewise.
	* emultempl/lnk960.em: Likewise.
	* emultempl/m68kcoff.em: Likewise.
	* emultempl/mipsecoff.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/sunos.em: Likewise.
	* emultempl/ticoff.em: Likewise.
	* emultempl/vanilla.em: Likewise.
2002-05-22 09:04:48 +00:00
Alan Modra
eb3d6bb8dc * genscripts.sh (LIB_PATH): For native targets, concatenate $libdir
and $NATIVE_LIB_DIRS.  Add $tool_lib before other libs.
	(LIB_SEARCH_DIRS): No need to use "tr".
	(COMPILE_IN): Only set for native targets.
	* configure.host (NATIVE_LIB_DIRS): Specify all native search dirs
	here, rather than adding lib:/usr/lib:/usr/local/lib in genscripts.sh.
	* configure.tgt (powerpc*): Set tdir_*.
	(powerpcle*): Correct targ_extra_emuls.
	* emulparams/elf32ppc.sh (LIB_PATH): Set up native 64 bit dirs.
	* emulparams/elf64ppc.sh (LIB_PATH): Likewise.
2002-05-22 08:44:53 +00:00
Alan Modra
54f24647c7 * emultempl/pe.em (set_pe_subsystem): Don't set "cmdline" when
calling lang_add_entry.
2002-05-22 08:21:27 +00:00
H.J. Lu
aa713662e8 2002-05-21 H.J. Lu (hjl@gnu.org)
* emultempl/elf32.em (gld${EMULATION_NAME}_parse_args): Handle
	"-z muldefs".
	(gld${EMULATION_NAME}_list_options): Add "-z muldefs".

	* ld.texinfo: Updated for --allow-multiple-definition and
	"-z muldefs".

	* ldmain.c (main): Initialize the allow_multiple_definition
	field to false.

	* lexsup.c (OPTION_ALLOW_MULTIPLE_DEFINITION): New.
	(ld_options): Add --allow-multiple-definition.
	(parse_args): Support OPTION_ALLOW_MULTIPLE_DEFINITION.
2002-05-22 05:08:31 +00:00
Jason Thorpe
658f25883a bfd:
* config.bfd (armeb-*-netbsdelf*): New target.

ld:
* Makefile.am (ALL_EMULATIONS): Add earmelfb_nbsd.o.
(earmelfb_nbsd.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt (armeb-*-netbsdelf*): New target.
(arm-*-netbsdelf*): Add armelfb_nbsd to targ_extra_emuls.
(arm-*-netbsd*): Likewise.
* emulparams/armelfb_nbsd.sh: New file.
2002-05-21 15:11:04 +00:00
Tom Rix
ca10c62d56 Add -bnortl and -bnortllib support for AIX. 2002-05-18 16:56:27 +00:00
Marek Michalkiewicz
fae1e84fb6 * Makefile.am: Add new emulations avr1, avr2, avr3, avr4, avr5.
* Makefile.in: Regenerate.
	* configure.tgt (avr-*-*): Add avr[1-5] to targ_extra_emuls.
2002-05-17 05:55:14 +00:00
Marek Michalkiewicz
7c8bf1e82a * emulparams/avr1.sh: New file.
* emulparams/avr2.sh: New file.
	* emulparams/avr3.sh: New file.
	* emulparams/avr4.sh: New file.
	* emulparams/avr5.sh: New file.
	* scripttempl/avr.sc: New file.
2002-05-16 19:51:08 +00:00
Alan Modra
c2c01aa78c * ldlang.c (section_already_linked): Call bfd_link_just_syms.
(lang_place_orphans): Abort if just_syms_flag.
2002-05-15 00:19:23 +00:00
Tom Rix
f1f0d9ab14 XCOFF64 fixes. For setting arch/mach and for R_BR relocations. 2002-05-10 21:20:16 +00:00
Jakub Jelinek
f4d733664a * ldmain.c (main): Enable -z combreloc by default. 2002-05-10 09:49:25 +00:00
Nick Clifton
d3d8a9ee19 Honour DESTDIR 2002-05-07 17:22:20 +00:00
Richard Sandiford
3e3f011f93 * lib/ld-lib.exp (run_dump_test): Add -L$srcdir/$subdir.
(is_elf_format): New, extracted from...
	* ld-scripts/weak.exp: ...here.
	* ld-scripts/overlay-size.exp: New test.
	* ld-scripts/overlay-size.[tsd],
	* ld-scripts/overlay-size-map.d: New files for it.
2002-05-07 11:08:57 +00:00
Richard Sandiford
9f88b410a0 * ldlang.h (lang_output_section_statement_type): Add update_dot_tree.
(lang_enter_overlay): Remove the last two parameters.
	(lang_leave_overlay): Take them here instead.
	* ldgram.y (memspec_at_opt): Set $$ to null if no region is given.
	(section): Pass LMA and crossref flag to lang_leave_overlay rather
	than lang_enter_overlay.
	* ldlang.c (lang_memory_region_lookup): Return null for null names.
	(lang_output_section_statement_lookup): Initialize update_dot_tree.
	(lang_size_sections_1): Evaluate it.
	(lang_leave_output_section_statement): Rework LMA lookup.
	(overlay_lma, overlay_nocrossrefs): Remove.
	(lang_enter_overlay): Remove LMA and corssref arguments.
	(lang_enter_overlay_section): Don't set the LMA here.
	(lang_leave_overlay): Take LMA and crossref arguments.  Move the '.'
	assignment to the last section's update_dot_tree.  Unconditionally
	use the load and run-time regions specified in the OVERLAY statement.
	Likewise the first section's LMA.  Only set the other sections' LMAs
	when no load region is given.
2002-05-07 11:04:54 +00:00
Nick Clifton
b9a743c80b New Swedish translation 2002-05-06 10:09:24 +00:00
Alan Modra
a3d60be3b8 * emultempl/hppaelf.em (build_section_lists): New function.
(gld${EMULATION_NAME}_finish): Call elf32_hppa_setup_section_lists
	and build_section_lists.
2002-05-04 02:06:43 +00:00
Kazu Hirata
b7a26f91f4 * ld.h: Fix formatting.
* ldexp.c: Likewise.
	* ldfile.c: Likewise.
	* ldlang.c: Likewise.
	* ldmain.c: Likewise.
	* lexsup.c: Likewise.
	* pe-dll.c: Likewise.
2002-05-03 13:48:55 +00:00
Richard Sandiford
a155881bab * ld-scripts/map-address.exp: Quote conditions. 2002-05-02 16:03:41 +00:00
Alan Modra
805fc79928 * elf64-ppc.c (ppc64_elf_addr16_ha_reloc): Delete.
(ppc64_elf_ha_reloc): New function.
	(ppc64_elf_brtaken_reloc): New function.
	(ppc64_elf_sectoff_reloc): New function.
	(ppc64_elf_sectoff_ha_reloc): New function.
	(ppc64_elf_toc_reloc): New function.
	(ppc64_elf_toc_ha_reloc): New function.
	(ppc64_elf_toc64_reloc): New function.
	(ppc64_elf_unhandled_reloc): New function.
	(ppc64_elf_howto_raw): Use the above.
	<R_PPC64_RELATIVE>: Mark pc_relative, pcrel_offset.
	<R_PPC64_SECTOFF>: Not pc_relative or pcrel_offset.  Fix dst_mask.
	<R_PPC64_SECTOFF_DS>: Likewise.
	(IS_ABSOLUTE_RELOC): Update.
	(struct ppc_link_hash_table): Add have_undefweak.
	(ppc64_elf_link_hash_table_create): Init.
	(func_desc_adjust): Set have_undefweak.
	(ppc64_elf_func_desc_adjust): Call func_desc_adjust earlier.  Only
	add the .sfpr blr when have_undefweak.
	(ppc64_elf_setup_section_lists): Check hash table flavour.
	(ppc64_elf_next_input_section): Move output_section->owner test to
	ppc64elf.em.
	(ppc64_elf_set_toc): Rename to ppc64_elf_toc, remove info param
	and relocatable test.  Return TOCstart and don't set elf_gp.
	(ppc64_elf_relocate_section): Correct BRTAKEN/BRNTAKEN branch
	offset calculation.  Add assert on weak sym branch tweaks.
	* elf64-ppc.h (ppc64_elf_set_toc): Delete.
	(ppc64_elf_toc): Declare.
	(ppc64_elf_next_input_section): Update.

	* emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation):
	Adjust for ppc64_elf_set_toc change.  #include libbfd.h.
	(build_section_lists): Do output_section tests here.
2002-05-02 09:48:15 +00:00
Tom Rix
cc7e59b280 Formatting fix. 2002-05-01 02:52:17 +00:00
Alan Modra
9c1d81c102 Long branch stubs, multiple stub sections.
* emultempl/ppc64elf.em: Include ldctor.h.
	(stub_file): New var.
	(group_size): New var.
	(ppc_create_output_section_statements): New function.
	(struct hook_stub_info): New.
	(hook_in_stub): New function.
	(ppc_add_stub_section): New function.
	(ppc_layout_sections_again): New function.
	(build_section_lists): New function.
	(gld${EMULATION_NAME}_finish): Rewrite.
	(real_func): New var.
	(ppc_for_each_input_file_wrapper): New function.
	(ppc_lang_for_each_input_file): New function.
	(lang_for_each_input_file): Define.
	(PARSE_AND_LIST_PROLOGUE): Define.
	(PARSE_AND_LIST_LONGOPTS): Define.
	(PARSE_AND_LIST_OPTIONS): Define.
	(PARSE_AND_LIST_ARGS_CASES): Define.
	(LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
2002-05-01 02:34:54 +00:00
Tom Rix
aa67bccfe2 Add support for AIX -blibpath and -bnolibpath. 2002-04-30 23:29:21 +00:00
Mark Mitchell
94349e12d2 * Makefile.am (ALL_EMULATIONS): Add elf32ppcwindiss.o.
(eelf32ppcwindiss.c): New target.
	* Makefile.in: Regenerated.
	* configure.tgt: Add support for powerpc-*-windiss.
	* emulparams/elf32ppcwindiss.sh: New file.
2002-04-30 17:49:01 +00:00
Richard Sandiford
33a301baa7 * ld-scripts/map-address.exp: New test.
* ld-scripts/map-address.[td]: New files for it.
2002-04-30 09:23:14 +00:00
Richard Sandiford
7b17f854f7 * ldlang.c (print_assignment): Update print_dot for assignments to ".".
* ldexp.c (exp_print_token): Add "infix_p" argument.
	(exp_print_tree): Update accordingly.
2002-04-30 09:21:27 +00:00
Alan Modra
596dafeba1 * Makefile.am (mpw): New maintainer mode rule to make mpw-*.c files.
* Makefile.in: Regenerate.
	* mpw-elfmips.c: Delete.
	* mpw-eppcmac.c: Delete.
	* mpw-esh.c: Delete.
	* mpw-idtmips.c: Delete.
2002-04-28 12:05:07 +00:00
Richard Henderson
212a6b8ef7 * ld-elfvsb/elfvsb.exp: Mirror ia64 non-pic xfails for alpha.
* ld-shared/shared.exp: Likewise.
        * ld-selective/selective.exp: Disable for alpha.
        * ld-undefined/undefined.exp: Add alpha to dwarf2 xfails.
2002-04-19 19:28:09 +00:00
Joern Rennecke
a44d7f9cfb Re-enable linking for sh5:
ld:
	* emulparams/shelf32.sh (MACHINE): Now sh5.
bfd:
	* cpu-sh.c (scan_mach): Delete.
	(arch_info_struct): Replace scan_mach with bfd_default_scan.
	(bfd_sh_arch): Likewise.
2002-04-17 19:31:53 +00:00
Thiemo Seufer
944cd72c7e * arparse.y: Fix syntax warning.
* ldgram.y: Fix syntax warning.
2002-04-17 13:05:55 +00:00
Nick Clifton
5835c2123d Add 'n' in order to prevent "-n" from being taken as an abbreviation for
"--no-pipeline-knowledge".
2002-04-11 16:55:27 +00:00
Alan Modra
d08a14c385 * ldlang.c (lang_size_sections_1): Don't complain about
SEC_NEVER_LOAD sections having no memory region specified.
2002-04-08 01:01:43 +00:00
Alan Modra
024531e2e5 * ld.texinfo (Format Commands <OUTPUT_FORMAT>): Typo fix. 2002-04-08 00:24:02 +00:00
Matthew Green
c657a1f082 * ld/configure.host (*-*-netbsd*): Add support for NetBSD/ELF. 2002-04-07 13:57:53 +00:00
Hans-Peter Nilsson
32d279374d * ld-cris/libdso-2.d, ld-cris/dso-2.s, ld-cris/hide1: New test. 2002-04-05 23:13:09 +00:00
Alan Modra
61bef6f1a0 * dep-in.sed: Cope with absolute paths.
* Makefile.am (dep.sed): Subst TOPDIR and BFDDIR.
	Run "make dep-am".
	* Makefile.in: Regenerate.
2002-04-04 14:07:57 +00:00
Thiemo Seufer
49ba2791b8 * emulparams/elf64btsmip.sh: n64 replaces .reginfo with .MIPS.options. 2002-04-04 07:21:39 +00:00
Jakub Jelinek
50e60fb578 * ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: If common page size
is smaller than maximum, round dot up to common page boundary.
2002-04-03 10:25:41 +00:00
Alan Modra
6f12f4cad7 * configure.host: Set up for generic hosts first, then tweak as
necessary in more specific targets.
	(HOSTING_LIBS): Include libgcc_eh.a if found.
2002-03-27 14:07:50 +00:00
Andreas Jaeger
a8f1f017eb * emulparams/elf_x86_64.sh (COMMONPAGESIZE): Set it. 2002-03-23 18:15:32 +00:00
Alan Modra
1d3fdf38d3 * Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
2002-03-21 09:42:38 +00:00
Alan Modra
79b1faa874 * genscripts.sh (LIB_SEARCH_DIRS): Quote path. 2002-03-21 05:35:39 +00:00
Alan Modra
fcf0e35b46 * ldlang.c (ldlang_add_undef): If the output bfd has been opened,
add the symbol to the linker hash table immediately.
	(lang_place_undefineds): Split symbol creation out..
	(insert_undefined): ..to here.
2002-03-20 07:49:53 +00:00
Hans-Peter Nilsson
442e4424a0 * ld-cris/ldsym1.d: New test. 2002-03-19 23:49:51 +00:00
Hans-Peter Nilsson
f854883482 * ld-mmix/bpo-1.d: Tweak for type of linker-script-symbols no
longer set to object.
	* ld-mmix/undef-3.d, ld-mmix/start-1.d, ld-mmix/locto-1.d,
	ld-mmix/loct-1.d, ld-mmix/locdo-1.d, ld-mmix/local7.d,
	ld-mmix/local5.d, ld-mmix/local3.d, ld-mmix/local1.d,
	ld-mmix/loc6.d, ld-mmix/loc4.d, ld-mmix/loc3.d, ld-mmix/loc2.d,
	ld-mmix/loc1.d, ld-mmix/greg-7.d, ld-mmix/greg-6.d,
	ld-mmix/greg-5.d, ld-mmix/greg-4.d, ld-mmix/greg-3.d,
	ld-mmix/greg-2.d, ld-mmix/greg-19.d, ld-mmix/greg-1.d,
	ld-mmix/bspec2.d, ld-mmix/bspec1.d, ld-mmix/bpo-9.d,
	ld-mmix/bpo-6.d, ld-mmix/bpo-5.d, ld-mmix/bpo-4.d,
	ld-mmix/bpo-3.d, ld-mmix/bpo-2.d, ld-mmix/bpo-19.d,
	ld-mmix/bpo-18.d, ld-mmix/bpo-17.d, ld-mmix/bpo-16.d,
	ld-mmix/bpo-14.d, ld-mmix/bpo-11.d, ld-mmix/bpo-10.d: Ditto.
2002-03-19 22:48:15 +00:00
David O'Brien
fed2999dfb 2002-03-18 David O'Brien <obrien@FreeBSD.org>
* emultempl/elf32.em: Use lbasename vs. basename to fix problem where
	the contents of the buffer returned from basename function will are
	getting overwritten while still being used.

Approved by:  Alan Modra <amodra@bigpond.net.au>
              Message-ID: <20020318032031.GD1089@bubble.sa.bigpond.net.au>
2002-03-19 21:03:43 +00:00
Jan Hubicka
beb43bb9f4 * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64"
* configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native.

	* elf_x86_64.sh (ARCH): Set to i386:x86-64
	set libraries to default to lib64 paths.
2002-03-18 16:42:43 +00:00
Nick Clifton
eb1e0e807a Add AIX 64 shared library support and emulation layer for binutils 2002-03-18 12:46:27 +00:00
Nick Clifton
a1c259a138 Updated French translations 2002-03-18 09:44:22 +00:00
Alan Modra
862120bdbe * ldmain.c (main): Move .text readonly flag fudges from here..
* ldlang.c (lang_process): ..to here.
2002-03-18 02:55:51 +00:00
Alan Modra
d35a52e2a7 * ldlang.c (lang_check): Remove the word size check added in last
change.  Treat emitrelocations case as for relocatable links.
2002-03-14 10:39:46 +00:00
Nick Clifton
9ce88e60f3 Updated French translations 2002-03-13 10:35:17 +00:00
Alan Modra
30cba02509 * ldlang.c (lang_check): Do relocatable link checks first, so that
warn_mismatch can't override.  Check compatible and word size too.
2002-03-13 02:56:36 +00:00
Andreas Jaeger
91c903ab76 * ld-elfweak/strongdata.sym: Allow bss section for GCC 3.2 that
places zero initialized data in the bss.
	* ld-elfweak/dsodata.dsym: Likewise.
2002-03-11 09:26:20 +00:00
Daniel Jacobowitz
84ec0e6d80 2002-03-07 Daniel Jacobowitz <drow@mvista.com>
* ld.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
2002-03-08 04:07:21 +00:00
Hans-Peter Nilsson
61c53cc298 * ld-cris/expdyn1.d: Tweak for change in elf.sc. 2002-03-07 14:03:05 +00:00
Jakub Jelinek
2d13d8c5ee * scripttempl/elf.sc: Only use DATA_SEGMENT_END() together with
DATA_SEGMENT_ALIGN.
2002-03-05 11:56:23 +00:00
H.J. Lu
b5090659de 2002-03-04 H.J. Lu <hjl@gnu.org>
* scripttempl/elf.sc: Put .preinit_array, .init_array and
	.fini_array in the data segment.
2002-03-04 20:40:14 +00:00
Alan Modra
f42ce16e2f * scripttempl/elf.sc: Correct syntax errors in 2002-03-01 commit. 2002-03-04 01:37:52 +00:00
Richard Henderson
de77b6ac8b * scripttempl/elf.sc (SECTIONS): Add entries for .preinit_array,
.init_array, and .fini_array.
2002-03-02 01:25:26 +00:00
Hans-Peter Nilsson
acbd2de6c6 * ld-sh/ld-r-1.d: Adjust to changes in readelf output.
* ld-sh/shared-1.d, ld-sh/sh64/crangerel1.rd, ld-sh/crangerel2.rd,
	ld-sh/sh64/reldl32.rd, ld-sh/sh64/reldl64.rd: Ditto.
2002-02-24 16:44:45 +00:00
Andreas Schwab
997e08c061 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Don't fold
.IA64_unwind* in a relocatable link.
2002-02-20 10:48:25 +00:00
Nick Clifton
9a66911f91 Mark 2.12 branch 2002-02-20 10:46:54 +00:00
David O'Brien
6a7f963b84 match reality 2002-02-20 06:53:29 +00:00
David O'Brien
28912fd9fb 2002-02-18 David O'Brien <obrien@FreeBSD.org>
* Makefile.am: Add new files earmelf_fbsd, eelf32ppc_fbsd,
	eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
	and eelf64alpha_fbsd.

(left this out of last patch)
2002-02-20 06:52:34 +00:00
Martin Schwidefsky
d86bcc1089 2002-02-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
* emulparams/elf64_s390.sh (ARCH): Change to "s390:64-bit".
	* emulparams/elf_s390.sh (ARCH): Change to "s390:31-bit".
2002-02-19 18:58:04 +00:00
Tom Rix
69f284c74e Add support for -brtl, run time linking, to AIX ld. 2002-02-19 05:01:40 +00:00
Daniel Jacobowitz
4bcc9fa440 2002-02-18 Daniel Jacobowitz <drow@mvista.com>
* ld-elfvsb/sh1.c: Fix typo in last change.
2002-02-18 22:42:55 +00:00
Alan Modra
82bd7b59c9 * elf64-ppc.c (STFD_FR0_0R1, LFD_FR0_0R1, BLR): Define.
(struct ppc_link_hash_table): Add sfpr.
	(ppc64_elf_link_hash_table_create): Init it.
	(ppc64_elf_create_dynamic_sections): Split creation of .stub and
	.glink out to..
	(create_linkage_sections): ..here.  Make .sfpr too.
	(ppc64_elf_check_relocs): Call create_linkage_sections, and set
	dynobj early.
	(MIN_SAVE_FPR, MAX_SAVE_FPR): Define.
	(ppc64_elf_func_desc_adjust): Look for missing ._savef* and
	._restf* functions, and create as needed.
	(func_desc_adjust): Only force_local for shared libs.

	* emulparams/elf64ppc.sh (OTHER_TEXT_SECTIONS): Define.
2002-02-18 12:40:28 +00:00
David O'Brien
ac3e50bf05 2002-02-18 David O'Brien <obrien@FreeBSD.org>
* Makefile.in: Add new files earmelf_fbsd, eelf32ppc_fbsd,
	eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
	and eelf64alpha_fbsd.
	* configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
	x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
	use a FreeBSD-specific emulation rather than the psABI one.
	* emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
	for all FreeBSD ELF systems.
	* emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
	emulation.
	* emulparams/elf32ppc_fbsd.sh: Likewise.
	* emulparams/elf64_ia64_fbsd.sh: Likewise.
	* emulparams/elf64_sparc_fbsd.sh: Likewise.
	* emulparams/elf64alpha_fbsd.sh: Likewise.
	* emulparams/elf_i386_fbsd.sh: Likewise.
	* emulparams/elf_x86_64_fbsd.sh: Likewise.

Approved by:  Nick Clifton <nickc@cambridge.redhat.com>
              <m3pu33yy0b.fsf@north-pole.nickc.cambridge.redhat.com>
2002-02-18 09:38:01 +00:00
Nick Clifton
6ad738c5d9 Updated translations 2002-02-18 08:40:03 +00:00
Daniel Jacobowitz
aa3932f699 2002-02-17 Daniel Jacobowitz <drow@mvista.com>
* ld-elfvsb/sh1.c: Use #pragma weak.
2002-02-18 04:49:17 +00:00
Daniel Jacobowitz
3b0f0b37aa 2002-02-17 Daniel Jacobowitz <drow@mvista.com>
* vers.exp: Do not call diff -q.
2002-02-18 03:23:28 +00:00
Alan Modra
9673c93c26 * ld.texinfo (Output Section Fill): Fix amateur texinfo.
(FILL): Likewise.
2002-02-17 22:15:40 +00:00
Hans-Peter Nilsson
1c5e644702 * emultempl/mmo.em (mmo_after_open): Don't call
_bfd_mmix_check_all_relocs when producing ELF output.
2002-02-17 21:38:03 +00:00
Hans-Peter Nilsson
fe108482d4 * ld-mmix/b-nosym.d, ld-mmix/sec-6.d: Tweak for change in symbol
output.
	* ld-mmix/sec-7m.d, ld-mmix/sec-7a.s, ld-mmix/sec-7b.s,
	ld-mmix/sec-7c.s, ld-mmix/sec-7d.s, ld-mmix/sec-7e.s: New test.
2002-02-17 21:22:24 +00:00
Hans-Peter Nilsson
acdd0e9a54 * ld-mmix/bpo-22.d: New test. 2002-02-17 20:13:05 +00:00
Hans-Peter Nilsson
dd51aa368d * ld-mmix/local12.d (Sections): Match any LMA for .data, .sbss,
and .bss.
2002-02-17 19:34:12 +00:00
Richard Henderson
8bb5751698 * emulparams/elf64alpha.sh (NOP): Adjust for big-endian
definition.  Emit a unop+nop pair.
2002-02-15 23:39:27 +00:00
Hans-Peter Nilsson
6266d8d454 Tweak wording in comment in last change 2002-02-15 06:54:22 +00:00
Hans-Peter Nilsson
83c2d653c3 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Also check
for presence of .MMIX.reg_contents.linker_allocated before early
	exit.
2002-02-15 06:50:19 +00:00
Hans-Peter Nilsson
49fda6c8d0 * NEWS: Mention support for MMIX. 2002-02-15 04:04:03 +00:00
Alan Modra
a139d329de * ld.texinfo (Output Section Fill): Describe fill expressions.
(FILL): Refer to the above.
2002-02-15 03:34:47 +00:00
Alan Modra
2c382fb6f5 Support arbitrary length fill patterns.
* ldexp.h (etree_value_type): Add "str" field.
	(union etree_union): Add "str" to "value" struct.
	(exp_bigintop): Declare.
	(exp_get_fill): Declare.
	* ldexp.c: Include "safe-ctype.h".
	(exp_intop): Set value.str to NULL.
	(exp_bigintop): New function.
	(new_rel): Pass in "str", and set new.str from it.
	(new_rel_from_section): Set new.str to NULL.
	(fold_name): Adjust calls to new_rel.
	(exp_fold_tree): Likewise.
	(exp_get_fill): New function.
	* ldgram.y (struct big_int bigint, fill_type *fill): New.
	(INT): Returns a "bigint".  Adjust all code handling INTs.
	(fill_opt): Returns a "fill".
	(fill_exp): Split out of fill_opt, use for FILL.
	* ldlang.h (struct _fill_type): New.
	(fill_type): Move typedef to ldexp.h.
	(lang_output_section_statement_type): "fill" is now a pointer.
	(lang_fill_statement_type): Likewise.
	(lang_padding_statement_type): Likewise.
	(lang_add_fill): Now takes a "fill_type *" param.
	(lang_leave_output_section_statement): Likewise.
	(lang_do_assignments): Likewise.
	(lang_size_sections): Likewise.
	(lang_leave_overlay_section): Likewise.
	(lang_leave_overlay): Likewise.
	* ldlang.c: Include ldgram.h after ldexp.h.
	(lang_output_section_statement_lookup): Adjust for fill_type change.
	(print_fill_statement): Likewise.
	(print_padding_statement): Likewise.
	(insert_pad): Now takes a "fill_type *" arg.
	(size_input_section): Likewise.
	(lang_size_sections_1): Likewise.
	(lang_size_sections): Likewise.
	(lang_do_assignments): Likewise.
	(lang_add_fill): Likewise.
	(lang_leave_output_section_statement): Likewise.
	(lang_leave_overlay_section): Likewise.
	(lang_leave_overlay): Likewise.
	Adjust all callers of the above function.
	* ldlex.l: Include ldgram.h after ldexp.h.  Allow hex numbers
	starting with "0X" as well as "0x".  Return bigint.str for hex
	numbers starting with "0x" or "0X", zero bigint.str otherwise.
	Always use base 16 for numbers starting with "$".
	* ldmain.c: Include ldgram.h after ldexp.h.
	* ldwrite.c (build_link_order): Use bfd_data_link_order in place
	of bfd_fill_link_order.
	* pe-dll.c: Adjust lang_do_assignments calls.
	* emultempl/elf32.em: Likewise.
	* emultempl/hppaelf.em: Likewise.
	* emultempl/ppc64elf.em: Likewise.
	* emultempl/beos.em: Include ldgram.h after ldexp.h, adjust
	lang_add_assignment call.
	* emultempl/pe.em: Likewise.
2002-02-15 02:11:05 +00:00
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
4f70f93f32 * ld-selective/selective.exp: Link against libgcc on
hppa*-*-linux* targets.
2002-02-12 11:10:11 +00:00
Alexandre Oliva
0f8b890409 * ld-sh/sh64/reldl64.rd: Add relocation symbol data in info field.
* ld-sh/sh64/crange-2i.s: Add align to match align in crange-2h.s.
* ld-sh/sh64/crange3-cmpct.rd: Adjust to reflect modifications
in section ordering.
* ld-sh/sh64/crange3-media.rd: Likewise.
* ld-sh/sh64/crange3.rd: Likewise.
* ld-sh/sh64/crange3.dd: Likewise.
2002-02-11 07:56:03 +00:00
Alexandre Oliva
fb6de7f3cc * ld-sh/shared-1.d: Fix relocation addend. 2002-02-11 06:14:12 +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
Hans-Peter Nilsson
c99012716a * ld-mmix/bpo-21.d, ld-mmix/bpo-21m.d, ld-mmix/bpo-11.s: New
tests.
2002-02-09 05:02:07 +00:00
Nick Clifton
5e37cc4676 Fix compile time warning messages 2002-02-08 12:12:15 +00:00
Alexandre Oliva
1b19eb81ea Contribute sh64-elf.
2002-02-02  Alexandre Oliva  <aoliva@redhat.com>
* ld-sh/sh64/crange3-cmpct.rd: Adjust offsets.
* ld-sh/sh64/crange3-media.rd: Likewise.
* ld-sh/sh64/crange3.rd: Likewise.
* ld-sh/sh64/crangerel1.rd: Likewise.
* ld-sh/sh64/crangerel2.rd: Likewise.
* ld-sh/sh64/reldl32.rd: Likewise.
* ld-sh/sh64/reldl64.rd: Likewise.
2002-01-28  Alexandre Oliva  <aoliva@redhat.com>
* ld-sh/sh64/abi32.xd: Formatting changes to match the current
output of objdump.
* ld-sh/sh64/cmpct1.xd: Likewise.
* ld-sh/sh64/crange1.rd: Likewise.
* ld-sh/sh64/crange2.rd: Likewise.
* ld-sh/sh64/crange3-cmpct.rd: Likewise.
* ld-sh/sh64/crange3-media.rd: Likewise.
* ld-sh/sh64/crange3.rd: Likewise.
* ld-sh/sh64/crangerel1.rd: Likewise.
* ld-sh/sh64/crangerel2.rd: Likewise.
* ld-sh/sh64/mix1.xd: Likewise.
* ld-sh/sh64/mix2.xd: Likewise.
* ld-sh/sh64/rel32.xd: Likewise.
* ld-sh/sh64/reldl32.rd: Likewise.
* ld-sh/sh64/reldl64.rd: Likewise.
* ld-sh/sh64/sh64.exp: Likewise.  Reordered cranges and stack
sessions, to match changes in the linker script.
2001-06-14  Alexandre Oliva  <aoliva@redhat.com>
* ld-sh/sh64/reldl32.rd, ld-sh/sh64/reldl64.rd: Adjust relocation
info to reflect renumbering of relocation types.
2001-03-14  DJ Delorie	<dj@redhat.com>
* ld-sh/sh64/endian.dbd: New file, endian tests.
* ld-sh/sh64/endian.dld: Ditto.
* ld-sh/sh64/endian.ld:	 Ditto.
* ld-sh/sh64/endian.s:	Ditto.
* ld-sh/sh64/endian.sbd:  Ditto.
* ld-sh/sh64/endian.sld:  Ditto.
* ld-sh/sh64/sh64.exp: Add above tests.	 Add -L option to ld.
2001-03-12  DJ Delorie	<dj@redhat.com>
* ld-sh/sh64/relax.exp: New file, test disabling relaxing.
* ld-sh/sh64/relax1.s: Ditto.
* ld-sh/sh64/relax2.s: Ditto.
* ld-sh/sh64/relax3.s: Ditto.
* ld-sh/sh64/relax4.s: Ditto.
* ld-sh/sh64/relfail.exp: New file, test for bogus relocs.
* ld-sh/sh64/relfail.s: Ditto.
2001-03-12  DJ Delorie	<dj@redhat.com>
* ld-sh/sh.exp: This test isn't appropriate for SH64 since it
uses SH32 assembler files.
2001-03-07  DJ Delorie	<dj@redhat.com>
* ld-selective/selective.exp: Pass "-e _start" for sh64 to
accomodate expected start symbol in test.
2001-03-06  DJ Delorie	<dj@redhat.com>
* ld-scripts/crossref.exp: Pass -mshelf32 to the linker for sh64,
to match what gcc passes to the linker by default.
* ld-selective/selective.exp: Ditto.
* ld-srec/srec.exp: Ditto, plus XFAIL for sh64.
* ld-undefined/undefined.exp: Add XFAIL for sh64 (it's dwarf2).
2001-03-06  DJ Delorie	<dj@redhat.com>
* ld-sh/sh64/abi32.xd (stack): Adjust for new default stack layout.
* ld-sh/sh64/abi64.xd (stack): Ditto.
* ld-sh/sh64/cmpct1.xd (stack): Ditto.
* ld-sh/sh64/crange1.rd (stack): Ditto.
* ld-sh/sh64/crange2.rd (stack): Ditto.
* ld-sh/sh64/crange3-cmpct.rd (stack): Ditto.
* ld-sh/sh64/crange3-media.rd (stack): Ditto.
* ld-sh/sh64/crange3.rd (stack): Ditto.
* ld-sh/sh64/mix1.xd (stack): Ditto.
* ld-sh/sh64/mix2.xd (stack): Ditto.
* ld-sh/sh64/shdl32.xd (stack): Ditto.
* ld-sh/sh64/shdl64.xd (stack): Ditto.
2001-01-14  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/mix1.xd: Add SORT_ENTRIES for .cranges section.
* ld-sh/sh64/mix2.xd: Ditto.
2001-01-08  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/abi32.xd: Adjust for bit 0 set on an entry address
being SHmedia.
* ld-sh/sh64/shdl64.xd: Ditto.
* ld-sh/sh64/shdl32.xd: Ditto.
* ld-sh/sh64/mix2.xd: Ditto.
* ld-sh/sh64/crange3-media.rd: Ditto.
* ld-sh/sh64/abi64.xd: Ditto.
2001-01-06  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/crange-2a.s (diversion2): New global symbol.
* ld-sh/sh64/crange1.rd: Adjust to presence of new symbol.
Adjust section type for .cranges; expect sorted contents.
* ld-sh/sh64/crange2.rd: Ditto.
* ld-sh/sh64/crange3.dd, ld-sh/sh64/crange3.rd: Ditto.
* ld-sh/sh64/crangerel1.rd: Adjust to presence of new symbol.
* ld-sh/sh64/crangerel2.rd: Ditto.
* ld-sh/sh64/mix1.xd: Adjust to DEBUGGING being set for .cranges.
* ld-sh/sh64/mix2.xd: Ditto.
* ld-sh/sh64/crange3-cmpct.rd, ld-sh/sh64/crange3-media.rd: New
tests.
* ld-sh/sh64/sh64.exp: Tweak test message.  Run new tests.
2001-01-05  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/shmix-1.s (start2): Add a NOP to provide a valid
target for (unexpanded) PTB.  Add an .align 2 to SHmedia code to
keep properly aligned.
* ld-sh/sh64/mix1.sd, ld-sh/sh64/mix1.xd: Adjust accordingly.
* ld-sh/sh64/mix1-noexp.sd, ld-sh/sh64/mix2-noexp.sd,
ld-sh/sh64/abixx-noexp.sd: New tests for GAS -no-expand and
R_SH_PT_16 relocation.
* ld-sh/sh64/sh64.exp: Run new tests.
2000-12-30  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/crange-2f.s, ld-sh/sh64/crange-2g.s,
ld-sh/sh64/crange-2h.s, ld-sh/sh64/crange-2i.s,
ld-sh/sh64/crange3.dd, ld-sh/sh64/crange3.rd: New tests.
* ld-sh/sh64/sh64.exp: Run new tests.
* ld-sh/sh64/crange1.rd: Correct section flags.
* ld-sh/sh64/crange2.rd: Ditto.
* ld-sh/sh64/crangerel1.rd: Ditto.
2000-12-18  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/crange-1.s, ld-sh/sh64/crange-2a.s,
ld-sh/sh64/crange-2b.s, ld-sh/sh64/crange-2c.s,
ld-sh/sh64/crange-2d.s, ld-sh/sh64/crange-2e.s,
ld-sh/sh64/crange1.rd, ld-sh/sh64/crange2.rd,
ld-sh/sh64/crangerel1.rd, ld-sh/sh64/crangerel2.rd: New tests for
handling .cranges section.
* ld-sh/sh64/sh64.exp: Run new tests.
* ld-sh/sh64/mix1.sd, ld-sh/sh64/mix1.xd, ld-sh/sh64/mix2.sd,
ld-sh/sh64/mix2.xd: Adjust for .cranges section.
2000-12-15  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/abi32.sd, ld-sh/sh64/abi32.xd, ld-sh/sh64/abi64.sd,
ld-sh/sh64/abi64.xd, ld-sh/sh64/cmpct1.xd, ld-sh/sh64/mix1.sd,
ld-sh/sh64/mix1.xd, ld-sh/sh64/mix2.sd, ld-sh/sh64/mix2.xd,
ld-sh/sh64/shdl32.xd, ld-sh/sh64/shdl64.xd: Adjust to .bss and
.data individually 8-byte aligned.
2000-12-09  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/rel-1.s, ld-sh/sh64/rel-2.s, ld-sh/sh64/rel32.xd,
ld-sh/sh64/rel64.xd, ld-sh/sh64/reldl-1.s, ld-sh/sh64/reldl-2.s,
ld-sh/sh64/reldl32.rd, ld-sh/sh64/reldl64.rd: New tests.
* ld-sh/sh64/sh64.exp: Make it possible to use readelf as
inspection tool.  Run new tests.
2000-12-07  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/abi64.sd, ld-sh/sh64/abi32.sd, ld-sh/sh64/mix1.sd,
ld-sh/sh64/mix2.sd: Correct offsets in PT/PTA/PTB expansions.
* ld-sh/sh64/shdl-1.s, ld-sh/sh64/shdl-2.s, ld-sh/sh64/shdl64.sd,
ld-sh/sh64/shdl64.xd, ld-sh/sh64/shdl32.xd: New tests.
* ld-sh/sh64/sh64.exp: Run new tests.
2000-12-01  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/cmpct1.sd, ld-sh/sh64/cmpct1.xd,
ld-sh/sh64/shcmp-1.s: New test.
* ld-sh/sh64/sh64.exp: Add new test to sh64tests.  Reformat.
2000-11-30  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/sh64.exp: Use linker option -mshelf64 for 64-bit ABI
test.
* ld-sh/sh64/abi64.xd: Tweak for 64-bit ELF.
2000-11-29  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/sh64.exp (sh64tests): Use linker option -mshelf32 for
tests.
2000-11-27  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64/abi32.sd, ld-sh/sh64/abi64.sd: Correct MOVI
registers.
* ld-sh/sh64/mix1.sd, ld-sh/sh64/mix1.xd, ld-sh/sh64/shmix-1.s:
New test.
* ld-sh/sh64/mix2.sd, ld-sh/sh64/mix2.xd, ld-sh/sh64/shmix-2.s,
ld-sh/sh64/shmix-3.s: New test.
* ld-sh/sh64/sh64.exp: Add new tests to sh64tests.
2000-11-26  Hans-Peter Nilsson	<hpn@cygnus.com>
* ld-sh/sh64: New testsuite.
2002-02-08 06:50:02 +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
9636f65c5e * ld-selective/keepdot.s: Remove section specifier. 2002-02-07 02:48:40 +00:00
Hans-Peter Nilsson
126730bd1c Forgot to ci ChangeLog 2002-02-05 07:14:26 +00:00
Hans-Peter Nilsson
b479a82b15 Update copyright 2002-02-05 07:12:38 +00:00
Hans-Peter Nilsson
76dc39fe30 * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise.
2002-02-05 07:07:21 +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
b611beb043 * ld-selective/keepdot.d, ld-selective/keepdot.ld,
ld-selective/keepdot.s, ld-selective/keepdot0.d: New tests.
	* ld-selective/sel-dump.exp: New, driver for run_dump_test:s.
2002-02-05 06:45:16 +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
Hans-Peter Nilsson
a27be4d5bf * ld-mmix/bpo-18.d, ld-mmix/bpo64addr.ld, ld-mmix/bpo-18m.d,
ld-mmix/bpo-9.s, ld-mmix/bpo-19.d, ld-mmix/bpo-19m.d,
	ld-mmix/bpo-10.s, ld-mmix/bpo-20.d, ld-mmix/bpo-20m.d: New tests
	for on-demand global register allocation.
2002-02-04 04:38:53 +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
Alexandre Oliva
60e955f1b0 * ld-sh/shared-1.d: Fix incorrect offsets. 2002-02-02 02:21:33 +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
fb17c22277 * ld-mmix/bpo-1.d, ld-mmix/bpo-1.s, ld-mmix/bpo-1m.d,
ld-mmix/bpo-15.d, ld-mmix/bpo-4.s, ld-mmix/bpo-6.d,
	ld-mmix/bpo-6.s, ld-mmix/bpo-2.d, ld-mmix/bpo-6m.d,
	ld-mmix/bpo-12m.d, ld-mmix/bpo-2m.d, ld-mmix/bpo-2.s,
	ld-mmix/bpo-5.s, ld-mmix/bpo-3.d, ld-mmix/start3.s,
	ld-mmix/bpo-3m.d, ld-mmix/bpo-9m.d, ld-mmix/bpo-4.d,
	ld-mmix/bpo-3.s, ld-mmix/bpo-4m.d, ld-mmix/bpo-7.d,
	ld-mmix/bpo-5.d, ld-mmix/bpo-16.d, ld-mmix/bpo-5m.d,
	ld-mmix/bpo-7m.d, ld-mmix/bpo-9.d, ld-mmix/bpo-8.d,
	ld-mmix/start4.s, ld-mmix/bpo-8m.d, ld-mmix/bpo-13m.d,
	ld-mmix/bpo-15m.d, ld-mmix/bpo-10.d, ld-mmix/bpo-11.d,
	ld-mmix/bpo-14m.d, ld-mmix/bpo-13.d, ld-mmix/bpo-7.s,
	ld-mmix/bpo-12.d, ld-mmix/bpo-16m.d, ld-mmix/bpo-14.d,
	ld-mmix/bpo-8.s, ld-mmix/bpo-17.d, ld-mmix/bpo-17m.d: New tests.
2002-02-01 08:30:12 +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
Hans-Peter Nilsson
f7a2c2f698 * ld-cris/weakref1.d, ld-cris/libdso-1.d, ld-cris/gotrel2.s,
ld-cris/expdyn1.d, ld-cris/expdyn1.s, ld-cris/dso-1.s: New tests.
	* ld-cris/cris.exp: Split run_dump_tests in two parts, executing
	tests named *dso-*.d first and copying their tmpdir/dump to files
	named as the .d-file.
2002-01-31 10:42:18 +00:00