summaryrefslogtreecommitdiff
path: root/ld/scripttempl/elf32xc16xl.sc
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2006-02-17 14:36:28 +0000
committerNick Clifton <nickc@redhat.com>2006-02-17 14:36:28 +0000
commitd70c5fc7c56fa9915f594aca8de15b478f3ab5b0 (patch)
tree47ad1b8f49a0f428e7c1d53f02062e685c5f0ef9 /ld/scripttempl/elf32xc16xl.sc
parent0b92ab21c5c6920cc18c05efadd3a52fbd35c825 (diff)
downloadbinutils-gdb-d70c5fc7c56fa9915f594aca8de15b478f3ab5b0.tar.gz
Add support for the Infineon XC16X.
Diffstat (limited to 'ld/scripttempl/elf32xc16xl.sc')
-rw-r--r--ld/scripttempl/elf32xc16xl.sc64
1 files changed, 64 insertions, 0 deletions
diff --git a/ld/scripttempl/elf32xc16xl.sc b/ld/scripttempl/elf32xc16xl.sc
new file mode 100644
index 00000000000..215b50ae9c7
--- /dev/null
+++ b/ld/scripttempl/elf32xc16xl.sc
@@ -0,0 +1,64 @@
+cat <<EOF
+OUTPUT_FORMAT("${OUTPUT_FORMAT}")
+OUTPUT_ARCH(${ARCH})
+ENTRY("_start")
+MEMORY
+{
+ vectarea : o =0xc00000, l = 0x0300
+
+ introm : o = 0xc00300, l = 0x16000
+ /* The stack starts at the top of main ram. */
+
+ dram : o = 0x8000 , l = 0xffff
+ /* At the very top of the address space is the 8-bit area. */
+
+ ldata : o =0x4000 ,l = 0x0200
+}
+SECTIONS
+{
+/*.vects :
+ {
+ *(.vects)
+ } ${RELOCATING+ > vectarea} */
+.init :
+ {
+ *(.init)
+ } ${RELOCATING+ >introm}
+
+.text :
+ {
+ *(.rodata)
+ *(.text.*)
+ *(.text)
+ ${RELOCATING+ _etext = . ; }
+ } ${RELOCATING+ > introm}
+.data :
+ {
+ *(.data)
+ *(.data.*)
+
+ ${RELOCATING+ _edata = . ; }
+ } ${RELOCATING+ > dram}
+
+.bss :
+ {
+ ${RELOCATING+ _bss_start = . ;}
+ *(.bss)
+ *(COMMON)
+ ${RELOCATING+ _end = . ; }
+ } ${RELOCATING+ > dram}
+
+ .ldata :
+ {
+ *(.ldata)
+ } ${RELOCATING+ > ldata}
+
+
+ .vects :
+ {
+ *(.vects)
+ } ${RELOCATING+ > vectarea}
+
+
+}
+EOF