Annotation of 43BSDTahoe/lib/libc/tahoe/sys/wait3.s, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 1983 Regents of the University of California.
                      3:  * All rights reserved.
                      4:  *
                      5:  * Redistribution and use in source and binary forms are permitted
                      6:  * provided that the above copyright notice and this paragraph are
                      7:  * duplicated in all such forms and that any documentation,
                      8:  * advertising materials, and other materials related to such
                      9:  * distribution and use acknowledge that the software was developed
                     10:  * by the University of California, Berkeley.  The name of the
                     11:  * University may not be used to endorse or promote products derived
                     12:  * from this software without specific prior written permission.
                     13:  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
                     14:  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
                     15:  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
                     16:  */
                     17: 
                     18: #if defined(SYSLIBC_SCCS) && !defined(lint)
                     19:        .asciz "@(#)wait3.s     5.3 (Berkeley) 6/27/88"
                     20: #endif /* SYSLIBC_SCCS and not lint */
                     21: 
                     22: /*
                     23:  * C library -- wait3
                     24:  *
                     25:  * pid = wait3(&status, flags, &rusage);
                     26:  *
                     27:  * pid == -1 if error
                     28:  * status indicates fate of process, if given
                     29:  * flags may indicate process is not to hang or
                     30:  * that untraced stopped children are to be reported.
                     31:  * rusage optionally returns detailed resource usage information
                     32:  */
                     33: #include "SYS.h"
                     34: 
                     35: #define        SYS_wait3       SYS_wait
                     36: 
                     37: ENTRY(wait3)
                     38:        movl    8(fp),r0        /* make it easy for system to get */
                     39:        movl    12(fp),r1       /* these extra arguments */
                     40:        bispsw  $0xf            /* flags wait3() (N,Z,V,C)*/
                     41:        kcall   $SYS_wait3
                     42:        bcc     noerror
                     43:        movl    r0,_errno
                     44:        mnegl   $1,r0
                     45:        ret
                     46: noerror:
                     47:        tstl    4(fp)           /* status desired? */
                     48:        beql    nostatus        /* no */
                     49:        movl    r1,*4(fp)       /* store child's status */
                     50: nostatus:
                     51:        ret

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.