From 04ece7d2dec91fe870c5f1a38032875915f44633 Mon Sep 17 00:00:00 2001 From: John David Anglin Date: Fri, 7 Aug 2015 11:54:19 -0400 Subject: hppa: Fix miscompilation of sched_setaffinity() [BZ #18480] The attached change fixes the miscompilation of sched_setaffinity() on hppa. This is an old problem that was fixed on other architectures using a similar approach to the attached change. See: https://sourceware.org/ml/libc-hacker/2004-04/msg00016.html Build tested on trunk. Patch has been applied to debian glibc for some time. --- sysdeps/unix/sysv/linux/hppa/syscall.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sysdeps/unix/sysv/linux/hppa/syscall.c') diff --git a/sysdeps/unix/sysv/linux/hppa/syscall.c b/sysdeps/unix/sysv/linux/hppa/syscall.c index aff67a8521..958fa47b1b 100644 --- a/sysdeps/unix/sysv/linux/hppa/syscall.c +++ b/sysdeps/unix/sysv/linux/hppa/syscall.c @@ -43,9 +43,10 @@ syscall (long int __sysno, ...) va_end (args); { + LOAD_ARGS_6 (arg0, arg1, arg2, arg3, arg4, arg5) register unsigned long int __res asm("r28"); PIC_REG_DEF - LOAD_ARGS_6 (arg0, arg1, arg2, arg3, arg4, arg5) + LOAD_REGS_6 asm volatile (SAVE_ASM_PIC " ble 0x100(%%sr2, %%r0) \n" " copy %1, %%r20 \n" -- cgit v1.2.3-70-g09d2