.section .text.entry .global _start _start: # load stack_top to sp register la sp, stack_top # The BSS section is expected to be zero la a0, _bss_start la a1, _bss_end bgeu a0, a1, 2f 1: sd zero, (a0) addi a0, a0, 8 bltu a0, a1, 1b 2: call _kernel_start .section .bss.stack .global stack stack: # alloc stack memory .space 4096 * 16 .global stack_top stack_top: .section .bss.heap .global _initial_kernel_heap_start _initial_kernel_heap_start: # alloc initial kmalloc memory .space 4096 * 64 .global _initial_kernel_heap_end _initial_kernel_heap_end: