diff options
Diffstat (limited to 'c/src/lib/libbsp/c4x/c4xsim/startup/linkcmds')
-rw-r--r-- | c/src/lib/libbsp/c4x/c4xsim/startup/linkcmds | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/c4x/c4xsim/startup/linkcmds b/c/src/lib/libbsp/c4x/c4xsim/startup/linkcmds new file mode 100644 index 0000000000..87f46ad7af --- /dev/null +++ b/c/src/lib/libbsp/c4x/c4xsim/startup/linkcmds @@ -0,0 +1,76 @@ +OUTPUT_FORMAT("coff-c4x") + __SYSMEM_SIZE = DEFINED(__SYSMEM_SIZE) ? __SYSMEM_SIZE : 0x4000; + __STACK_SIZE = DEFINED(__STACK_SIZE) ? __STACK_SIZE : 0x1000; + __HeapSize = DEFINED(__HeapSize) ? __HeapSize : 0x10000; + __WorkspaceMax = DEFINED(__WorkspaceMax) ? __WorkspaceMax : 256K; + __ClockFrequency = DEFINED(_ClockFrequency) ? _ClockFrequency : 50; +ENTRY(_start) +SECTIONS +{ + .vectors : { + . += 4 * 64; + } + .text 0x200 : { + *(.text) + ___CTOR_LIST__ = .; + LONG(___CTOR_END__ - ___CTOR_LIST__ - 2) + *(.ctors) + LONG(0); + ___CTOR_END__ = .; + ___DTOR_LIST__ = .; + LONG(___DTOR_END__ - ___DTOR_LIST__ - 2) + *(.dtors) + LONG(0) + ___DTOR_END__ = .; + } + .init : { *(.init) } + .fini : { *(.fini) } + .const : + { + *(.const) + } + .cinit : + { + *(.cinit) + } + .data : + { + *(.data) + } + .comms : { + *(.comms) + } + .bss : { + + .bss = .; + *(.bss) + *(COMMON) + } + .stack : + { + *(.stack) + . = . + __STACK_SIZE; + } + .heap : + { + __HeapStart = .; + . += __HeapSize; + __WorkspaceBase = .; + . += __WorkspaceMax; + } +/* + .sysmem : + { + *(.sysmem) + } +*/ + .stab 0 : + { + [ .stab ] + } + .stabstr 0 : + { + [ .stabstr ] + } +/* The TI tools sets cinit to -1 if the ram model is used. */ +} |