diff options
Diffstat (limited to 'libc-top-half/musl/src/signal/arm')
-rw-r--r-- | libc-top-half/musl/src/signal/arm/restore.s | 15 | ||||
-rw-r--r-- | libc-top-half/musl/src/signal/arm/sigsetjmp.s | 24 |
2 files changed, 39 insertions, 0 deletions
diff --git a/libc-top-half/musl/src/signal/arm/restore.s b/libc-top-half/musl/src/signal/arm/restore.s new file mode 100644 index 0000000..fb086d9 --- /dev/null +++ b/libc-top-half/musl/src/signal/arm/restore.s @@ -0,0 +1,15 @@ +.syntax unified + +.global __restore +.hidden __restore +.type __restore,%function +__restore: + mov r7,#119 + swi 0x0 + +.global __restore_rt +.hidden __restore_rt +.type __restore_rt,%function +__restore_rt: + mov r7,#173 + swi 0x0 diff --git a/libc-top-half/musl/src/signal/arm/sigsetjmp.s b/libc-top-half/musl/src/signal/arm/sigsetjmp.s new file mode 100644 index 0000000..69ebbf4 --- /dev/null +++ b/libc-top-half/musl/src/signal/arm/sigsetjmp.s @@ -0,0 +1,24 @@ +.syntax unified +.global sigsetjmp +.global __sigsetjmp +.type sigsetjmp,%function +.type __sigsetjmp,%function +sigsetjmp: +__sigsetjmp: + tst r1,r1 + bne 1f + b setjmp + +1: str lr,[r0,#256] + str r4,[r0,#260+8] + mov r4,r0 + + bl setjmp + + mov r1,r0 + mov r0,r4 + ldr lr,[r0,#256] + ldr r4,[r0,#260+8] + +.hidden __sigsetjmp_tail + b __sigsetjmp_tail |