aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2014-05-22 11:38:05 -0400
committerRichard Henderson <rth@redhat.com>2014-05-25 12:37:29 -0400
commit6e6c2d01ebb1ef839675c7151d2a114f53663386 (patch)
tree5c80d03a7a21cdcae8a7526821354e0ba39b782f
parentc69abcee726a6f63d9e5e8f0d9dcc79374ee3ef8 (diff)
downloadglibc-6e6c2d01ebb1ef839675c7151d2a114f53663386.zip
glibc-6e6c2d01ebb1ef839675c7151d2a114f53663386.tar.gz
glibc-6e6c2d01ebb1ef839675c7151d2a114f53663386.tar.bz2
aarch64: Remove DOARGS/UNDOARGS macros
While they do something for AArch32, they're useless for AArch64.
-rw-r--r--ChangeLog8
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h3
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/sysdep.h22
3 files changed, 9 insertions, 24 deletions
diff --git a/ChangeLog b/ChangeLog
index d0f5dfc..e7a7dec 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
2014-05-25 Richard Henderson <rth@twiddle.net>
+ * sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h (PSEUDO):
+ Do not use DOARGS/UNDOARGS.
+ * sysdeps/unix/sysv/linux/aarch64/sysdep.h (DO_CALL): Likewise.
+ (DOARGS_0, DOARGS_1, DOARGS_2, DOARGS_3): Remove.
+ (DOARGS_4, DOARGS_5, DOARGS_6, DOARGS_7): Remove.
+ (UNDOARGS_0, UNDOARGS_1, UNDOARGS_2, UNDOARGS_3): Remove.
+ (UNDOARGS_4, UNDOARGS_5, UNDOARGS_6, UNDOARGS_7): Remove.
+
* sysdeps/unix/sysv/linux/aarch64/sysdep.h (DO_CALL): Fix
block comment.
diff --git a/sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h
index 24fae7b..957bb99 100644
--- a/sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h
+++ b/sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h
@@ -38,10 +38,8 @@
.size __##syscall_name##_nocancel,.-__##syscall_name##_nocancel; \
ENTRY (name); \
SINGLE_THREAD_P; \
- DOARGS_##args; \
bne .Lpseudo_cancel; \
DO_CALL (syscall_name, 0); \
- UNDOARGS_##args; \
cmn x0, 4095; \
PSEUDO_RET; \
.Lpseudo_cancel: \
@@ -60,7 +58,6 @@
ldr x30, [sp], 16; \
cfi_adjust_cfa_offset (-16); \
cfi_restore (x30); \
- UNDOARGS_##args; \
cmn x0, 4095;
# define DOCARGS_0 \
diff --git a/sysdeps/unix/sysv/linux/aarch64/sysdep.h b/sysdeps/unix/sysv/linux/aarch64/sysdep.h
index e158ec6..cffd008 100644
--- a/sysdeps/unix/sysv/linux/aarch64/sysdep.h
+++ b/sysdeps/unix/sysv/linux/aarch64/sysdep.h
@@ -172,28 +172,8 @@ __local_syscall_error: \
# undef DO_CALL
# define DO_CALL(syscall_name, args) \
- DOARGS_##args \
mov x8, SYS_ify (syscall_name); \
- svc 0; \
- UNDOARGS_##args
-
-# define DOARGS_0 /* nothing */
-# define DOARGS_1 /* nothing */
-# define DOARGS_2 /* nothing */
-# define DOARGS_3 /* nothing */
-# define DOARGS_4 /* nothing */
-# define DOARGS_5 /* nothing */
-# define DOARGS_6 /* nothing */
-# define DOARGS_7 /* nothing */
-
-# define UNDOARGS_0 /* nothing */
-# define UNDOARGS_1 /* nothing */
-# define UNDOARGS_2 /* nothing */
-# define UNDOARGS_3 /* nothing */
-# define UNDOARGS_4 /* nothing */
-# define UNDOARGS_5 /* nothing */
-# define UNDOARGS_6 /* nothing */
-# define UNDOARGS_7 /* nothing */
+ svc 0
#else /* not __ASSEMBLER__ */