summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds_ROM
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/m68k/mrm332/startup/linkcmds_ROM')
-rw-r--r--c/src/lib/libbsp/m68k/mrm332/startup/linkcmds_ROM212
1 files changed, 0 insertions, 212 deletions
diff --git a/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds_ROM b/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds_ROM
deleted file mode 100644
index 48b2f3f46e..0000000000
--- a/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds_ROM
+++ /dev/null
@@ -1,212 +0,0 @@
-/* linkcmds
- */
-
-OUTPUT_ARCH(m68k)
-STARTUP(except_vect_332_ROM.o)
-__DYNAMIC = 0;
-
-/*
- * ROM:
- * +--------------------+ <- low memory
- * | .text |
- * | etext |
- * | ctor list | the ctor and dtor lists are for
- * | dtor list | C++ support
- * | _endtext |
- * | temporary .data | .data is moved to RAM by crt0
- * | |
- * +--------------------+ <- high memory
- *
- *
- * RAM:
- * +--------------------+ <- low memory
- * | .data | initialized data goes here
- * | _sdata |
- * | _edata |
- * +--------------------+
- * | .bss |
- * | __bss_start | start of bss, cleared by crt0
- * | _end | start of heap, used by sbrk()
- * +--------------------+
- * | heap space |
- * | _ENDHEAP |
- * | stack space |
- * | __stack | top of stack
- * +--------------------+ <- high memory
- */
-
-MEMORY
-{
- rom : ORIGIN = 0x90000, LENGTH = 0x70000
- ram : ORIGIN = 0x03000, LENGTH = 0x7d000
-}
-
-RamBase = DEFINED(RamBase) ? RamBase : 0x003000;
-RamSize = DEFINED(RamSize) ? RamSize : 0x7d000;
-_RamEnd = RamBase + RamSize;
-
-__end_of_ram = 0x080000;
-_copy_data_from_rom = 1;
-HeapSize = DEFINED(HeapSize) ? HeapSize : 0x0;
-_StackSize = DEFINED(_StackSize) ? _StackSize : 0x2000;
-
-/*
- *
- */
-SECTIONS
-{
- .text :
- {
- . = .;
- CREATE_OBJECT_SYMBOLS
- text_start = .;
- _text_start = .;
- *(.text*)
- . = ALIGN (16);
-
-
- /*
- * Initialization and finalization code.
- *
- * Various files can provide initialization and finalization
- * functions. crtbegin.o and crtend.o are two instances. The
- * body of these functions are in .init and .fini sections. We
- * accumulate the bodies here, and prepend function prologues
- * from crti.o and function epilogues from crtn.o. crti.o must
- * be linked first; crtn.o must be linked last. Because these
- * are wildcards, it doesn't matter if the user does not
- * actually link against crti.o and crtn.o; the linker won't
- * look for a file to match a wildcard. The wildcard also
- * means that it doesn't matter which directory crti.o and
- * crtn.o are in.
- */
- PROVIDE (_init = .);
- *crti.o(.init)
- *(.init)
- *crtn.o(.init)
- PROVIDE (_fini = .);
- *crti.o(.fini)
- *(.fini)
- *crtn.o(.fini)
-
- /*
- * Special FreeBSD sysctl sections.
- */
- . = ALIGN (16);
- __start_set_sysctl_set = .;
- *(set_sysctl_*);
- __stop_set_sysctl_set = ABSOLUTE(.);
- *(set_domain_*);
- *(set_pseudo_*);
-
- /*
- * C++ constructors/destructors
- *
- * gcc uses crtbegin.o to find the start of the constructors
- * and destructors so we make sure it is first. Because this
- * is a wildcard, it doesn't matter if the user does not
- * actually link against crtbegin.o; the linker won't look for
- * a file to match a wildcard. The wildcard also means that
- * it doesn't matter which directory crtbegin.o is in. The
- * constructor and destructor list are terminated in
- * crtend.o. The same comments apply to it.
- */
- . = ALIGN (16);
- *crtbegin.o(.ctors)
- *(.ctors)
- *crtend.o(.ctors)
- *crtbegin.o(.dtors)
- *(.dtors)
- *crtend.o(.dtors)
-
- *(.eh_frame)
- . = ALIGN (16);
-
- /*
- * Read-only data
- */
- . = ALIGN (16);
- _rodata_start = . ;
- *(.rodata*)
- *(.gnu.linkonce.r*)
-
- etext = ALIGN(0x10);
- __CTOR_LIST__ = .;
- LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)
- *(.ctors)
- LONG(0)
- __CTOR_END__ = .;
- __DTOR_LIST__ = .;
- LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)
- *(.dtors)
- LONG(0)
- __DTOR_END__ = .;
- *(.lit)
- *(.shdata)
- _etext = .;
- _endtext = .;
- } > rom
- .tdata : {
- _TLS_Data_begin = .;
- *(.tdata .tdata.* .gnu.linkonce.td.*)
- _TLS_Data_end = .;
- } > rom
- .tbss : {
- _TLS_BSS_begin = .;
- *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
- _TLS_BSS_end = .;
- } > rom
- _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
- _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
- _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
- _TLS_Alignment = ALIGNOF (.tdata);
- .gcc_exc :
- AT ( ADDR(.tdata) + SIZEOF( .tdata ) )
- {
- *(.gcc_exc)
- } > ram
- .data :
- {
- data_start = .;
- _data_start = .;
- _copy_start = .;
- _sdata = . ;
- *(.data)
- *(.gnu.linkonce.d*)
- *(.gcc_except_table*)
- *(.jcr)
-
- CONSTRUCTORS
- edata = ALIGN(0x10);
- _edata = .;
- } > ram
- .shbss :
- {
- *(.shbss)
- } > ram
- .bss :
- {
- __bss_start = ALIGN(0x8);
- bss_start = .;
- _bss_start = .;
- _clear_start = .;
- *(.shbss)
- *(.dynbss)
- *(.bss* .gnu.linkonce.b.*)
- *(COMMON)
- . = ALIGN (16);
- end = .;
- _end = ALIGN(0x8);
- __end = ALIGN(0x8);
-
- WorkAreaBase = . + _StackSize;
- } > ram
- .stab . (NOLOAD) :
- {
- [ .stab ]
- }
- .stabstr . (NOLOAD) :
- {
- [ .stabstr ]
- }
-}