mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-23 05:20:06 +00:00
Formerly unix/bsd/m68k/sysdep.S.~3~
This commit is contained in:
parent
0e28fe44c7
commit
635f87a43a
@ -16,13 +16,28 @@ License along with the GNU C Library; see the file COPYING.LIB. If
|
||||
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
|
||||
Cambridge, MA 02139, USA. */
|
||||
|
||||
#include <errnos.h>
|
||||
|
||||
.globl syscall_error
|
||||
syscall_error:
|
||||
/* We translate the system's EWOULDBLOCK error into EAGAIN.
|
||||
The GNU C library always defines EWOULDBLOCK==EAGAIN.
|
||||
EWOULDBLOCK_sys is the original number. */
|
||||
#ifdef __motorola__
|
||||
move.l d0, _errno
|
||||
#ifdef EWOULDBLOCK_sys
|
||||
cmp.l d0, #EWOULDBLOCK_sys
|
||||
bne store
|
||||
moveq.l #EAGAIN, d0
|
||||
#endif
|
||||
store: move.l d0, _errno
|
||||
moveq.l #-1, d0
|
||||
#else
|
||||
movel d0, _errno
|
||||
#ifdef EWOULDBLOCK_sys
|
||||
cmpl d0, #EWOULDBLOCK_sys
|
||||
bne 0f
|
||||
moveq #EAGAIN, d0
|
||||
#endif
|
||||
0: movel d0, _errno
|
||||
moveq #-1, d0
|
||||
#endif
|
||||
rts
|
||||
|
Loading…
Reference in New Issue
Block a user