Page MenuHomeFreeBSD

D22658.diff
No OneTemporary

D22658.diff

Index: head/lib/libc/riscv/gen/setjmp.S
===================================================================
--- head/lib/libc/riscv/gen/setjmp.S
+++ head/lib/libc/riscv/gen/setjmp.S
@@ -46,7 +46,7 @@
addi a2, a0, (_JB_SIGMASK * 8) /* oset */
li a1, 0 /* set */
li a0, 1 /* SIG_BLOCK */
- jal sigprocmask
+ call _C_LABEL(sigprocmask)
ld a0, 0(sp)
ld ra, 8(sp)
@@ -109,7 +109,7 @@
li a2, 0 /* oset */
addi a1, a0, (_JB_SIGMASK * 8) /* set */
li a0, 3 /* SIG_BLOCK */
- jal sigprocmask
+ call _C_LABEL(sigprocmask)
ld a1, (2 * 8)(sp)
ld ra, (1 * 8)(sp)
Index: head/lib/libc/riscv/gen/sigsetjmp.S
===================================================================
--- head/lib/libc/riscv/gen/sigsetjmp.S
+++ head/lib/libc/riscv/gen/sigsetjmp.S
@@ -38,8 +38,10 @@
#include <machine/setjmp.h>
ENTRY(sigsetjmp)
- beqz a1, _C_LABEL(_setjmp)
- j _C_LABEL(setjmp)
+ beqz a1, 1f
+ tail _C_LABEL(setjmp)
+1:
+ tail _C_LABEL(_setjmp)
END(sigsetjmp)
ENTRY(siglongjmp)
@@ -48,8 +50,10 @@
ld a3, 0(a0)
/* Check the magic */
- beq a2, a3, _C_LABEL(_longjmp)
- j _C_LABEL(longjmp)
+ beq a2, a3, 1f
+ tail _C_LABEL(longjmp)
+1:
+ tail _C_LABEL(_longjmp)
.align 3
.Lmagic:

File Metadata

Mime Type
text/plain
Expires
Tue, Nov 26, 1:28 AM (8 h, 33 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14851702
Default Alt Text
D22658.diff (1 KB)

Event Timeline