(__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. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or 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. */ /* We define errno here, to be consistent with Linux/i386. */
.bss .bss
.globl errno .globl errno
.type errno,@object .type errno,%object
.size errno,4 .size errno,4
errno: .zero 4 errno: .zero 4
.globl _errno .globl _errno
.type _errno,@object .type _errno,%object
_errno = errno /* This name is expected by hj's libc.so.5 startup code. */ _errno = errno /* This name is expected by hj's libc.so.5 startup code. */
.text .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 syscall stubs jump here when they detect an error.
The code for Linux is almost identical to the canonical Unix/i386 The code for Linux is almost identical to the canonical Unix
code, except that the error number in %eax is negated. */ code, except that the error number in R0 is negated. */
#undef CALL_MCOUNT #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) ENTRY (__syscall_error)
mvn r0, r0 rsb r0, r0, $0
#define __syscall_error __syscall_error_1 #define __syscall_error __syscall_error_1
#include <sysdeps/unix/arm/sysdep.S> #include <sysdeps/unix/arm/sysdep.S>
#endif /* !PIC */