linkcmds

来自「RTEMS (Real-Time Executive for Multiproc」· 代码 · 共 114 行

TXT
114
字号
/* *  $Id: linkcmds,v 1.4.2.1 2003/03/20 00:17:15 joel Exp $ */OUTPUT_ARCH(h8300h)/* * Declare some sizes. */_RamBase = DEFINED(_RamBase) ? _RamBase : 0x0;_RamSize = DEFINED(_RamSize) ? _RamSize : 1M;_HeapSize = DEFINED(_HeapSize) ? _HeapSize : 0x4000;_StackSize = DEFINED(_StackSize) ? _StackSize : 0x1000;ENTRY("_start")/* The memory size is 256KB to coincide with the simulator.   Don't change either without considering the other.  */MEMORY{  /* 0xc4 is a magic entry.  We should have the linker just  skip over it one day... */  vectors : o = 0x0000, l = 0xc4  magicvectors : o = 0xc4, l = 0x3c  /* We still only use 256k as the main ram size.  */  ram    : o = 0x0100, l = 0xffefc  /* RTEMS lies so everything links */  /* ram    : o = 0x0100, l = 0x3fefc */  /* The stack starts at the top of main ram.  */  topram : o = 0x3fffc, l = 0x4  /* This holds variables in the "tiny" sections.  */  tiny   : o = 0xff8000, l = 0x7f00  /* At the very top of the address space is the 8-bit area.  */  eight  : o = 0xffff00, l = 0x100}SECTIONS{    .vectors :   {        *(.vectors)   }  > vectors    .text :     { 	*(.text) 	        /*         * Special FreeBSD sysctl sections.         */        . = ALIGN (16);        ___start_set_sysctl_set = .;        __start_set_sysctl_set = .;        *(set_sys*);        *(set_sysctl_*);        ___stop_set_sysctl_set = ABSOLUTE(.);        __stop_set_sysctl_set = ABSOLUTE(.);        *(set_dom*);        *(set_domain_*);        *(set_pse*);        *(set_pseudo_*);        /*         * Read-only data         */        . = ALIGN (16);        PROVIDE(_rodata_start = . );        *(.rodata)        *(.gnu.linkonce.r*)        PROVIDE(_erodata = . );	 _etext = .;    }  >ram   .tors SIZEOF(.text) + ADDR(.text): {        ___ctors = . ;         *(.ctors)        ___ctors_end = . ;        ___dtors = . ;        *(.dtors)        ___dtors_end = . ;    }  >ram    .data SIZEOF(.tors) + ADDR(.tors):    {  	*(.data)         *(.gcc_exc*)	CONSTRUCTORS	 _edata = .;    }  >ram    .bss SIZEOF(.data) + ADDR(.data):    { 	 _bss_start = .;	*(.bss)	 	*(COMMON) 	. = ALIGN (64);	. += _StackSize;	_stack_init = .;	_clear_end = .;	_WorkspaceBase = .;	 _end = .;	 __end = .;    } >ram    .tiny : {        *(.tiny)    }  > tiny    .eight : {        *(.eight)    }  > eight    .stab 0 (NOLOAD) : {        [ .stab ]    }    .stabstr 0 (NOLOAD) : {        [ .stabstr ]    }} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?