diff options
Diffstat (limited to 'c/src/lib/libbsp/i386/ts_386ex/startup/linkcmds')
-rw-r--r-- | c/src/lib/libbsp/i386/ts_386ex/startup/linkcmds | 220 |
1 files changed, 0 insertions, 220 deletions
diff --git a/c/src/lib/libbsp/i386/ts_386ex/startup/linkcmds b/c/src/lib/libbsp/i386/ts_386ex/startup/linkcmds deleted file mode 100644 index 093be01330..0000000000 --- a/c/src/lib/libbsp/i386/ts_386ex/startup/linkcmds +++ /dev/null @@ -1,220 +0,0 @@ -/* - * This file contains directives for the GNU linker which are specific - * to the Technologic Systems TS-1325 (i386ex) board. - * - * Copyright (c) 1989-1998. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id$ - * - * Memory layout: - * - * 0x0008000 -> ... : initial section ( init 386ex, goto protected mode) - * ... -> ... : text section ( executable code ) - * ... -> 0x00A0000 : data section ( initialized storage ) - * 0x0100000 -> 0x0200000 : bss section, stack space, heap storage - */ - -RamBase = DEFINED(RamBase) ? RamBase : 0x00100000; -RamSize = DEFINED(RamSize) ? RamSize : 512K; -HeapSize = DEFINED(HeapSize) ? HeapSize : 0x0; - -ENTRY(_init_i386ex); - -SECTIONS -{ - -/*************************************************************************** - * initial section: - * - * This subsection of ".text" is the first in memory, and executed by the DOS - * loader. It initializes the i386ex, sets up the gdt in RAM, loads the gdt, - * jumps to protected mode, loads the idt, zeros the bss section, sets up - * the stack and calls the rest of the RTEMS initialization. - ***************************************************************************/ - - _DOS_ld_addr = 0x0008000 ; - -/*************************************************************************** - * text section: - * - * Nobody here but us opcodes. - ***************************************************************************/ - - .text _DOS_ld_addr : - { - CREATE_OBJECT_SYMBOLS - text_start = . ; - _text_start = . ; - - *(.initial); - . = ALIGN(0x20); - - *(.text ); - . = ALIGN (0x20); - - /* - * Special FreeBSD sysctl sections. - */ - . = ALIGN (16); - __start_set_sysctl_set = .; - *(set_sysctl_*); - __stop_set_sysctl_set = ABSOLUTE(.); - *(set_domain_*); - *(set_pseudo_*); - - *(.eh_frame) - . = ALIGN (0x20); - - *(.gnu.linkonce.t*) - . = ALIGN(0x20); - - /* - * C++ constructors - */ - - __CTOR_LIST__ = .; - LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2) - *(.ctors) - LONG(0) - __CTOR_END__ = .; - . = ALIGN (4) ; - __DTOR_LIST__ = .; - LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2) - *(.dtors) - LONG(0) - __DTOR_END__ = .; - - _rodata_start = . ; - *(.rodata*) - . = ALIGN(0x20); - _erodata = .; - - *(.gnu.linkonce.r*) - . = ALIGN(0x20); - _endtext = . ; - } - -/*************************************************************************** - * ctor/dtor sections: - * - * These sections house the global constructors and destructors. - ***************************************************************************/ - - .init BLOCK(0x20) : - { - *(.init) - } = 0x9090 - - .fini BLOCK(0x20) : - { - *(.fini) - } = 0x9090 - -/*************************************************************************** - * data section: - * - * This section defines the location of the data section in RAM. - ***************************************************************************/ - - .data BLOCK(0x20) : - { - _sdata = .; - *(.data); - . = ALIGN(0x20); - *(.gnu.linkonce.d*) - . = ALIGN(0x20); - *(.gcc_except_table*) - . = ALIGN(0x20); - _edata = .; - } - _data_size = _edata - _sdata ; - -/*************************************************************************** - * bss section: - * - * The bss section is the first section in extended RAM ( > 1MB). - ***************************************************************************/ - - .bss 0x100000 (NOLOAD) : - { - _bss_start = .; - *(.bss); - *(COMMON); - _ebss = ALIGN(0x20); - } - _bss_size = _ebss - _bss_start ; - -/*************************************************************************** - * discard section: - * - * This section is used to throw away stuff we don't want. - ***************************************************************************/ - - /DISCARD/ : - { - *(.comment); - *(.note); - } - -/*************************************************************************** - * General variables: - * - * The stack_size variable is customizable here. The heap is located directly - * after the stack in RAM. A routine within bspstart.c uses these variables - * to ensure that the heap used by RTEMS is as large as the RAM remaining - * after all workspace configurations are complete. - ***************************************************************************/ - - stack_size = 0x8000 ; - stack_origin = _ebss + stack_size ; - heap_bottom = stack_origin + 4 ; - . = ALIGN(0x10); - WorkAreaBase = .; - - - - /* Stabs debugging sections. */ - .stab 0 : { *(.stab) } - .stabstr 0 : { *(.stabstr) } - .stab.excl 0 : { *(.stab.excl) } - .stab.exclstr 0 : { *(.stab.exclstr) } - .stab.index 0 : { *(.stab.index) } - .stab.indexstr 0 : { *(.stab.indexstr) } - .comment 0 : { *(.comment) } - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to the beginning - of the section so we begin them at 0. */ - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } - /* These must appear regardless of . */ -} |