about summary refs log tree commit diff
path: root/src/signal/microblaze
diff options
context:
space:
mode:
Diffstat (limited to 'src/signal/microblaze')
-rw-r--r--src/signal/microblaze/restore.s11
-rw-r--r--src/signal/microblaze/sigsetjmp.s9
2 files changed, 20 insertions, 0 deletions
diff --git a/src/signal/microblaze/restore.s b/src/signal/microblaze/restore.s
new file mode 100644
index 00000000..fe4f5a09
--- /dev/null
+++ b/src/signal/microblaze/restore.s
@@ -0,0 +1,11 @@
+.global __restore
+.type __restore,@function
+__restore:
+	ori     r12, r0, 119
+	brki    r14, 0x8
+
+.global __restore_rt
+.type __restore_rt,@function
+__restore_rt:
+	ori     r12, r0, 173
+	brki    r14, 0x8
diff --git a/src/signal/microblaze/sigsetjmp.s b/src/signal/microblaze/sigsetjmp.s
new file mode 100644
index 00000000..3aca90dc
--- /dev/null
+++ b/src/signal/microblaze/sigsetjmp.s
@@ -0,0 +1,9 @@
+.global sigsetjmp
+.type sigsetjmp,@function
+sigsetjmp:
+	lwi     r11, r5, 72
+	beqi    r11, setjmp
+	addi    r7, r5, 76
+	add     r6, r0, r0
+	brid    sigprocmask
+	ori     r5, r0, 2