mirror of
git://sourceware.org/git/glibc.git
synced 2024-12-27 04:41:02 +08:00
(__syscall_error): Same for PIC and non-PIC now. Correctly negate
error number. (errno): Use `%' not `@' in .type directives.
This commit is contained in:
parent
24e022cf82
commit
80509c667f
@ -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 */
|
||||
|
Loading…
Reference in New Issue
Block a user