From 3a9012016fe24042e341ffc027ff28491efed307 Mon Sep 17 00:00:00 2001 From: Hubert Badocha Date: Wed, 11 Sep 2024 14:15:52 +0200 Subject: [PATCH] arch/riscv64: respect PIC in asm JIRA: RTOS-664 --- arch/riscv64/jmp.S | 8 ++++++++ arch/riscv64/syscalls.S | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/arch/riscv64/jmp.S b/arch/riscv64/jmp.S index 1537a4eb..b2b96cfb 100644 --- a/arch/riscv64/jmp.S +++ b/arch/riscv64/jmp.S @@ -30,7 +30,11 @@ .type _setjmp, %function _setjmp: mv a1, zero +#if __pic__ == 0 j sigsetjmp +#else + tail sigsetjmp +#endif .size _setjmp, .-_setjmp @@ -38,7 +42,11 @@ _setjmp: .type setjmp, %function setjmp: li a1, 1 +#if __pic__ == 0 j sigsetjmp +#else + tail sigsetjmp +#endif .size setjmp, .-setjmp diff --git a/arch/riscv64/syscalls.S b/arch/riscv64/syscalls.S index c518695e..99a5c621 100644 --- a/arch/riscv64/syscalls.S +++ b/arch/riscv64/syscalls.S @@ -54,7 +54,11 @@ sym: \ .globl vfork; .type vfork, %function; vfork: +#if __pic__ == 0 j vforksvc +#else + tail vforksvc +#endif .size vfork, .-vfork