diff options
Diffstat (limited to 'lib/arch/arm/thread_create.s')
-rw-r--r-- | lib/arch/arm/thread_create.s | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/arch/arm/thread_create.s b/lib/arch/arm/thread_create.s new file mode 100644 index 0000000..7231c3e --- /dev/null +++ b/lib/arch/arm/thread_create.s @@ -0,0 +1,20 @@ +# Copyright (c) 2021 Johannes Stoelp + + .arch armv7-a + .section .text, "ax", %progbits + + # extern "C" void thread_create(); + .global thread_create + .type thread_create, %function +thread_create: + .cfi_startproc + ldr r0, [sp, #0x4] + ldr r1, [sp] + + blx r1 + + # FIXME: no return from thread after user fn finished. +1: + b 1b + .cfi_endproc + .size thread_create, .-thread_create |