summaryrefslogtreecommitdiffstats
path: root/libgloss/arm/coff-redboot.ld
diff options
context:
space:
mode:
authorMark Salter <msalter@redhat.com>2002-01-07 18:12:32 +0000
committerMark Salter <msalter@redhat.com>2002-01-07 18:12:32 +0000
commit62a25ce17c6c57a9dff0ecc936026a8060be37f9 (patch)
tree148fd294fb7d3dfcb44052f4ff43a39604f36633 /libgloss/arm/coff-redboot.ld
parent4a08cbfefba72068259316476bf0a3b55026ca1c (diff)
downloadcygnal-62a25ce17c6c57a9dff0ecc936026a8060be37f9.tar.gz
cygnal-62a25ce17c6c57a9dff0ecc936026a8060be37f9.tar.bz2
cygnal-62a25ce17c6c57a9dff0ecc936026a8060be37f9.zip
Add ARM support
Diffstat (limited to 'libgloss/arm/coff-redboot.ld')
-rw-r--r--libgloss/arm/coff-redboot.ld49
1 files changed, 49 insertions, 0 deletions
diff --git a/libgloss/arm/coff-redboot.ld b/libgloss/arm/coff-redboot.ld
new file mode 100644
index 000000000..7223ed22c
--- /dev/null
+++ b/libgloss/arm/coff-redboot.ld
@@ -0,0 +1,49 @@
+OUTPUT_FORMAT("coff-arm-little", "coff-arm-big", "coff-arm-little")
+ SEARCH_DIR(/toolbin/xscale-coff/lib);
+ENTRY(_start)
+SECTIONS
+{
+ /* We start at 0x8000 because gdb assumes it (see FRAME_CHAIN).
+ This is an artifact of the ARM Demon monitor using the bottom 32k
+ as workspace (shared with the FP instruction emulator if
+ present): */
+ .text 0x8000 : {
+ *(.init)
+ *(.text)
+ *(.glue_7t)
+ *(.glue_7)
+ *(.rdata)
+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ;
+ LONG (-1); *(.ctors); *(.ctor); LONG (0);
+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ;
+ LONG (-1); *(.dtors); *(.dtor); LONG (0);
+ *(.fini)
+ etext = .;
+ _etext = .;
+ }
+ .data 0x40000 + (. & 0xfffc0fff) : {
+ __data_start__ = . ;
+ *(.data)
+ __data_end__ = . ;
+ edata = .;
+ _edata = .;
+ }
+ .bss SIZEOF(.data) + ADDR(.data) :
+ {
+ __bss_start__ = . ;
+ *(.bss)
+ *(COMMON)
+ __bss_end__ = . ;
+ }
+ end = .;
+ _end = .;
+ __end__ = .;
+ .stab 0 (NOLOAD) :
+ {
+ [ .stab ]
+ }
+ .stabstr 0 (NOLOAD) :
+ {
+ [ .stabstr ]
+ }
+}