1SECTIONS 2{ 3 . = 0x80400000; 4 . = ALIGN(4096); 5 .text : 6 { 7 KEEP(*(.text.entrypoint)) /* The entry point */ 8 *(.vectors) 9 *(.text) /* remaining code */ 10 *(.text.*) /* remaining code */ 11 12 *(.rodata) /* read-only data (constants) */ 13 *(.rodata*) 14 *(.glue_7) 15 *(.glue_7t) 16 *(.gnu.linkonce.t*) 17 18 *(COMMON) 19 20 _etext = .; 21 } 22 23 . = ALIGN(16); 24 .eh_frame_hdr : 25 { 26 *(.eh_frame_hdr) 27 *(.eh_frame_entry) 28 } 29 .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } 30 31 . = ALIGN(16); 32 .data : 33 { 34 *(.data) 35 *(.data.*) 36 37 *(.data1) 38 *(.data1.*) 39 40 . = ALIGN(16); 41 _gp = ABSOLUTE(.); /* Base of small data */ 42 43 *(.sdata) 44 *(.sdata.*) 45 } 46 47 . = ALIGN(16); 48 .ctors : 49 { 50 PROVIDE(__ctors_start__ = .); 51 KEEP(*(SORT(.ctors.*))) 52 KEEP(*(.ctors)) 53 PROVIDE(__ctors_end__ = .); 54 } 55 56 .dtors : 57 { 58 PROVIDE(__dtors_start__ = .); 59 KEEP(*(SORT(.dtors.*))) 60 KEEP(*(.dtors)) 61 PROVIDE(__dtors_end__ = .); 62 } 63 64 . = ALIGN(16); 65 .nobss : { *(.nobss) } 66 67 . = ALIGN(16); 68 __bss_start__ = .; 69 __bss_start = .; 70 .bss : { *(.bss)} 71 . = ALIGN(16); 72 __bss_end = .; 73 __bss_end__ = .; 74 . = ALIGN(16); 75 76 /* Stabs debugging sections. */ 77 .stab 0 : { *(.stab) } 78 .stabstr 0 : { *(.stabstr) } 79 .stab.excl 0 : { *(.stab.excl) } 80 .stab.exclstr 0 : { *(.stab.exclstr) } 81 .stab.index 0 : { *(.stab.index) } 82 .stab.indexstr 0 : { *(.stab.indexstr) } 83 .comment 0 : { *(.comment) } 84 /* DWARF debug sections. 85 * Symbols in the DWARF debugging sections are relative to the beginning 86 * of the section so we begin them at 0. */ 87 /* DWARF 1 */ 88 .debug 0 : { *(.debug) } 89 .line 0 : { *(.line) } 90 /* GNU DWARF 1 extensions */ 91 .debug_srcinfo 0 : { *(.debug_srcinfo) } 92 .debug_sfnames 0 : { *(.debug_sfnames) } 93 /* DWARF 1.1 and DWARF 2 */ 94 .debug_aranges 0 : { *(.debug_aranges) } 95 .debug_pubnames 0 : { *(.debug_pubnames) } 96 /* DWARF 2 */ 97 .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } 98 .debug_abbrev 0 : { *(.debug_abbrev) } 99 .debug_line 0 : { *(.debug_line) } 100 .debug_frame 0 : { *(.debug_frame) } 101 .debug_str 0 : { *(.debug_str) } 102 .debug_loc 0 : { *(.debug_loc) } 103 .debug_macinfo 0 : { *(.debug_macinfo) } 104 /* SGI/MIPS DWARF 2 extensions */ 105 .debug_weaknames 0 : { *(.debug_weaknames) } 106 .debug_funcnames 0 : { *(.debug_funcnames) } 107 .debug_typenames 0 : { *(.debug_typenames) } 108 .debug_varnames 0 : { *(.debug_varnames) } 109 110 _end = .; 111} 112 113__bss_size = (__bss_end - __bss_start)>>3; 114