diff options
author | Per Fogelstrom <pefo@cvs.openbsd.org> | 1997-09-27 16:05:25 +0000 |
---|---|---|
committer | Per Fogelstrom <pefo@cvs.openbsd.org> | 1997-09-27 16:05:25 +0000 |
commit | 2645c8d2806bf3131a33a8561c0fb4c80c64b463 (patch) | |
tree | 13f092465c0d96cb17ae6d407d5ea7bd10970aae | |
parent | 5ed0d6624cc3b28b51c6810092e51ff3adc88345 (diff) |
Amazing how much confusion and how much tracing a simple 4 instead of a 3
can cause!! Returned sigmask value was taken from wrong register... So no
more zombies!!!
-rw-r--r-- | lib/libc/arch/powerpc/sys/sigprocmask.S | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/libc/arch/powerpc/sys/sigprocmask.S b/lib/libc/arch/powerpc/sys/sigprocmask.S index e8b250ed4ad..dd343ddb8f9 100644 --- a/lib/libc/arch/powerpc/sys/sigprocmask.S +++ b/lib/libc/arch/powerpc/sys/sigprocmask.S @@ -4,6 +4,8 @@ .text PREFIX(sigprocmask) + stwu 1, -16(1) + stw 5, 12(1) /* check set (new mask value) for null, in which case fiddle arguments */ @@ -23,8 +25,10 @@ do_call: b cerror sigprocmask_ok: + lwz 5, 12(1) cmpwi 5, 0 beq+ sigprocmask_done - stw 4, 0(5) + stw 3, 0(5) sigprocmask_done: + addi 1, 1, 16 blr |