diff options
Diffstat (limited to 'libc-top-half/musl/src/signal/powerpc')
-rw-r--r-- | libc-top-half/musl/src/signal/powerpc/restore.s | 13 | ||||
-rw-r--r-- | libc-top-half/musl/src/signal/powerpc/sigsetjmp.s | 27 |
2 files changed, 40 insertions, 0 deletions
diff --git a/libc-top-half/musl/src/signal/powerpc/restore.s b/libc-top-half/musl/src/signal/powerpc/restore.s new file mode 100644 index 0000000..29c8afd --- /dev/null +++ b/libc-top-half/musl/src/signal/powerpc/restore.s @@ -0,0 +1,13 @@ + .global __restore + .hidden __restore + .type __restore,%function +__restore: + li 0, 119 #__NR_sigreturn + sc + + .global __restore_rt + .hidden __restore_rt + .type __restore_rt,%function +__restore_rt: + li 0, 172 # __NR_rt_sigreturn + sc diff --git a/libc-top-half/musl/src/signal/powerpc/sigsetjmp.s b/libc-top-half/musl/src/signal/powerpc/sigsetjmp.s new file mode 100644 index 0000000..152c3fe --- /dev/null +++ b/libc-top-half/musl/src/signal/powerpc/sigsetjmp.s @@ -0,0 +1,27 @@ + .global sigsetjmp + .global __sigsetjmp + .type sigsetjmp,%function + .type __sigsetjmp,%function +sigsetjmp: +__sigsetjmp: + cmpwi cr7, 4, 0 + beq- cr7, 1f + + mflr 5 + stw 5, 448(3) + stw 16, 448+4+8(3) + mr 16, 3 + +.hidden ___setjmp + bl ___setjmp + + mr 4, 3 + mr 3, 16 + lwz 5, 448(3) + mtlr 5 + lwz 16, 448+4+8(3) + +.hidden __sigsetjmp_tail + b __sigsetjmp_tail + +1: b ___setjmp |