[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [PATCH 21/40] arm64: implement the arm_start_thread
On 03/11/17 03:11, Huang Shijie wrote: This patch implements the arm_start_thread which is called when a thread is executed at the first time. Change-Id: I18dac6cbdc9771248bc27ee437313dd8dfb04765 Jira: ENTOS-247 Signed-off-by: Huang Shijie <shijie.huang@xxxxxxx> --- arch/arm/arm64/arm64.S | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/arm/arm64/arm64.S b/arch/arm/arm64/arm64.S index 6dab875..f63a1be 100644 --- a/arch/arm/arm64/arm64.S +++ b/arch/arm/arm64/arm64.S @@ -520,3 +520,15 @@ ENTRY(__arch_switch_threads) mov sp, x4 ret ENDPROC(__arch_switch_threads) + +/* + * => sp = thread->sp + * <= x0 -> user data + * x1 -> thread's main function + */ +ENTRY(arm_start_thread) + add x2, sp, #(CALLEE_SAVED_REGISTERS * 8) + ldp x0, x1, [x2] Can you please document what the 2 instructions above are doing? A define would also be very helpful. + ldr x30, =exit_thread + blr x1 +ENDPROC(arm_start_thread) -- Julien Grall _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/cgi-bin/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |