limine/common/menu_thunk.asm_riscv64
xvanc 9274ee656e
Initial riscv64 port (#274)
* initial riscv64 port

* enable Paging Mode feature for all architectures

* riscv: add missing protocol docs

* riscv: fix tests

* docs: clarify `LIMINE_PAGING_MODE_DEFAULT` macro

* build: fix whitespace in common/GNUmakefile

* riscv: default to Sv48 paging when supported

* vmm: make `VMM_MAX_LEVEL` 1-indexed

* limine: do not call `reported_addr()` before finaling paging mode

smp/riscv: do not overwrite the argument passed to APs

* limine/riscv: update default paging mode in limine.h

* test/riscv: pad OVMF.fd when downloading it
2023-06-04 01:36:06 +02:00

22 lines
346 B
Plaintext

.section .data
.p2align 3
stack_at_first_entry:
.8byte 0
.section .text
.global menu
.extern _menu
menu:
lla t0, stack_at_first_entry
ld t1, (t0)
beqz t1, 1f
mv sp, t1
j 2f
1: sd sp, (t0)
2: mv fp, zero
mv ra, zero
j _menu