diff options
author | Valery Ushakov <uwe@stderr.spb.ru> | 2019-03-10 03:50:28 +0200 |
---|---|---|
committer | Valery Ushakov <uwe@stderr.spb.ru> | 2019-03-10 03:50:28 +0200 |
commit | 38be2998da00e556061c5eee4851b5e714d9100b (patch) | |
tree | c27b2e0af28ccd99e663494efa93915b8a87604b | |
parent | 594bd56378a3a707845dd8813881c427a3a8d16e (diff) |
G/c executeonnewstack and unlockandexit.
-rw-r--r-- | emu/NetBSD/asm-power.S | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/emu/NetBSD/asm-power.S b/emu/NetBSD/asm-power.S index da40e825..32418e01 100644 --- a/emu/NetBSD/asm-power.S +++ b/emu/NetBSD/asm-power.S @@ -58,34 +58,3 @@ ENTRY_NOPROFILE(_tas) sync blr END(_tas) - -/* - * void - * executeonnewstack(void *tos, void (*tramp)(void *arg), void *arg) - */ -ENTRY_NOPROFILE(executeonnewstack) - mr %r1,%r3 /* change stacks */ - stwu %lr,-16(%r1) /* save lr to aid the traceback */ - li %r0,0 - stw %r0,20(%r1) - mr %r3,%r5 - mtctr %r4 - bctrl /* tramp(arg) */ - br - END(executeonnewstack) - -/* - * void unlockandexit(int *key) - * - * NB: the return status may be garbaged 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 - */ -ENTRY_NOPROFILE(unlockandexit) - li %r0,0x0 - stw %r0,0(%r3) /* unlock */ - li %r0,1 /* sys exit; 234 is exit group */ - li %r3,0 /* exit status */ - sc - br - END(unlockandexit) |