diff options
Diffstat (limited to 'examples/api')
-rw-r--r-- | examples/api/crt0.S | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/examples/api/crt0.S b/examples/api/crt0.S index f1b88ed8a3d..d2a97557817 100644 --- a/examples/api/crt0.S +++ b/examples/api/crt0.S @@ -80,6 +80,38 @@ syscall: return_addr: .align 8 .long 0 +#elif defined(CONFIG_ARCH_RV32I) + + .text + .globl _start +_start: + la t0, search_hint + sw sp, 0(t0) + la t0, main + jalr x0, t0 + + .globl syscall +syscall: + la t0, syscall_ptr + lw t0, 0(t0) + jalr x0, t0 + +#elif defined(CONFIG_ARCH_RV64I) + + .text + .globl _start +_start: + la t0, search_hint + sd sp, 0(t0) + la t0, main + jalr x0, t0 + + .globl syscall +syscall: + la t0, syscall_ptr + ld t0, 0(t0) + jalr x0, t0 + #else #error No support for this arch! #endif |