summaryrefslogtreecommitdiff
path: root/ld/emultempl/spuelf.em
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2007-02-27 08:33:25 +0000
committerAlan Modra <amodra@bigpond.net.au>2007-02-27 08:33:25 +0000
commit2fa04b1ca15d12d36cd352faf3c3cf417c86b334 (patch)
treed6e2a0678c9e22aa341958e234f602cbbe76eab2 /ld/emultempl/spuelf.em
parent15a5b0534456a303c93b6b7c00c23b4f056635b3 (diff)
downloadbinutils-redhat-2fa04b1ca15d12d36cd352faf3c3cf417c86b334.tar.gz
* Makefile.am (ALL_EMUL_EXTRA_OFILES): Remove spu_inc.o.
(eelf32_spu.c): Adjust dependencies. * Makefile.in: Regenerate. * emultempl/spuelf.em (ovl_mgr): New array. Insert spu_ovl.o code using bin2c. (_binary_spu_ovl_o_start, _binary_spu_ovl_o_end): Delete. (ovl_mgr_stream): Update. * emultempl/spu_inc.s: Delete. * emultempl/spu_none.s: Delete.
Diffstat (limited to 'ld/emultempl/spuelf.em')
-rw-r--r--ld/emultempl/spuelf.em15
1 files changed, 10 insertions, 5 deletions
diff --git a/ld/emultempl/spuelf.em b/ld/emultempl/spuelf.em
index 95b1cb28e1..d6681adabe 100644
--- a/ld/emultempl/spuelf.em
+++ b/ld/emultempl/spuelf.em
@@ -1,5 +1,5 @@
# This shell script emits a C file. -*- C -*-
-# Copyright 2006 Free Software Foundation, Inc.
+# Copyright 2006, 2007 Free Software Foundation, Inc.
#
# This file is part of GLD, the Gnu Linker.
#
@@ -38,12 +38,17 @@ static int emit_stub_syms = 0;
static bfd_vma local_store_lo = 0;
static bfd_vma local_store_hi = 0x3ffff;
-extern void *_binary_spu_ovl_o_start;
-extern void *_binary_spu_ovl_o_end;
+static const char ovl_mgr[] = {
+EOF
+
+../binutils/bin2c < ${srcdir}/emultempl/spu_ovl.o >> e${EMULATION_NAME}.c
+
+cat >>e${EMULATION_NAME}.c <<EOF
+};
static const struct _ovl_stream ovl_mgr_stream = {
- &_binary_spu_ovl_o_start,
- &_binary_spu_ovl_o_end
+ ovl_mgr,
+ ovl_mgr + sizeof (ovl_mgr)
};
static asection *toe = NULL;