This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.19-511-gf0712b5
- From: rth at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 30 May 2014 18:12:19 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.19-511-gf0712b5
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via f0712b543eaddeca8fc6d7a8eb6b5b8d24105ce2 (commit)
via 74f31c18593111725478a991b395ae45661985a3 (commit)
from 30477995dc8a680283b4d6e02039bca09de83cf9 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=f0712b543eaddeca8fc6d7a8eb6b5b8d24105ce2
commit f0712b543eaddeca8fc6d7a8eb6b5b8d24105ce2
Author: Richard Henderson <rth@redhat.com>
Date: Thu May 29 12:14:49 2014 -0400
aarch64: Remove PSEUDO_RET
diff --git a/ChangeLog b/ChangeLog
index 1d85abe..818dd07 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2014-05-30 Richard Henderson <rth@twiddle.net>
+ * sysdeps/unix/sysv/linux/aarch64/sysdep.h (PSEUDO_RET): Remove.
+ (PSEUDO_RET_NOERRNO): Remove.
+ (ret): Don't redefine.
+ (ret_NOERRNO): Define in terms of ret.
+ (ret_ERRVAL): Likewise.
+
* sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Remove the
use of PSEUDO_RET; perform the error check directly.
diff --git a/sysdeps/unix/sysv/linux/aarch64/sysdep.h b/sysdeps/unix/sysv/linux/aarch64/sysdep.h
index 4686599..3f3c709 100644
--- a/sysdeps/unix/sysv/linux/aarch64/sysdep.h
+++ b/sysdeps/unix/sysv/linux/aarch64/sysdep.h
@@ -61,15 +61,6 @@
cmn x0, #4095; \
b.cs .Lsyscall_error;
-/* Notice the use of 'RET' instead of 'ret' the assembler is case
- insensitive and eglibc already uses the preprocessor symbol 'ret'
- so we use the upper case 'RET' to force through a ret instruction
- to the assembler */
-# define PSEUDO_RET \
- RET;
-# undef ret
-# define ret PSEUDO_RET
-
# undef PSEUDO_END
# define PSEUDO_END(name) \
SYSCALL_ERROR_HANDLER \
@@ -81,20 +72,12 @@
ENTRY (name); \
DO_CALL (syscall_name, args);
-/* Notice the use of 'RET' instead of 'ret' the assembler is case
- insensitive and eglibc already uses the preprocessor symbol 'ret'
- so we use the upper case 'RET' to force through a ret instruction
- to the assembler */
-# define PSEUDO_RET_NOERRNO \
- RET;
-
-# undef ret_NOERRNO
-# define ret_NOERRNO PSEUDO_RET_NOERRNO
-
# undef PSEUDO_END_NOERRNO
# define PSEUDO_END_NOERRNO(name) \
END (name)
+# define ret_NOERRNO ret
+
/* The function has to return the error code. */
# undef PSEUDO_ERRVAL
# define PSEUDO_ERRVAL(name, syscall_name, args) \
@@ -107,7 +90,7 @@
# define PSEUDO_END_ERRVAL(name) \
END (name)
-# define ret_ERRVAL PSEUDO_RET_NOERRNO
+# define ret_ERRVAL ret
# if NOT_IN_libc
# define SYSCALL_ERROR .Lsyscall_error
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=74f31c18593111725478a991b395ae45661985a3
commit 74f31c18593111725478a991b395ae45661985a3
Author: Richard Henderson <rth@redhat.com>
Date: Thu May 29 11:57:39 2014 -0400
aarch64: Fix error return from __ioctl
Forgotten in ca3cfa40c16ef34c74951a07a57cfcbcd58898b1
where the error branch was moved from PSEUDO_RET.
diff --git a/ChangeLog b/ChangeLog
index 243271f..1d85abe 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2014-05-30 Richard Henderson <rth@twiddle.net>
+
+ * sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Remove the
+ use of PSEUDO_RET; perform the error check directly.
+
2014-05-30 Marko Myllynen <myllynen@redhat.com>
* sysdeps/x86_64/link-defines.sym (BND_SIZE): Replace __int128
diff --git a/sysdeps/unix/sysv/linux/aarch64/ioctl.S b/sysdeps/unix/sysv/linux/aarch64/ioctl.S
index 4443f5a..8920a20 100644
--- a/sysdeps/unix/sysv/linux/aarch64/ioctl.S
+++ b/sysdeps/unix/sysv/linux/aarch64/ioctl.S
@@ -20,11 +20,12 @@
.text
ENTRY(__ioctl)
- movz x8, #__NR_ioctl
- sxtw x0, w0
- svc #0x0
- cmn x0, #0x1, lsl #12
- PSEUDO_RET
- PSEUDO_END (__ioctl)
+ mov x8, #__NR_ioctl
+ sxtw x0, w0
+ svc #0x0
+ cmn x0, #4095
+ b.cs .Lsyscall_error
+ ret
+PSEUDO_END (__ioctl)
weak_alias (__ioctl, ioctl)
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 11 +++++++++++
sysdeps/unix/sysv/linux/aarch64/ioctl.S | 13 +++++++------
sysdeps/unix/sysv/linux/aarch64/sysdep.h | 23 +++--------------------
3 files changed, 21 insertions(+), 26 deletions(-)
hooks/post-receive
--
GNU C Library master sources