summaryrefslogtreecommitdiff
path: root/kernel/start.S
blob: dce0faa5d6d381f30213eb7d781e9bab597fe573 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
.section .text._start
.global _start
.type _start, @function

_start:
    csrw mstatus, zero
    csrw mie, zero
    
    la sp, __stack_top
    
    la t0, __bss_start
    la t1, __bss_end
    beq t0, t1, 2f
1:
    sw zero, 0(t0)
    addi t0, t0, 4
    bltu t0, t1, 1b
2:
    call kernel_main
    j .