aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1995-11-01 20:52:10 +0000
committerIan Lance Taylor <ian@airs.com>1995-11-01 20:52:10 +0000
commit63982998169d841bd39e318d6fbaa5b7d1f37f94 (patch)
tree67395159f6fb02c329483fc66d70f69e3a8b580e
parentc3294c2e78d0b6b947c4d4da35d799c31447b75a (diff)
downloadgdb-63982998169d841bd39e318d6fbaa5b7d1f37f94.zip
gdb-63982998169d841bd39e318d6fbaa5b7d1f37f94.tar.gz
gdb-63982998169d841bd39e318d6fbaa5b7d1f37f94.tar.bz2
Wed Nov 1 15:42:45 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
* Makefile.in (ALL_EMULATIONS): Add edelta68.o. (edelta68.c): New target. * configure.tgt (m68*-motorola-sysv3*): New target. * emulparams/delta68.sh: New file. * scripttempl/delta68.sc: New file. * scripttempl/m88kbcs.sc: Handle .init and .fini. Change section addresses.
-rw-r--r--ld/ChangeLog11
-rw-r--r--ld/Makefile.in5
-rw-r--r--ld/configure.tgt1
-rw-r--r--ld/emulparams/.Sanitize1
-rw-r--r--ld/scripttempl/.Sanitize1
-rw-r--r--ld/scripttempl/m88kbcs.sc28
6 files changed, 36 insertions, 11 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 628b5b6..13f0a68 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,14 @@
+Wed Nov 1 15:42:45 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
+
+ * Makefile.in (ALL_EMULATIONS): Add edelta68.o.
+ (edelta68.c): New target.
+ * configure.tgt (m68*-motorola-sysv3*): New target.
+ * emulparams/delta68.sh: New file.
+ * scripttempl/delta68.sc: New file.
+
+ * scripttempl/m88kbcs.sc: Handle .init and .fini. Change section
+ addresses.
+
Wed Nov 1 11:41:56 1995 Ian Lance Taylor <ian@cygnus.com>
* ldgram.y (mri_script_command): Accept ',' as well as '=' in
diff --git a/ld/Makefile.in b/ld/Makefile.in
index cdfce17..81c1e7d 100644
--- a/ld/Makefile.in
+++ b/ld/Makefile.in
@@ -203,7 +203,7 @@ ALL_EMULATIONS = ea29k.o ealpha.o earmaoutl.o earmaoutb.o \
eriscix.o esa29200.o eshl.o esh.o esparclynx.o esparcnbsd.o \
est2000.o esun3.o esun4.o evanilla.o evax.o evsta.o \
ez8001.o ez8002.o ei386pe.o earmpe.o eelf32b4300.o eelf32l4300.o \
- eaixppc.o eaixrs6.o
+ eaixppc.o eaixrs6.o edelta68.o
CFILES = ldctor.c ldemul.c ldexp.c ldfile.c ldlang.c \
ldmain.c ldmisc.c ldver.c ldwrite.c lexsup.c \
@@ -500,6 +500,9 @@ eaixppc.c: $(srcdir)/emulparams/aixppc.sh \
eaixrs6.c: $(srcdir)/emulparams/aixrs6.sh \
$(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS}
${GENSCRIPTS} aixrs6
+edelta68.c: $(srcdir)/emulparams/delta68.sh \
+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/delta68.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} delta68
# start-sanitize-arc
earcelf.c: $(srcdir)/emulparams/arcelf.sh \
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
diff --git a/ld/configure.tgt b/ld/configure.tgt
index b099ec8..7a5bccc 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
@@ -81,6 +81,7 @@ rce-*-aout) targ_emul=rce ;;
# end-sanitize-rce
m68k-sony-*) targ_emul=news ;;
m68k-hp-bsd*) targ_emul=hp300bsd ;;
+m68*-motorola-sysv3*) targ_emul=delta68 ;;
m68*-*-aout) targ_emul=m68kaout ;;
m68*-*-coff) targ_emul=m68kcoff ;;
m68*-*-elf) targ_emul=m68kelf ;;
diff --git a/ld/emulparams/.Sanitize b/ld/emulparams/.Sanitize
index dabd8f6..6af9e29 100644
--- a/ld/emulparams/.Sanitize
+++ b/ld/emulparams/.Sanitize
@@ -49,6 +49,7 @@ armaoutl.sh
armcoff.sh
armpe.sh
coff_sparc.sh
+delta68.sh
ebmon29k.sh
elf32_sparc.sh
elf32bmip.sh
diff --git a/ld/scripttempl/.Sanitize b/ld/scripttempl/.Sanitize
index 72e6719..55588e1 100644
--- a/ld/scripttempl/.Sanitize
+++ b/ld/scripttempl/.Sanitize
@@ -38,6 +38,7 @@ alpha.sc
armaout.sc
armcoff.sc
aout.sc
+delta68.sc
ebmon29k.sc
elf.sc
elfppc.sc
diff --git a/ld/scripttempl/m88kbcs.sc b/ld/scripttempl/m88kbcs.sc
index 928d640..b29980e 100644
--- a/ld/scripttempl/m88kbcs.sc
+++ b/ld/scripttempl/m88kbcs.sc
@@ -1,18 +1,20 @@
+# These are substituted in as variables in order to get '}' in a shell
+# conditional expansion.
+INIT='.init : { *(.init) }'
+FINI='.fini : { *(.fini) }'
cat <<EOF
-TARGET(m88kbcs)
-OUTPUT_FORMAT(m88kbcs)
+OUTPUT_FORMAT("${OUTPUT_FORMAT}")
OUTPUT_ARCH(${ARCH})
ENTRY(__start)
${RELOCATING+${LIB_SEARCH_DIRS}}
SECTIONS
{
- .text ${RELOCATING+ 0x10000 + SIZEOF_HEADERS} :
+ .text ${RELOCATING+ (0x20007 + SIZEOF_HEADERS) &~ 7} :
{
- CREATE_OBJECT_SYMBOLS
${RELOCATING+ __.text.start = .};
${RELOCATING+ __.init.start = .};
- ${RELOCATING+ LONG(0xf400c001)}
+ ${RELOCATING+ *(.init)}
${RELOCATING+ __.init.end = .};
*(.text)
${RELOCATING+ __.tdesc_start = .};
@@ -20,14 +22,14 @@ SECTIONS
${RELOCATING+ __.text_end = .} ;
${RELOCATING+ __.initp.start = .};
${RELOCATING+ __.initp.end =.};
-
+ ${RELOCATING+ __.fini_start = .};
+ ${RELOCATING+ *(.fini) }
+ ${RELOCATING+ __.fini_end = .};
${RELOCATING+_etext =.};
}
- .data ${RELOCATING+ SIZEOF(.text) + ADDR(.text) + 0x400000} :
+ .data ${RELOCATING+ NEXT (0x400000) + ((SIZEOF(.text) + ADDR(.text)) % 0x200)} :
{
*(.data)
- ${CONSTRUCTING+CONSTRUCTORS}
- *(.comment)
${RELOCATING+_edata = .};
}
.bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} :
@@ -36,6 +38,12 @@ SECTIONS
*(COMMON)
${RELOCATING+ _end = .};
${RELOCATING+ __end = .};
- }
+ }
+ ${RELOCATING- ${INIT}}
+ ${RELOCATING- ${FINI}}
+ .comment 0 ${RELOCATING+(NOLOAD)} :
+ {
+ *(.comment)
+ }
}
EOF