diff options
author | Bobby Bingham <koorogi@koorogi.info> | 2016-04-30 19:18:17 -0500 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2016-05-08 22:57:40 -0400 |
commit | c0ede9e4046a0882d83ae4b45c7dfac86fb7c15d (patch) | |
tree | 02956e3cc93a50bcc9c946fbc2bbffb883e72f2f /src/signal | |
parent | 6bc7d9c411c3a32cfa9d239b73fffb2ba66dd9ff (diff) | |
download | musl-c0ede9e4046a0882d83ae4b45c7dfac86fb7c15d.tar.gz musl-c0ede9e4046a0882d83ae4b45c7dfac86fb7c15d.tar.bz2 musl-c0ede9e4046a0882d83ae4b45c7dfac86fb7c15d.tar.xz musl-c0ede9e4046a0882d83ae4b45c7dfac86fb7c15d.zip |
add powerpc64 port
Diffstat (limited to 'src/signal')
-rw-r--r-- | src/signal/powerpc64/restore.s | 11 | ||||
-rw-r--r-- | src/signal/powerpc64/sigsetjmp.s | 30 |
2 files changed, 41 insertions, 0 deletions
diff --git a/src/signal/powerpc64/restore.s b/src/signal/powerpc64/restore.s new file mode 100644 index 00000000..4d41c27a --- /dev/null +++ b/src/signal/powerpc64/restore.s @@ -0,0 +1,11 @@ + .global __restore + .type __restore,%function +__restore: + li 0, 119 #__NR_sigreturn + sc + + .global __restore_rt + .type __restore_rt,%function +__restore_rt: + li 0, 172 # __NR_rt_sigreturn + sc diff --git a/src/signal/powerpc64/sigsetjmp.s b/src/signal/powerpc64/sigsetjmp.s new file mode 100644 index 00000000..52ac1d03 --- /dev/null +++ b/src/signal/powerpc64/sigsetjmp.s @@ -0,0 +1,30 @@ + .global sigsetjmp + .global __sigsetjmp + .type sigsetjmp,%function + .type __sigsetjmp,%function + .hidden ___setjmp +sigsetjmp: +__sigsetjmp: + addis 2, 12, .TOC.-__sigsetjmp@ha + addi 2, 2, .TOC.-__sigsetjmp@l + .localentry sigsetjmp,.-sigsetjmp + .localentry __sigsetjmp,.-__sigsetjmp + + cmpwi cr7, 4, 0 + beq- cr7, ___setjmp + + mflr 5 + std 5, 512(3) + std 16, 512+8+8(3) + mr 16, 3 + + bl ___setjmp + + mr 4, 3 + mr 3, 16 + ld 5, 512(3) + mtlr 5 + ld 16, 512+8+8(3) + +.hidden __sigsetjmp_tail + b __sigsetjmp_tail |