9 .text : AT(ADDR(.text) - 0xbff00000) ALIGN(4K) {
11 kernel/entry.o (.text)
15 .rodata : AT(ADDR(.rodata) - 0xbff00000) ALIGN(4K) {
21 /* .rodata is put after .text so that the read-only entry in the program
22 * header covers .rodata as well. When .rodata is after .data, that entry
23 * only covers .text, leaving .rodata in the writable program header
24 * entry. The problem with this approach is that the program header
25 * entry where .text and .rodata are is marked as executable, which
26 * would mean that .rodata should be executable too, but that doesn't
27 * matter yet because we (currently) assume that the NX bit is not
28 * supported anyway. */
30 .data : AT(ADDR(.data) - 0xbff00000) ALIGN(4K) {
35 .bss : AT(ADDR(.bss) - 0xbff00000) ALIGN(4K) {
38 /* Reserving 16KiB for the stack. A __STACK_TOP__ is not really