(__syscall_error): Same for PIC and non-PIC now. Correctly negate

error number.
(errno): Use `%' not `@' in .type directives.
This commit is contained in:
Ulrich Drepper 1998-04-03 12:06:51 +00:00
parent 24e022cf82
commit 80509c667f

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -21,31 +21,23 @@
/* We define errno here, to be consistent with Linux/i386. */
.bss
.globl errno
.type errno,@object
.type errno,%object
.size errno,4
errno: .zero 4
.globl _errno
.type _errno,@object
.type _errno,%object
_errno = errno /* This name is expected by hj's libc.so.5 startup code. */
.text
/* The following code is only used in the shared library when we
compile the reentrant version. Otherwise each system call defines
each own version. */
#ifndef PIC
/* The syscall stubs jump here when they detect an error.
The code for Linux is almost identical to the canonical Unix/i386
code, except that the error number in %eax is negated. */
The code for Linux is almost identical to the canonical Unix
code, except that the error number in R0 is negated. */
#undef CALL_MCOUNT
#define CALL_MCOUNT /* Don't insert the profiling call, it clobbers %eax. */
#define CALL_MCOUNT /* Don't insert the profiling call, it clobbers R0. */
ENTRY (__syscall_error)
mvn r0, r0
rsb r0, r0, $0
#define __syscall_error __syscall_error_1
#include <sysdeps/unix/arm/sysdep.S>
#endif /* !PIC */