Fix ld segfault for some elf targets. Fix default layout for d10v.
authorTom Rix <trix@redhat.com>
Mon, 17 Jun 2002 14:08:40 +0000 (14:08 +0000)
committerTom Rix <trix@redhat.com>
Mon, 17 Jun 2002 14:08:40 +0000 (14:08 +0000)
ld/ChangeLog
ld/emulparams/d10velf.sh
ld/emultempl/elf32.em
ld/scripttempl/elfd10v.sc

index 071d22fa144eb20a3936210e68dde6790074b72d..5c193fb20a50a467f0e7f6dcc7dc433373119f92 100644 (file)
@@ -1,3 +1,10 @@
+2002-06-17  Tom Rix  <trix@redhat.com>
+
+       * emultempl/elf32.em: gld*_get_script:  Check for 
+       GENERATE_COMBRELOC_SCRIPT.
+       * scripttempl/elfd10v.sc : Fix STACK and INSN.
+       * emulparams/d10velf.sh : Fix TEXT_START_ADDR.
+
 Thu Jun 13 20:18:38 2002  J"orn Rennecke <joern.rennecke@superh.com>
 
        * configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf.
index c8c4214edec360bea60c4b45a235476dd5749631..c8de5c4a13610e3cdd8892b85fac9cbfe3952697 100644 (file)
@@ -1,7 +1,7 @@
 MACHINE=
 SCRIPT_NAME=elfd10v
 OUTPUT_FORMAT="elf32-d10v"
-TEXT_START_ADDR=0x01000000
+TEXT_START_ADDR=0x01014000
 READONLY_START_ADDR=0x02000004
 ARCH=d10v
 MAXPAGESIZE=32
index cfd0409befe070af7292aa269016db764b31d49c..58a1ccc0bcbaf165238055ff25c6bdafdf25fb23 100644 (file)
@@ -1383,13 +1383,17 @@ echo '  ; else if (!config.magic_demand_paged) return'     >> e${EMULATION_NAME}
 sed $sc ldscripts/${EMULATION_NAME}.xn                     >> e${EMULATION_NAME}.c
 fi
 if test -n "$GENERATE_SHLIB_SCRIPT" ; then
+if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then
 echo '  ; else if (link_info.shared && link_info.combreloc) return' >> e${EMULATION_NAME}.c
 sed $sc ldscripts/${EMULATION_NAME}.xsc                    >> e${EMULATION_NAME}.c
+fi
 echo '  ; else if (link_info.shared) return'              >> e${EMULATION_NAME}.c
 sed $sc ldscripts/${EMULATION_NAME}.xs                     >> e${EMULATION_NAME}.c
 fi
+if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then
 echo '  ; else if (link_info.combreloc) return'            >> e${EMULATION_NAME}.c
 sed $sc ldscripts/${EMULATION_NAME}.xc                     >> e${EMULATION_NAME}.c
+fi
 echo '  ; else return'                                     >> e${EMULATION_NAME}.c
 sed $sc ldscripts/${EMULATION_NAME}.x                      >> e${EMULATION_NAME}.c
 echo '; }'                                                 >> e${EMULATION_NAME}.c
index ef57c81a38b2d28f205597a9d8bab0a74bbcb970..f9acf6c593835ba3ae3ce9a1a4f9f50a4b2cc7f2 100644 (file)
@@ -66,14 +66,14 @@ ${RELOCATING+${EXECUTABLE_SYMBOLS}}
 MEMORY
 {
   UNIFIED : org = 0,         len = 0x1000000
-  INSN    : org = 0x1000000, len = 0x40000
+  INSN    : org = 0x1014000, len = 0x40000
   DATA    : org = 0x2000004, len = 0x7FFC
-  STACK   : org = 0x2007FFE, len = 4
+  STACK   : org = 0x200BFFE, len = 4
 }
 
 SECTIONS
 {
-  .text :
+  .text ${RELOCATING+${TEXT_START_ADDR}} :
   {
     ${RELOCATING+${TEXT_START_SYMBOLS}}
     KEEP (*(.init))