1 /* $NetBSD: compat_sigprocmask13.S,v 1.2 2011/01/15 07:31:13 matt Exp $ */
7 __RCSID("$NetBSD: compat_sigprocmask13.S,v 1.2 2011/01/15 07:31:13 matt Exp $")
10 WARN_REFERENCES(sigprocmask, \
11 "warning: reference to compatibility sigprocmask(); include <signal.h> for correct reference")
14 * sigprocmask(int how, sigset_t *set, sigset_t *oset)
17 or. %r4,%r4,%r4 # set == NULL?
20 lwz %r4,0(%r4) # if not, replace it in r4 with *set
23 mr %r3,%r6 # ... using sigprocmask(SIG_BLOCK)
24 _DOSYSCALL(compat_13_sigprocmask13)
26 or. %r5,%r5,%r5 # check to see of oset requested
27 beq 2f # if oset != NULL,
28 stw %r3,0(%r5) # *oset = oldmask
31 blr # in any case, return 0