aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorSteve Chamberlain <sac@cygnus>1994-02-04 22:57:26 +0000
committerSteve Chamberlain <sac@cygnus>1994-02-04 22:57:26 +0000
commit367428b5a1b9bf3ec92e00d3f19793ec1c0a80fc (patch)
tree732c26da72f5eb875822d8b29cc431bea0fb9986 /ld
parent9ebe52b3b94bf5a58d7fef576c5ad3cbec501dfd (diff)
downloadgdb-367428b5a1b9bf3ec92e00d3f19793ec1c0a80fc.zip
gdb-367428b5a1b9bf3ec92e00d3f19793ec1c0a80fc.tar.gz
gdb-367428b5a1b9bf3ec92e00d3f19793ec1c0a80fc.tar.bz2
Support for various sicko segmented memory models.
Diffstat (limited to 'ld')
-rw-r--r--ld/scripttempl/h8500b.sc62
-rw-r--r--ld/scripttempl/h8500c.sc59
-rw-r--r--ld/scripttempl/h8500m.sc61
-rw-r--r--ld/scripttempl/h8500s.sc58
4 files changed, 240 insertions, 0 deletions
diff --git a/ld/scripttempl/h8500b.sc b/ld/scripttempl/h8500b.sc
new file mode 100644
index 0000000..4eec21a
--- /dev/null
+++ b/ld/scripttempl/h8500b.sc
@@ -0,0 +1,62 @@
+cat <<EOF
+OUTPUT_FORMAT("${OUTPUT_FORMAT}")
+OUTPUT_ARCH(${ARCH})
+
+/* Code and data, both larger than 64k */
+
+SECTIONS
+{
+.text ${RELOCATING+ 0x10000} :
+ {
+ *(.text)
+
+ ${RELOCATING+ _etext = . ; }
+ }
+
+
+.data ${RELOCATING+ 0x20000} :
+ {
+ *(.data)
+ ${RELOCATING+ _edata = . ; }
+ }
+
+.rdata ${RELOCATING+ 0x20000} :
+ {
+ *(.rdata);
+ *(.strings)
+ ___ctors = . ;
+ *(.ctors)
+ ___ctors_end = . ;
+ ___dtors = . ;
+ *(.dtors)
+ ___dtors_end = . ;
+}
+
+.bss ${RELOCATING+ 0x40000} :
+ {
+ ${RELOCATING+ __start_bss = . ; }
+ *(.bss)
+ *(COMMON)
+ ${RELOCATING+ _end = . ; }
+ }
+
+.stack ${RELOCATING+ 0x50000} :
+ {
+ ${RELOCATING+ _stack = . ; }
+ *(.stack)
+ }
+
+ .stab . (NOLOAD) :
+ {
+ [ .stab ]
+ }
+ .stabstr . (NOLOAD) :
+ {
+ [ .stabstr ]
+ }
+}
+EOF
+
+
+
+
diff --git a/ld/scripttempl/h8500c.sc b/ld/scripttempl/h8500c.sc
new file mode 100644
index 0000000..1871738
--- /dev/null
+++ b/ld/scripttempl/h8500c.sc
@@ -0,0 +1,59 @@
+cat <<EOF
+OUTPUT_FORMAT("${OUTPUT_FORMAT}")
+OUTPUT_ARCH(${ARCH})
+
+/* Compact model - code < 64k, data > 64k */
+
+SECTIONS
+{
+.text 0x10000 :
+ {
+ *(.text)
+ *(.strings)
+ ${RELOCATING+ _etext = . ; }
+ } ${RELOCATING+ > ram}
+
+
+.data 0x20000 :
+ {
+ *(.data)
+ ${RELOCATING+ _edata = . ; }
+ } ${RELOCATING+ > ram}
+
+.rdata 0x30000 : {
+ *(.rdata);
+ ___ctors = . ;
+ *(.ctors)
+ ___ctors_end = . ;
+ ___dtors = . ;
+ *(.dtors)
+ ___dtors_end = . ;
+} ${RELOCATING+ > ram}
+
+.bss 0x40000 :
+ {
+ ${RELOCATING+ __start_bss = . ; }
+ *(.bss)
+ *(COMMON)
+ ${RELOCATING+ _end = . ; }
+ } ${RELOCATING+ >ram}
+.stack 0x5fff0 :
+ {
+ ${RELOCATING+ _stack = . ; }
+ *(.stack)
+ } ${RELOCATING+ > topram}
+
+ .stab . (NOLOAD) :
+ {
+ [ .stab ]
+ }
+ .stabstr . (NOLOAD) :
+ {
+ [ .stabstr ]
+ }
+}
+EOF
+
+
+
+
diff --git a/ld/scripttempl/h8500m.sc b/ld/scripttempl/h8500m.sc
new file mode 100644
index 0000000..b1dee9d
--- /dev/null
+++ b/ld/scripttempl/h8500m.sc
@@ -0,0 +1,61 @@
+cat <<EOF
+OUTPUT_FORMAT("${OUTPUT_FORMAT}")
+OUTPUT_ARCH(${ARCH})
+
+/* Code and data, both larger than 64k */
+
+SECTIONS
+{
+.text ${RELOCATING+ 0x10000} :
+ {
+ *(.text)
+ ${RELOCATING+ _etext = . ; }
+ }
+
+
+.data ${RELOCATING+ 0x20000} :
+ {
+ *(.data)
+ ${RELOCATING+ _edata = . ; }
+ }
+
+.rdata ${RELOCATING+ . } :
+ {
+ *(.rdata);
+ *(.strings)
+ ___ctors = . ;
+ *(.ctors)
+ ___ctors_end = . ;
+ ___dtors = . ;
+ *(.dtors)
+ ___dtors_end = . ;
+ }
+
+.bss ${RELOCATING+ . } :
+ {
+ ${RELOCATING+ __start_bss = . ; }
+ *(.bss)
+ *(COMMON)
+ ${RELOCATING+ _end = . ; }
+ }
+
+.stack ${RELOCATING+ 0x2fff0} :
+ {
+ ${RELOCATING+ _stack = . ; }
+ *(.stack)
+ }
+
+ .stab . (NOLOAD) :
+ {
+ [ .stab ]
+ }
+ .stabstr . (NOLOAD) :
+ {
+ [ .stabstr ]
+ }
+}
+EOF
+
+
+
+
diff --git a/ld/scripttempl/h8500s.sc b/ld/scripttempl/h8500s.sc
new file mode 100644
index 0000000..2c0f626
--- /dev/null
+++ b/ld/scripttempl/h8500s.sc
@@ -0,0 +1,58 @@
+cat <<EOF
+OUTPUT_FORMAT("${OUTPUT_FORMAT}")
+OUTPUT_ARCH(${ARCH})
+
+/* Code and data, both 64k */
+
+SECTIONS
+{
+.text ${RELOCATING+ 0x10000 } :
+ {
+ *(.text)
+ *(.rdata);
+ *(.strings)
+ ___ctors = . ;
+ *(.ctors)
+ ___ctors_end = . ;
+ ___dtors = . ;
+ *(.dtors)
+ ___dtors_end = . ;
+ ${RELOCATING+ _etext = . ; }
+ }
+
+
+.data ${RELOCATING+ 0x20000 } :
+ {
+ *(.data)
+ ${RELOCATING+ _edata = . ; }
+ }
+
+
+.bss ${RELOCATING+ .} :
+ {
+ ${RELOCATING+ __start_bss = . ; }
+ *(.bss)
+ *(COMMON)
+ ${RELOCATING+ _end = . ; }
+ }
+
+.stack ${RELOCATING+ 0x2fff0} :
+ {
+ ${RELOCATING+ _stack = . ; }
+ *(.stack)
+ }
+
+ .stab . (NOLOAD) :
+ {
+ [ .stab ]
+ }
+ .stabstr . (NOLOAD) :
+ {
+ [ .stabstr ]
+ }
+}
+EOF
+
+
+
+