aboutsummaryrefslogtreecommitdiff
path: root/boot/sigvec.S
diff options
context:
space:
mode:
Diffstat (limited to 'boot/sigvec.S')
-rw-r--r--boot/sigvec.S23
1 files changed, 23 insertions, 0 deletions
diff --git a/boot/sigvec.S b/boot/sigvec.S
new file mode 100644
index 00000000..cc7bb94e
--- /dev/null
+++ b/boot/sigvec.S
@@ -0,0 +1,23 @@
+#include <i386/asm.h>
+
+.text
+ENTRY(sigreturn)
+ movl $0x67,%eax
+ lcall $0x7,$0x0
+ jb error
+ ret
+ENTRY(_sigreturn)
+ addl $0xc,%esp
+ call EXT(sigreturn)
+ ret
+ENTRY(sigvec)
+ movl $0x6c,%eax
+ movl $EXT(_sigreturn),%edx
+ orl $0x80000000,%edx
+ lcall $0x7,$0x0
+ jb error
+ ret
+error:
+ movl %eax,EXT(errno)
+ movl $-1,%eax
+ ret