OUTPUT("elf64-littleriscv") ENTRY(_start) SECTIONS { . = 0x80000000; PROVIDE(kernel_start = .); .text : { *(.text.start) *(.text .text.*) } . = ALIGN(0x1000); PROVIDE(kernel_rx_end = .); .rodata : { *(.srodata .srodata.*) . = ALIGN(16); *(.rodata .rodata.*) } . = ALIGN(0x1000); PROVIDE(kernel_ro_end = .); .data : { *(.sdata .sdata.*) . = ALIGN(16); *(.data .data.*) . = ALIGN(16); } .bss : { *(.sbss .sbss.*) . = ALIGN(16); *(.bss .bss.*) } . = ALIGN(0x1000); PROVIDE(kernel_rw_end = .); .trampoline_page : { PROVIDE(trampoline_start = .); *(.trampoline_page) . = trampoline_start + 0x1000; } . = ALIGN(0x1000); .hart0_initial_stack : { PROVIDE(hart0_initial_stack = .); . += 0x1000; PROVIDE(hart0_initial_stack_top = .); } PROVIDE(kernel_end = .); }