From: Rich Felker <dalias@aerifal.cx>
Date: Wed, 5 Nov 2014 05:38:40 +0000 (-0500)
Subject: fix 64-bit syscall argument passing on or1k
X-Git-Tag: v1.1.6~59
X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=de2b9c21d94e0b76b629fec0060d043f535eef01;p=oweals%2Fmusl.git

fix 64-bit syscall argument passing on or1k

the kernel syscall interface for or1k does not expect 64-bit arguments
to be aligned to "even" register boundaries. this incorrect alignment
broke truncate/ftruncate and as well as a few less-common syscalls.
---

diff --git a/arch/or1k/syscall_arch.h b/arch/or1k/syscall_arch.h
index 9d90b11e..fe664559 100644
--- a/arch/or1k/syscall_arch.h
+++ b/arch/or1k/syscall_arch.h
@@ -1,7 +1,7 @@
 #define __SYSCALL_LL_E(x) \
 ((union { long long ll; long l[2]; }){ .ll = x }).l[0], \
 ((union { long long ll; long l[2]; }){ .ll = x }).l[1]
-#define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
+#define __SYSCALL_LL_O(x) __SYSCALL_LL_E((x))
 
 #define SYSCALL_MMAP2_UNIT 8192ULL