Wed Nov 1 15:42:45 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts...
authorIan Lance Taylor <ian@airs.com>
Wed, 1 Nov 1995 20:52:10 +0000 (20:52 +0000)
committerIan Lance Taylor <ian@airs.com>
Wed, 1 Nov 1995 20:52:10 +0000 (20:52 +0000)
* 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.

ld/ChangeLog
ld/Makefile.in
ld/configure.tgt
ld/emulparams/.Sanitize
ld/scripttempl/.Sanitize
ld/scripttempl/m88kbcs.sc

index 628b5b6ad8e60ead826d948328505e75b87412de..13f0a684b0cf969fb35595adcf0576b95a8c0b1a 100644 (file)
@@ -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
index cdfce17686c52be3ce1bd1e00cf04afa68b22b5f..81c1e7d7b9911e95cf7d5c5556b15a21df76fa29 100644 (file)
@@ -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}
index b099ec8ed6075db68d1ee04c0eb8282b833205ae..7a5bccc94ae91b4a25f398ae3e516582d03334f9 100644 (file)
@@ -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 ;;
index dabd8f699fd5e5fc38efb43b3c81d9ef97fd45f7..6af9e29e09d6954f13d1172da92f232e9d0b33bd 100644 (file)
@@ -49,6 +49,7 @@ armaoutl.sh
 armcoff.sh
 armpe.sh
 coff_sparc.sh
+delta68.sh
 ebmon29k.sh
 elf32_sparc.sh
 elf32bmip.sh
index 72e67199ce9769700420fc6ae68ba2ddf431520f..55588e1dac1707958b32adc1c127b9a71010dda3 100644 (file)
@@ -38,6 +38,7 @@ alpha.sc
 armaout.sc
 armcoff.sc
 aout.sc
+delta68.sc
 ebmon29k.sc
 elf.sc
 elfppc.sc
index 928d64071fe5cf3f9898722df5292ace84272844..b29980e4233608392aa8b776c0bcdd369b25fbd8 100644 (file)
@@ -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