summaryrefslogtreecommitdiff
path: root/emu/NetBSD/asm-386.S
diff options
context:
space:
mode:
Diffstat (limited to 'emu/NetBSD/asm-386.S')
-rw-r--r--emu/NetBSD/asm-386.S50
1 files changed, 0 insertions, 50 deletions
diff --git a/emu/NetBSD/asm-386.S b/emu/NetBSD/asm-386.S
index d21c03bb..85ff3c6c 100644
--- a/emu/NetBSD/asm-386.S
+++ b/emu/NetBSD/asm-386.S
@@ -2,56 +2,6 @@
#include <sys/syscall.h>
/*
- * executeonnewstack(void *tos, void (*tramp)(void *arg), void *arg)
- */
-
- .type executeonnewstack,@function
- .global executeonnewstack
-executeonnewstack:
- pushl %ebp
- movl %esp, %ebp
- pushl %esi
-
- movl 8(%ebp), %esi /* get tos */
- subl $4, %esi
- movl 16(%ebp), %eax
- movl %eax, (%esi) /* stash arg on new stack */
- subl $4, %esi
- movl 12(%ebp), %eax
- movl %eax, (%esi) /* stash tramp on new stack */
- mov %esi, %esp /* swap stacks pronto */
- popl %eax /* recover the tramp address */
- call *%eax /* and jump to it (ho ho) */
-
- /* if we return here, tramp didn't do its job */
-
- addl $8, %esp /* clean up for pose value */
-
- leal SYS_exit, %eax
- int $0x80
-
-/*
- * unlockandexit(int *key)
- *
- * NB: the return status may be rubbish if the stack is reused
- * between the unlock and the system call, but this should
- * not matter since no task is waiting for the result
- */
-
- .type unlockandexit,@function
- .global unlockandexit
-unlockandexit:
- pushl %ebp
- movl %esp, %ebp
-
- movl 8(%ebp), %esi /* get the key address */
- pushl $0 /* exit status 0 */
- movl $0, %eax /* unlock the stack allocator */
- movl %eax, (%esi)
- leal SYS_exit, %eax /* call exit */
- int $0x80
-
-/*
* umult(ulong m1, ulong m2, ulong *hi)
*/