1*4882a593SmuzhiyunFrom 2396fd67d81e54e18fbad67a5ff67d5684a01013 Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Hongxu Jia <hongxu.jia@windriver.com>
3*4882a593SmuzhiyunDate: Tue, 15 Aug 2017 17:27:30 +0800
4*4882a593SmuzhiyunSubject: [PATCH] Fix build on aarch64/musl
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunErrors
7*4882a593Smuzhiyun
8*4882a593Smuzhiyuninvalid operands to binary & (have 'long double' and 'unsigned int')
9*4882a593Smuzhiyun
10*4882a593Smuzhiyunerror: redefinition
11*4882a593Smuzhiyun of 'struct iovec'
12*4882a593Smuzhiyun struct iovec { void *iov_base; size_t iov_len; };
13*4882a593Smuzhiyun        ^
14*4882a593SmuzhiyunUpstream-Status: Pending
15*4882a593SmuzhiyunSigned-off-by: Khem Raj <raj.khem@gmail.com>
16*4882a593Smuzhiyun
17*4882a593SmuzhiyunRebase to 0.170
18*4882a593SmuzhiyunSigned-off-by: Hongxu Jia <hongxu.jia@windriver.com>
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun---
21*4882a593Smuzhiyun backends/aarch64_initreg.c | 4 ++--
22*4882a593Smuzhiyun backends/arm_initreg.c     | 2 +-
23*4882a593Smuzhiyun 2 files changed, 3 insertions(+), 3 deletions(-)
24*4882a593Smuzhiyun
25*4882a593Smuzhiyundiff --git a/backends/aarch64_initreg.c b/backends/aarch64_initreg.c
26*4882a593Smuzhiyunindex daf6f37..6445276 100644
27*4882a593Smuzhiyun--- a/backends/aarch64_initreg.c
28*4882a593Smuzhiyun+++ b/backends/aarch64_initreg.c
29*4882a593Smuzhiyun@@ -33,7 +33,7 @@
30*4882a593Smuzhiyun #include "system.h"
31*4882a593Smuzhiyun #include <assert.h>
32*4882a593Smuzhiyun #if defined(__aarch64__) && defined(__linux__)
33*4882a593Smuzhiyun-# include <linux/uio.h>
34*4882a593Smuzhiyun+# include <sys/uio.h>
35*4882a593Smuzhiyun # include <sys/user.h>
36*4882a593Smuzhiyun # include <sys/ptrace.h>
37*4882a593Smuzhiyun /* Deal with old glibc defining user_pt_regs instead of user_regs_struct.  */
38*4882a593Smuzhiyun@@ -82,7 +82,7 @@ aarch64_set_initial_registers_tid (pid_t tid __attribute__ ((unused)),
39*4882a593Smuzhiyun
40*4882a593Smuzhiyun   Dwarf_Word dwarf_fregs[32];
41*4882a593Smuzhiyun   for (int r = 0; r < 32; r++)
42*4882a593Smuzhiyun-    dwarf_fregs[r] = fregs.vregs[r] & 0xFFFFFFFF;
43*4882a593Smuzhiyun+    dwarf_fregs[r] = (unsigned int)fregs.vregs[r] & 0xFFFFFFFF;
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun   if (! setfunc (64, 32, dwarf_fregs, arg))
46*4882a593Smuzhiyun     return false;
47*4882a593Smuzhiyundiff --git a/backends/arm_initreg.c b/backends/arm_initreg.c
48*4882a593Smuzhiyunindex efcabaf..062bb9e 100644
49*4882a593Smuzhiyun--- a/backends/arm_initreg.c
50*4882a593Smuzhiyun+++ b/backends/arm_initreg.c
51*4882a593Smuzhiyun@@ -38,7 +38,7 @@
52*4882a593Smuzhiyun #endif
53*4882a593Smuzhiyun
54*4882a593Smuzhiyun #ifdef __aarch64__
55*4882a593Smuzhiyun-# include <linux/uio.h>
56*4882a593Smuzhiyun+# include <sys/uio.h>
57*4882a593Smuzhiyun # include <sys/user.h>
58*4882a593Smuzhiyun # include <sys/ptrace.h>
59*4882a593Smuzhiyun /* Deal with old glibc defining user_pt_regs instead of user_regs_struct.  */
60