elf32mep.sh revision 1.6
1MACHINE= 2SCRIPT_NAME=mep 3OUTPUT_FORMAT="elf32-mep-little" 4TEXT_START_ADDR=0x1000 5ARCH=mep 6MAXPAGESIZE=256 7ENTRY=_start 8EMBEDDED=yes 9TEMPLATE_NAME=elf 10 11if test -n "${RELOCATING}"; then 12DATA_START_SYMBOLS='__data_start = . ;' 13OTHER_GOT_SYMBOLS=' 14 . = ALIGN(4); 15 __sdabase = . + 0x8000; 16 .srodata : { *(.srodata) *(.srodata.*) *(.gnu.linkonce.srd.*) } 17' 18OTHER_SDATA_SECTIONS=' 19 PROVIDE (__sdabase = .); 20 __assert_tiny_size = ASSERT ((. < __sdabase) || ((. - __sdabase) <= 0x8000), 21 "tiny section overflow"); 22' 23OTHER_READONLY_SECTIONS=' 24 __stack = 0x001ffff0; 25 __stack_size = 0x100000; 26 __stack0 = (__stack - (0 * (__stack_size / 1)) + 15) / 16 * 16; 27 28 .rostacktab : 29 { 30 /* Emit a table describing the location of the different stacks. 31 Only 1 processor in the default configuration. */ 32 . = ALIGN(4); 33 __stack_table = .; 34 LONG (__stack0); 35 } 36' 37OTHER_END_SYMBOLS=' 38 PROVIDE (__heap = _end); 39 PROVIDE (__heap_end = 0); 40' 41OTHER_TEXT_SECTIONS=' 42 *(.ftext) *(.ftext.*) *(.gnu.linkonce.ft.*) 43 . = ALIGN(8); 44 *(.vftext) *(.vftext.*) *(.gnu.linkonce.vf.*) 45 *(.frodata) *(.frodata.*) *(.gnu.linkonce.frd.*) 46' 47OTHER_READWRITE_SECTIONS=' 48 . = ALIGN(4); 49 __tpbase = .; 50 .based : { *(.based) *(.based.*) *(.gnu.linkonce.based.*) } 51 __assert_based_size = ASSERT ((. - __tpbase) <= 0x80, "based section overflow"); 52 .far : { *(.far) *(.far.*) *(.gnu.linkonce.far.*) } 53' 54OTHER_BSS_SECTIONS=' 55 __assert_near_size = ASSERT (. <= 0x1000000, "near section overflow"); 56 .farbss : { PROVIDE (__farbss_start = .); *(.farbss) *(.farbss.*) PROVIDE (__farbss_end = .); } 57' 58fi 59