Added new macros:
SYSCALL_NOERROR(x): Like SYSCALL except that "x" is a syscall that can never fail. RSYSCALL_NOERROR(x): Like RSYSCALL except that "x" is a syscall that can never fail. These macros simply call SYSCALL / RSYSCALL, and serve as placeholders until an optimized implementation is done.
This commit is contained in:
parent
cb9edbe5f6
commit
41da409893
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: SYS.h,v 1.5 1996/09/17 01:32:22 jonathan Exp $ */
|
||||
/* $NetBSD: SYS.h,v 1.6 1996/10/19 00:25:22 jtc Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1991, 1993
|
||||
|
@ -78,3 +78,22 @@
|
|||
bne a3,zero,err; j ra; err: j _C_LABEL(cerror); END(x);
|
||||
#endif /* !ABICALLS */
|
||||
#endif /* traditional C */
|
||||
|
||||
/*
|
||||
* SYSCALL_NOERROR is like SYSCALL, except it's used for syscalls
|
||||
* that never fail.
|
||||
*
|
||||
* XXX - This should be optimized.
|
||||
*/
|
||||
#define SYSCALL_NOERROR(x) \
|
||||
SYSCALL(x)
|
||||
|
||||
/*
|
||||
* RSYSCALL_NOERROR is like RSYSCALL, except it's used for syscalls
|
||||
* that never fail.
|
||||
*
|
||||
* XXX - This should be optimized.
|
||||
*/
|
||||
#define SYSCALL_NOERROR(x) \
|
||||
#define RSYSCALL_NOERROR(x) \
|
||||
RSYSCALL(x)
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
* @(#)SYS.h 8.1 (Berkeley) 6/4/93
|
||||
*
|
||||
* from: Header: SYS.h,v 1.2 92/07/03 18:57:00 torek Exp
|
||||
* $Id: SYS.h,v 1.3 1994/02/10 20:15:31 pk Exp $
|
||||
* $Id: SYS.h,v 1.4 1996/10/19 00:28:31 jtc Exp $
|
||||
*/
|
||||
|
||||
#include <machine/asm.h>
|
||||
|
@ -87,4 +87,23 @@
|
|||
ENTRY(x); mov (_CAT(SYS_,y))|SYSCALL_G2RFLAG,%g1; add %o7,8,%g2; \
|
||||
t ST_SYSCALL; ERROR()
|
||||
|
||||
/*
|
||||
* SYSCALL_NOERROR is like SYSCALL, except it's used for syscalls
|
||||
* that never fail.
|
||||
*
|
||||
* XXX - This should be optimized.
|
||||
*/
|
||||
#define SYSCALL_NOERROR(x) \
|
||||
SYSCALL(x)
|
||||
|
||||
/*
|
||||
* RSYSCALL_NOERROR is like RSYSCALL, except it's used for syscalls
|
||||
* that never fail.
|
||||
*
|
||||
* XXX - This should be optimized.
|
||||
*/
|
||||
#define SYSCALL_NOERROR(x) \
|
||||
#define RSYSCALL_NOERROR(x) \
|
||||
RSYSCALL(x)
|
||||
|
||||
.globl cerror
|
||||
|
|
Loading…
Reference in New Issue