From 3a3c813e08d808224c12fd0e9104aeff7c45c9a7 Mon Sep 17 00:00:00 2001 From: Bobby Bingham Date: Sat, 5 Oct 2013 05:13:18 -0500 Subject: superh port --- src/signal/superh/restore.s | 24 ++++++++++++++++++++++++ src/signal/superh/sigsetjmp.s | 27 +++++++++++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 src/signal/superh/restore.s create mode 100644 src/signal/superh/sigsetjmp.s (limited to 'src/signal') diff --git a/src/signal/superh/restore.s b/src/signal/superh/restore.s new file mode 100644 index 00000000..ab26034b --- /dev/null +++ b/src/signal/superh/restore.s @@ -0,0 +1,24 @@ +.global __restore +.type __restore, @function +__restore: + mov #119, r3 !__NR_sigreturn + trapa #16 + + or r0, r0 + or r0, r0 + or r0, r0 + or r0, r0 + or r0, r0 + +.global __restore_rt +.type __restore_rt, @function +__restore_rt: + mov #100, r3 !__NR_rt_sigreturn + add #73, r3 + trapa #16 + + or r0, r0 + or r0, r0 + or r0, r0 + or r0, r0 + or r0, r0 diff --git a/src/signal/superh/sigsetjmp.s b/src/signal/superh/sigsetjmp.s new file mode 100644 index 00000000..f6cae801 --- /dev/null +++ b/src/signal/superh/sigsetjmp.s @@ -0,0 +1,27 @@ +.global sigsetjmp +.type sigsetjmp, @function +sigsetjmp: + mov.l r5, @(36,r4) + tst r5, r5 + bf 2f + + sts.l pr, @-r15 + mov.l r4, @-r15 + mov r4, r6 + add #40, r6 + mov #0, r5 + mov #2, r4 + mov.l L1, r0 + bsrf r0 + nop +1: mov.l @r15+, r4 + lds.l @r15+, pr + +2: mov.l L2, r0 + braf r0 + nop +3: + +.align 2 +L1: .long pthread_sigmask@PLT-(1b-.) +L2: .long setjmp@PLT-(3b-.) -- cgit v1.2.1