aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog9
-rw-r--r--ld/emulparams/h8300.sh13
-rw-r--r--ld/emulparams/h8300elf.sh13
-rw-r--r--ld/emulparams/h8300sxelf.sh13
-rw-r--r--ld/scripttempl/elf.sc4
5 files changed, 52 insertions, 0 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 8d07378..c0c61d8 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,12 @@
+2005-12-22 Santosh Raktawan <santoshr2@kpitcummins.com>
+
+ * ld/emulparms/h8300helf.sh (TINY_READONLY_SECTION,
+ TINY_DATA_SECTION, TINY_BSS_SECTION): Define.
+ * ld/emulparms/h8300self.sh: Likewise.
+ * ld/emulparms/h8300sxelf.sh: Likewise.
+ * ld/scripttempl/elf.sc: Add TINY_READONLY_SECTION,
+ TINY_DATA_SECTION, TINY_BSS_SECTION.
+
2005-12-19 H.J. Lu <hongjiu.lu@intel.com>
PR ld/2065
diff --git a/ld/emulparams/h8300.sh b/ld/emulparams/h8300.sh
index 49eb3c4..68ecdb3 100644
--- a/ld/emulparams/h8300.sh
+++ b/ld/emulparams/h8300.sh
@@ -3,3 +3,16 @@ OUTPUT_FORMAT="coff-h8300"
TEXT_START_ADDR=0x8000
TARGET_PAGE_SIZE=128
ARCH=h8300
+TINY_READONLY_SECTION=".tinyrodata :
+ {
+ *(.tinyrodata)
+ } =0"
+TINY_DATA_SECTION=".tinydata 0xff8000 :
+ {
+ *(.tinydata)
+ _tinydata = .;
+ }"
+TINY_BSS_SECTION=".tinybss : AT (_tinydata)
+ {
+ *(.tinybss)
+ }"
diff --git a/ld/emulparams/h8300elf.sh b/ld/emulparams/h8300elf.sh
index 0617d5b..67d5b20 100644
--- a/ld/emulparams/h8300elf.sh
+++ b/ld/emulparams/h8300elf.sh
@@ -10,3 +10,16 @@ ARCH=h8300
TEMPLATE_NAME=elf32
EMBEDDED=yes
STACK_ADDR=0xfefc
+TINY_READONLY_SECTION=".tinyrodata :
+ {
+ *(.tinyrodata)
+ } =0"
+TINY_DATA_SECTION=".tinydata 0xff8000 :
+ {
+ *(.tinydata)
+ _tinydata = .;
+ }"
+TINY_BSS_SECTION=".tinybss : AT (_tinydata)
+ {
+ *(.tinybss)
+ }"
diff --git a/ld/emulparams/h8300sxelf.sh b/ld/emulparams/h8300sxelf.sh
index 18f82f6..bac2cc3 100644
--- a/ld/emulparams/h8300sxelf.sh
+++ b/ld/emulparams/h8300sxelf.sh
@@ -1,3 +1,16 @@
. ${srcdir}/emulparams/h8300elf.sh
ARCH="h8300:h8300sx"
STACK_ADDR=0x2fefc
+TINY_READONLY_SECTION=".tinyrodata :
+ {
+ *(.tinyrodata)
+ } =0"
+TINY_DATA_SECTION=".tinydata 0xff8000 :
+ {
+ *(.tinydata)
+ _tinydata = .;
+ }"
+TINY_BSS_SECTION=".tinybss : AT (_tinydata)
+ {
+ *(.tinybss)
+ }"
diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc
index 4585a59..d7b0a79 100644
--- a/ld/scripttempl/elf.sc
+++ b/ld/scripttempl/elf.sc
@@ -334,6 +334,7 @@ cat <<EOF
} =${NOP-0}
${TEXT_PLT+${PLT}}
+ ${TINY_READONLY_SECTION}
.text ${RELOCATING-0} :
{
${RELOCATING+${TEXT_START_SYMBOLS}}
@@ -496,6 +497,9 @@ cat <<EOF
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
+ ${TINY_DATA_SECTION}
+ ${TINY_BSS_SECTION}
+
${STACK_ADDR+${STACK}}
${OTHER_SECTIONS}
${RELOCATING+${OTHER_SYMBOLS}}