diff options
Diffstat (limited to 'contrib/binutils/ld')
-rw-r--r-- | contrib/binutils/ld/ChangeLog | 44 | ||||
-rw-r--r-- | contrib/binutils/ld/Makefile.am | 3 | ||||
-rw-r--r-- | contrib/binutils/ld/Makefile.in | 3 | ||||
-rw-r--r-- | contrib/binutils/ld/configure.tgt | 6 | ||||
-rw-r--r-- | contrib/binutils/ld/emulparams/elf64_ia64.sh | 1 | ||||
-rw-r--r-- | contrib/binutils/ld/emulparams/elf_x86_64.sh | 11 | ||||
-rw-r--r-- | contrib/binutils/ld/emultempl/needrelax.em | 40 | ||||
-rw-r--r-- | contrib/binutils/ld/ld.1 | 1 | ||||
-rw-r--r-- | contrib/binutils/ld/ld.texinfo | 2 |
9 files changed, 99 insertions, 12 deletions
diff --git a/contrib/binutils/ld/ChangeLog b/contrib/binutils/ld/ChangeLog index df9f3c5..0399c95 100644 --- a/contrib/binutils/ld/ChangeLog +++ b/contrib/binutils/ld/ChangeLog @@ -1,3 +1,35 @@ +2001-10-17 Nick Clifton <nickc@cambridge.redhat.com> + + * ld.1: Remove .TP macro from SYNOPSIS section - it prevents + successful translation to DocBook format. + +2001-09-30 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + Report 2001-08-03 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * 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-29 Joel Sherrill <joel@OARcorp.com> + + * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change + default from coff to elf. + +2001-08-13 Richard Henderson <rth@redhat.com> + + * emultempl/needrelax.em: New file. + * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it. + * Makefile.am (eelf64_ia64.c): Depend on it. + * Makefile.in: Rebuild. + +2001-07-30 Nick Clifton <nickc@cambridge.redhat.com> + + * ld.texinfo (Simple Assignments): Fix computation in SECTIONS + example. + 2001-07-19 David O'Brien <obrien@FreeBSD.org> * emultempl/elf32.em: Do not assuming that contents of the buffer @@ -137,15 +169,15 @@ * mpw-eppcmac.c: Likewise. 2001-04-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com> - * ldlang.c (load_symbols): Give emulation a chance - to process unrecognized file before fatal error is - reported, not after. + * ldlang.c (load_symbols): Give emulation a chance + to process unrecognized file before fatal error is + reported, not after. 2001-02-26 H.J. Lu <hjl@gnu.org> * ldlang.c (open_input_bfds): Set the bfd error handler so - that problems can be caught whilst loading symbols. - (record_bfd_errors): New function: Report BFD errors and mark - the executable output as being invalid. + that problems can be caught whilst loading symbols. + (record_bfd_errors): New function: Report BFD errors and mark + the executable output as being invalid. 2001-04-02 Alan Modra <alan@linuxcare.com.au> diff --git a/contrib/binutils/ld/Makefile.am b/contrib/binutils/ld/Makefile.am index 916a883..0408dfb 100644 --- a/contrib/binutils/ld/Makefile.am +++ b/contrib/binutils/ld/Makefile.am @@ -491,7 +491,8 @@ eelf64hppa.c: $(srcdir)/emulparams/elf64hppa.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf64hppa "$(tdir_elf64hppa)" eelf64_ia64.c: $(srcdir)/emulparams/elf64_ia64.sh \ - $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + $(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \ + $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf64_ia64 "$(tdir_elf64_ia64)" eelf64_sparc.c: $(srcdir)/emulparams/elf64_sparc.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} diff --git a/contrib/binutils/ld/Makefile.in b/contrib/binutils/ld/Makefile.in index b4db3e8..8317908 100644 --- a/contrib/binutils/ld/Makefile.in +++ b/contrib/binutils/ld/Makefile.in @@ -1205,7 +1205,8 @@ eelf64hppa.c: $(srcdir)/emulparams/elf64hppa.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf64hppa "$(tdir_elf64hppa)" eelf64_ia64.c: $(srcdir)/emulparams/elf64_ia64.sh \ - $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + $(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \ + $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf64_ia64 "$(tdir_elf64_ia64)" eelf64_sparc.c: $(srcdir)/emulparams/elf64_sparc.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} diff --git a/contrib/binutils/ld/configure.tgt b/contrib/binutils/ld/configure.tgt index bb69012..478eaca 100644 --- a/contrib/binutils/ld/configure.tgt +++ b/contrib/binutils/ld/configure.tgt @@ -121,8 +121,9 @@ i[3456]86-*-sco*) targ_emul=i386coff ;; i[3456]86-*-isc*) targ_emul=i386coff ;; i[3456]86-*-lynxos*) targ_emul=i386lynx ;; i[3456]86-*-coff) targ_emul=i386coff ;; +i[3456]86-*-rtemscoff*) targ_emul=i386coff ;; i[3456]86-*-rtemself*) targ_emul=elf_i386 ;; -i[3456]86-*-rtems*) targ_emul=i386coff ;; +i[3456]86-*-rtems*) targ_emul=elf_i386 ;; i[3456]86-*-bsd) targ_emul=i386bsd ;; i[3456]86-*-bsd386) targ_emul=i386bsd ;; i[3456]86-*-bsdi*) targ_emul=i386bsd ;; @@ -246,7 +247,8 @@ m68*-*-lynxos*) targ_emul=m68klynx ;; m68*-hp*-netbsd*) targ_emul=m68k4knbsd ;; m68*-*-netbsd*) targ_emul=m68knbsd ;; m68*-*-psos*) targ_emul=m68kpsos ;; -m68*-*-rtems*) targ_emul=m68kcoff ;; +m68*-*-rtemscoff*) targ_emul=m68kcoff ;; +m68*-*-rtems*) targ_emul=m68kelf ;; hppa*64*-*-linux-gnu*) targ_emul=hppa64linux ;; hppa*64*-*) targ_emul=elf64hppa ;; hppa*-*-linux-gnu*) targ_emul=hppalinux ;; diff --git a/contrib/binutils/ld/emulparams/elf64_ia64.sh b/contrib/binutils/ld/emulparams/elf64_ia64.sh index fff5992..158db9c 100644 --- a/contrib/binutils/ld/emulparams/elf64_ia64.sh +++ b/contrib/binutils/ld/emulparams/elf64_ia64.sh @@ -2,6 +2,7 @@ SCRIPT_NAME=elf ELFSIZE=64 TEMPLATE_NAME=elf32 +EXTRA_EM_FILE=needrelax OUTPUT_FORMAT="elf64-ia64-little" ARCH=ia64 MACHINE= diff --git a/contrib/binutils/ld/emulparams/elf_x86_64.sh b/contrib/binutils/ld/emulparams/elf_x86_64.sh new file mode 100644 index 0000000..635748f --- /dev/null +++ b/contrib/binutils/ld/emulparams/elf_x86_64.sh @@ -0,0 +1,11 @@ +SCRIPT_NAME=elf +ELFSIZE=64 +OUTPUT_FORMAT="elf64-x86-64" +TEXT_START_ADDR=0x400000 +MAXPAGESIZE=0x100000 +NONPAGED_TEXT_START_ADDR=0x400000 +ARCH=i386 +MACHINE= +NOP=0x9090 +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes diff --git a/contrib/binutils/ld/emultempl/needrelax.em b/contrib/binutils/ld/emultempl/needrelax.em new file mode 100644 index 0000000..9bb96c2 --- /dev/null +++ b/contrib/binutils/ld/emultempl/needrelax.em @@ -0,0 +1,40 @@ +# This shell script emits a C file. -*- C -*- +# Copyright (C) 2001 Free Software Foundation, Inc. +# +# This file is part of GLD, the Gnu Linker. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# + +# This file is sourced from elf32.em. It is used by targets for +# which relaxation is not just an optimization, but for correctness. + +LDEMUL_BEFORE_ALLOCATION=need_relax_${EMULATION_NAME}_before_allocation + +cat >>e${EMULATION_NAME}.c <<EOF + +static void need_relax_${EMULATION_NAME}_before_allocation PARAMS ((void)); + +static void +need_relax_${EMULATION_NAME}_before_allocation () +{ + /* Call main function; we're just extending it. */ + gld${EMULATION_NAME}_before_allocation (); + + /* Force -relax on if not doing a relocatable link. */ + if (! link_info.relocateable) + command_line.relax = true; +} +EOF diff --git a/contrib/binutils/ld/ld.1 b/contrib/binutils/ld/ld.1 index 1cfbbba..fa4d439 100644 --- a/contrib/binutils/ld/ld.1 +++ b/contrib/binutils/ld/ld.1 @@ -14,7 +14,6 @@ ld \- the GNU linker .SH SYNOPSIS .hy 0 .na -.TP .B ld .RB "[\|" \-o " .I output\c diff --git a/contrib/binutils/ld/ld.texinfo b/contrib/binutils/ld/ld.texinfo index 668c0e9..8c4d98f 100644 --- a/contrib/binutils/ld/ld.texinfo +++ b/contrib/binutils/ld/ld.texinfo @@ -2123,7 +2123,7 @@ SECTIONS *(.text) _etext = .; @} - _bdata = (. + 3) & ~ 4; + _bdata = (. + 3) & ~ 3; .data : @{ *(.data) @} @} @end smallexample |