3 _kernel_base = 0x80000000;
4 _usertext_vbase = 0xFFFFE000;
14 .text : AT( ADDR(.text) - _kernel_base )
21 /* HACKS: User accesible .text section */
23 gUsertextPhysStart = . - _kernel_base;
25 .usertext : AT( gUsertextPhysStart )
29 . += gUsertextPhysStart + _kernel_base - _usertext_vbase;
31 /DISCARD/ : { *(.ARM.extab.init .ARM.exidx.init) }
32 .ARM.extab : AT( ADDR(.ARM.extab) - _kernel_base)
34 *(.ARM.extab* .gnu.linkonce.armextab.*)
36 PROVIDE_HIDDEN ( __exidx_start = . );
37 .ARM.exidx : AT( ADDR(.ARM.exidx) - _kernel_base)
39 *(.ARM.exidx* .gnu.linkonce.armexidx.*)
41 PROVIDE_HIDDEN ( __exidx_end = . );
42 .eh_frame_hdr : AT( ADDR(.eh_frame_hdr) - _kernel_base) {
45 .eh_frame : AT( ADDR(.eh_frame) - _kernel_base) ONLY_IF_RO
49 .gcc_except_table : AT( ADDR(.gcc_except_table) - _kernel_base) ONLY_IF_RO
51 *(.gcc_except_table .gcc_except_table.*)
54 /* 0x4000 (4 pages) alignment needed for root table */
56 .data : AT( ADDR(.data) - _kernel_base )
63 gKernelSymbolsEnd = .;
67 gKernelModulesEnd = .;
69 .bss ALIGN(0x1000) : AT( ADDR(.bss) - _kernel_base )