|
|
1.1 root 1: /*-
2: * Copyright (c) 1990 The Regents of the University of California.
3: * All rights reserved.
4: *
5: * This code is derived from software contributed to Berkeley by
6: * the Systems Programming Group of the University of Utah Computer
7: * Science Department.
8: *
9: * Redistribution and use in source and binary forms are permitted provided
10: * that: (1) source distributions retain this entire copyright notice and
11: * comment, and (2) distributions including binaries display the following
12: * acknowledgement: ``This product includes software developed by the
13: * University of California, Berkeley and its contributors'' in the
14: * documentation or other materials provided with the distribution and in
15: * all advertising materials mentioning features or use of this software.
16: * Neither the name of the University nor the names of its contributors may
17: * be used to endorse or promote products derived from this software without
18: * specific prior written permission.
19: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
20: * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
21: * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
22: */
23:
24: #if defined(LIBC_SCCS) && !defined(lint)
25: .asciz "@(#)sigprocmask.s 5.2 (Berkeley) 6/6/90"
26: #endif /* LIBC_SCCS and not lint */
27:
28: #include "SYS.h"
29:
30: .even
31: err:
32: jmp cerror
33:
34: ENTRY(sigprocmask)
35: tstl sp@(8) /* check new sigset pointer */
36: jne gotptr /* if not null, indirect */
37: /* movl #0,sp@(8) /* null mask pointer: block empty set */
38: movl #1,sp@(4) /* SIG_BLOCK */
39: jra doit
40: gotptr:
41: movl sp@(8),a0
42: movl a0@,sp@(8) /* indirect to new mask arg */
43: doit:
44: movl #SYS_sigprocmask,d0
45: trap #0
46: jcs err
47: tstl sp@(12) /* test if old mask requested */
48: jeq out
49: movl sp@(12),a0
50: movl d0,a0@ /* store old mask */
51: out:
52: clrl d0
53: rts
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.