aboutsummaryrefslogtreecommitdiff
path: root/src/libthread/Darwin-386.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libthread/Darwin-386.c')
-rw-r--r--src/libthread/Darwin-386.c30
1 files changed, 0 insertions, 30 deletions
diff --git a/src/libthread/Darwin-386.c b/src/libthread/Darwin-386.c
deleted file mode 100644
index b138e420..00000000
--- a/src/libthread/Darwin-386.c
+++ /dev/null
@@ -1,30 +0,0 @@
-#include "threadimpl.h"
-
-void
-makecontext(ucontext_t *ucp, void (*func)(void), int argc, ...)
-{
- int *sp;
-
- sp = (int*)ucp->uc_stack.ss_sp+ucp->uc_stack.ss_size/4;
- sp -= argc;
- /*
- * Stack pointer at call instruction (before return address
- * gets pushed) must be 16-byte aligned.
- */
- if((uintptr)sp%4)
- abort();
- while((uintptr)sp%16)
- sp--;
- memmove(sp, &argc+1, argc*sizeof(int));
- *--sp = 0; /* return address */
- ucp->uc_mcontext.mc_eip = (long)func;
- ucp->uc_mcontext.mc_esp = (int)sp;
-}
-
-int
-swapcontext(ucontext_t *oucp, ucontext_t *ucp)
-{
- if(getcontext(oucp) == 0)
- setcontext(ucp);
- return 0;
-}