mirror of
https://sourceware.org/git/glibc.git
synced 2025-12-12 14:21:30 +03:00
Mon Jun 10 17:50:31 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/alpha/sysdep.S: Renamed from sysdeps/unix/sysv/linux/alpha/sysdep.S. This file works for OSF/1 as well. * sysdeps/unix/bsd/osf/alpha/sysdep.S: Remove (note that the EWOULDBLOCK -> EAGAIN mapping was unnecessary since EWOULDBLOCK==EAGAIN under DEC Unix and Linux/Alpha).
This commit is contained in:
@@ -20,21 +20,20 @@ Cambridge, MA 02139, USA. */
|
|||||||
#define _ERRNO_H
|
#define _ERRNO_H
|
||||||
#include <errnos.h>
|
#include <errnos.h>
|
||||||
|
|
||||||
ENTRY(syscall_error)
|
.comm errno, 4
|
||||||
#ifdef EWOULDBLOCK_sys
|
#ifdef __ELF__
|
||||||
/* We translate the system's EWOULDBLOCK error into EAGAIN.
|
.type errno, @object
|
||||||
The GNU C library always defines EWOULDBLOCK==EAGAIN.
|
|
||||||
EWOULDBLOCK_sys is the original number. */
|
|
||||||
subq v0, EWOULDBLOCK_sys, t0
|
|
||||||
cmoveq t0, EAGAIN, v0
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Store it in errno... */
|
LEAF(__syscall_error, 0)
|
||||||
! ldgp gp, 0(t12)
|
.prologue 1
|
||||||
stl v0, errno
|
|
||||||
|
/* Store return value in errno... */
|
||||||
|
ldgp gp, 0(t12)
|
||||||
|
stl v0, errno
|
||||||
|
|
||||||
/* And just kick back a -1. */
|
/* And just kick back a -1. */
|
||||||
ldil v0, -1
|
ldi v0, -1
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.end syscall_error
|
END(__syscall_error)
|
||||||
Reference in New Issue
Block a user