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.
.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: \
ldr x30, [sp], 16; \
cfi_adjust_cfa_offset (-16); \
cfi_restore (x30); \
- UNDOARGS_##args; \
cmn x0, 4095;
# define DOCARGS_0 \
# 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__ */