Upgrade to valgrind 3.10.1.TEST1.
This commit is contained in:
parent
a45fa36527
commit
af5c79f851
1
.gitignore
vendored
1
.gitignore
vendored
@ -17,3 +17,4 @@
|
||||
/valgrind-3.10.0.BETA1.tar.bz2
|
||||
/valgrind-3.10.0.BETA2.tar.bz2
|
||||
/valgrind-3.10.0.tar.bz2
|
||||
/valgrind-3.10.1.TEST1.tar.bz2
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
7c311a72a20388aceced1aa5573ce970 valgrind-3.10.0.tar.bz2
|
||||
e32d23cad60ef4677af27efb15f247e2 valgrind-3.10.1.TEST1.tar.bz2
|
||||
|
@ -1,24 +0,0 @@
|
||||
commit 5343bb38f44897fcb179b4756d75294719d75fbb
|
||||
Author: mjw <mjw@8f6e269a-dfd6-0310-a8e1-e2731360e62c>
|
||||
Date: Sat Oct 11 19:13:35 2014 +0000
|
||||
|
||||
Bug 339858 arm64 recognize dmb sy. Data Memory Barrier full SYstem variant.
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/vex/trunk@2975 8f6e269a-dfd6-0310-a8e1-e2731360e62c
|
||||
|
||||
diff --git a/VEX/priv/guest_arm64_toIR.c b/VEX/priv/guest_arm64_toIR.c
|
||||
index 2aa145c..5ebe0a6 100644
|
||||
--- a/VEX/priv/guest_arm64_toIR.c
|
||||
+++ b/VEX/priv/guest_arm64_toIR.c
|
||||
@@ -5537,6 +5537,11 @@ Bool dis_ARM64_branch_etc(/*MB_OUT*/DisResult* dres, UInt insn,
|
||||
DIP("isb\n");
|
||||
return True;
|
||||
}
|
||||
+ if (INSN(31,0) == 0xD5033FBF) {
|
||||
+ stmt(IRStmt_MBE(Imbe_Fence));
|
||||
+ DIP("dmb sy\n");
|
||||
+ return True;
|
||||
+ }
|
||||
if (INSN(31,0) == 0xD5033BBF) {
|
||||
stmt(IRStmt_MBE(Imbe_Fence));
|
||||
DIP("dmb ish\n");
|
@ -1,108 +0,0 @@
|
||||
commit f9fae2ab83f7263f8d58f83ddd58921cd5d1dca8
|
||||
Author: sewardj <sewardj@8f6e269a-dfd6-0310-a8e1-e2731360e62c>
|
||||
Date: Thu Oct 30 23:10:45 2014 +0000
|
||||
|
||||
Implement FCVTAS W_S and FCVTAU W_S. Fixes #340509.
|
||||
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/vex/trunk@2984 8f6e269a-dfd6-0310-a8e1-e2731360e62c
|
||||
|
||||
diff --git a/VEX/priv/guest_arm64_toIR.c b/VEX/priv/guest_arm64_toIR.c
|
||||
index 2677211..acfdc02 100644
|
||||
--- a/VEX/priv/guest_arm64_toIR.c
|
||||
+++ b/VEX/priv/guest_arm64_toIR.c
|
||||
@@ -12189,6 +12189,7 @@ Bool dis_AdvSIMD_fp_to_from_int_conv(/*MB_OUT*/DisResult* dres, UInt insn)
|
||||
/* 31 30 29 28 23 21 20 18 15 9 4
|
||||
sf 0 0 11110 type 1 rmode opcode 000000 n d
|
||||
The first 3 bits are really "sf 0 S", but S is always zero.
|
||||
+ Decode fields: sf,type,rmode,opcode
|
||||
*/
|
||||
# define INSN(_bMax,_bMin) SLICE_UInt(insn, (_bMax), (_bMin))
|
||||
if (INSN(30,29) != BITS2(0,0)
|
||||
@@ -12205,7 +12206,7 @@ Bool dis_AdvSIMD_fp_to_from_int_conv(/*MB_OUT*/DisResult* dres, UInt insn)
|
||||
UInt dd = INSN(4,0);
|
||||
|
||||
// op = 000, 001
|
||||
- /* -------- FCVT{N,P,M,Z}{S,U} (scalar, integer) -------- */
|
||||
+ /* -------- FCVT{N,P,M,Z,A}{S,U} (scalar, integer) -------- */
|
||||
/* 30 23 20 18 15 9 4
|
||||
sf 00 11110 0x 1 00 000 000000 n d FCVTNS Rd, Fn (round to
|
||||
sf 00 11110 0x 1 00 001 000000 n d FCVTNU Rd, Fn nearest)
|
||||
@@ -12213,23 +12214,38 @@ Bool dis_AdvSIMD_fp_to_from_int_conv(/*MB_OUT*/DisResult* dres, UInt insn)
|
||||
---------------- 10 -------------- FCVTM-------- (round to -inf)
|
||||
---------------- 11 -------------- FCVTZ-------- (round to zero)
|
||||
|
||||
+ ---------------- 00 100 ---------- FCVTAS------- (nearest, ties away)
|
||||
+ ---------------- 00 101 ---------- FCVTAU------- (nearest, ties away)
|
||||
+
|
||||
Rd is Xd when sf==1, Wd when sf==0
|
||||
Fn is Dn when x==1, Sn when x==0
|
||||
20:19 carry the rounding mode, using the same encoding as FPCR
|
||||
*/
|
||||
- if (ty <= X01 && (op == BITS3(0,0,0) || op == BITS3(0,0,1))) {
|
||||
+ if (ty <= X01
|
||||
+ && ( ((op == BITS3(0,0,0) || op == BITS3(0,0,1)) && True)
|
||||
+ || ((op == BITS3(1,0,0) || op == BITS3(1,0,1)) && rm == BITS2(0,0))
|
||||
+ )
|
||||
+ ) {
|
||||
Bool isI64 = bitSF == 1;
|
||||
Bool isF64 = (ty & 1) == 1;
|
||||
Bool isU = (op & 1) == 1;
|
||||
/* Decide on the IR rounding mode to use. */
|
||||
IRRoundingMode irrm = 8; /*impossible*/
|
||||
HChar ch = '?';
|
||||
- switch (rm) {
|
||||
- case BITS2(0,0): ch = 'n'; irrm = Irrm_NEAREST; break;
|
||||
- case BITS2(0,1): ch = 'p'; irrm = Irrm_PosINF; break;
|
||||
- case BITS2(1,0): ch = 'm'; irrm = Irrm_NegINF; break;
|
||||
- case BITS2(1,1): ch = 'z'; irrm = Irrm_ZERO; break;
|
||||
- default: vassert(0);
|
||||
+ if (op == BITS3(0,0,0) || op == BITS3(0,0,1)) {
|
||||
+ switch (rm) {
|
||||
+ case BITS2(0,0): ch = 'n'; irrm = Irrm_NEAREST; break;
|
||||
+ case BITS2(0,1): ch = 'p'; irrm = Irrm_PosINF; break;
|
||||
+ case BITS2(1,0): ch = 'm'; irrm = Irrm_NegINF; break;
|
||||
+ case BITS2(1,1): ch = 'z'; irrm = Irrm_ZERO; break;
|
||||
+ default: vassert(0);
|
||||
+ }
|
||||
+ } else {
|
||||
+ vassert(op == BITS3(1,0,0) || op == BITS3(1,0,1));
|
||||
+ switch (rm) {
|
||||
+ case BITS2(0,0): ch = 'a'; irrm = Irrm_NEAREST; break;
|
||||
+ default: vassert(0);
|
||||
+ }
|
||||
}
|
||||
vassert(irrm != 8);
|
||||
/* Decide on the conversion primop, based on the source size,
|
||||
@@ -12254,9 +12270,11 @@ Bool dis_AdvSIMD_fp_to_from_int_conv(/*MB_OUT*/DisResult* dres, UInt insn)
|
||||
(iop == Iop_F32toI32S && irrm == Irrm_ZERO) /* FCVTZS Wd,Sn */
|
||||
|| (iop == Iop_F32toI32S && irrm == Irrm_NegINF) /* FCVTMS Wd,Sn */
|
||||
|| (iop == Iop_F32toI32S && irrm == Irrm_PosINF) /* FCVTPS Wd,Sn */
|
||||
+ || (iop == Iop_F32toI32S && irrm == Irrm_NEAREST)/* FCVT{A,N}S W,S */
|
||||
/* F32toI32U */
|
||||
|| (iop == Iop_F32toI32U && irrm == Irrm_ZERO) /* FCVTZU Wd,Sn */
|
||||
|| (iop == Iop_F32toI32U && irrm == Irrm_NegINF) /* FCVTMU Wd,Sn */
|
||||
+ || (iop == Iop_F32toI32U && irrm == Irrm_NEAREST)/* FCVT{A,N}U W,S */
|
||||
/* F32toI64S */
|
||||
|| (iop == Iop_F32toI64S && irrm == Irrm_ZERO) /* FCVTZS Xd,Sn */
|
||||
/* F32toI64U */
|
||||
commit 9f69352a36003c35cfe8ffe01ba8ef0f830b4198
|
||||
Author: mjw <mjw@8f6e269a-dfd6-0310-a8e1-e2731360e62c>
|
||||
Date: Tue Nov 4 15:30:42 2014 +0000
|
||||
|
||||
Bug 340632 arm64: unhandled instruction fcvtas
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/vex/trunk@2987 8f6e269a-dfd6-0310-a8e1-e2731360e62c
|
||||
|
||||
diff --git a/VEX/priv/guest_arm64_toIR.c b/VEX/priv/guest_arm64_toIR.c
|
||||
index 4229d6a..1426d00 100644
|
||||
--- a/VEX/priv/guest_arm64_toIR.c
|
||||
+++ b/VEX/priv/guest_arm64_toIR.c
|
||||
@@ -12304,6 +12304,7 @@ Bool dis_AdvSIMD_fp_to_from_int_conv(/*MB_OUT*/DisResult* dres, UInt insn)
|
||||
|| (iop == Iop_F64toI64S && irrm == Irrm_ZERO) /* FCVTZS Xd,Dn */
|
||||
|| (iop == Iop_F64toI64S && irrm == Irrm_NegINF) /* FCVTMS Xd,Dn */
|
||||
|| (iop == Iop_F64toI64S && irrm == Irrm_PosINF) /* FCVTPS Xd,Dn */
|
||||
+ || (iop == Iop_F64toI64S && irrm == Irrm_NEAREST) /* FCVT{A,N}S Xd,Dn */
|
||||
/* F64toI64U */
|
||||
|| (iop == Iop_F64toI64U && irrm == Irrm_ZERO) /* FCVTZU Xd,Dn */
|
||||
|| (iop == Iop_F64toI64U && irrm == Irrm_NegINF) /* FCVTMU Xd,Dn */
|
@ -1,33 +0,0 @@
|
||||
commit 35343350beb699e87bae86a5466895de6d9827e9
|
||||
Author: sewardj <sewardj@8f6e269a-dfd6-0310-a8e1-e2731360e62c>
|
||||
Date: Thu Oct 30 15:37:16 2014 +0000
|
||||
|
||||
Implement frintx d_d and s_s. Fixes #339926.
|
||||
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/vex/trunk@2981 8f6e269a-dfd6-0310-a8e1-e2731360e62c
|
||||
|
||||
diff --git a/VEX/priv/guest_arm64_toIR.c b/VEX/priv/guest_arm64_toIR.c
|
||||
index 7f22f13..0377139 100644
|
||||
--- a/VEX/priv/guest_arm64_toIR.c
|
||||
+++ b/VEX/priv/guest_arm64_toIR.c
|
||||
@@ -11921,7 +11921,7 @@ Bool dis_AdvSIMD_fp_data_proc_1_source(/*MB_OUT*/DisResult* dres, UInt insn)
|
||||
011 zero (FRINTZ)
|
||||
000 tieeven
|
||||
100 tieaway (FRINTA) -- !! FIXME KLUDGED !!
|
||||
- 110 per FPCR + "exact = TRUE"
|
||||
+ 110 per FPCR + "exact = TRUE" (FRINTX)
|
||||
101 unallocated
|
||||
*/
|
||||
Bool isD = (ty & 1) == 1;
|
||||
@@ -11935,6 +11935,10 @@ Bool dis_AdvSIMD_fp_data_proc_1_source(/*MB_OUT*/DisResult* dres, UInt insn)
|
||||
case BITS3(0,0,1): ch = 'p'; irrmE = mkU32(Irrm_PosINF); break;
|
||||
// The following is a kludge. Should be: Irrm_NEAREST_TIE_AWAY_0
|
||||
case BITS3(1,0,0): ch = 'a'; irrmE = mkU32(Irrm_NEAREST); break;
|
||||
+ // I am unsure about the following, due to the "integral exact"
|
||||
+ // description in the manual. What does it mean?
|
||||
+ case BITS3(1,1,0):
|
||||
+ ch = 'x'; irrmE = mkexpr(mk_get_IR_rounding_mode()); break;
|
||||
default: break;
|
||||
}
|
||||
if (irrmE) {
|
@ -1,275 +0,0 @@
|
||||
diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
index e3f736b..dd13bda 100644
|
||||
--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
+++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
@@ -953,6 +953,7 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
LINX_(__NR_setresuid, sys_setresuid), // 147
|
||||
LINXY(__NR_getresuid, sys_getresuid), // 148
|
||||
LINXY(__NR_getresgid, sys_getresgid), // 150
|
||||
+ GENXY(__NR_times, sys_times), // 153
|
||||
GENX_(__NR_setpgid, sys_setpgid), // 154
|
||||
GENX_(__NR_getpgid, sys_getpgid), // 155
|
||||
GENXY(__NR_uname, sys_newuname), // 160
|
||||
@@ -1068,7 +1069,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ
|
||||
//ZZ GENX_(__NR_rmdir, sys_rmdir), // 40
|
||||
//ZZ LINXY(__NR_pipe, sys_pipe), // 42
|
||||
-//ZZ GENXY(__NR_times, sys_times), // 43
|
||||
//ZZ // GENX_(__NR_prof, sys_ni_syscall), // 44
|
||||
|
||||
//ZZ LINX_(__NR_setgid, sys_setgid16), // 46
|
||||
diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
index dd13bda..045b9b9 100644
|
||||
--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
+++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
@@ -956,6 +956,8 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
GENXY(__NR_times, sys_times), // 153
|
||||
GENX_(__NR_setpgid, sys_setpgid), // 154
|
||||
GENX_(__NR_getpgid, sys_getpgid), // 155
|
||||
+ GENX_(__NR_getsid, sys_getsid), // 156
|
||||
+ GENX_(__NR_setsid, sys_setsid), // 157
|
||||
GENXY(__NR_uname, sys_newuname), // 160
|
||||
GENXY(__NR_getrlimit, sys_old_getrlimit), // 163
|
||||
GENX_(__NR_setrlimit, sys_setrlimit), // 164
|
||||
@@ -1092,7 +1094,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ GENX_(__NR_getppid, sys_getppid), // 64
|
||||
//ZZ
|
||||
//ZZ GENX_(__NR_getpgrp, sys_getpgrp), // 65
|
||||
-//ZZ GENX_(__NR_setsid, sys_setsid), // 66
|
||||
//ZZ LINXY(__NR_sigaction, sys_sigaction), // 67
|
||||
//ZZ //zz // (__NR_sgetmask, sys_sgetmask), // 68 */* (ANSI C)
|
||||
//ZZ //zz // (__NR_ssetmask, sys_ssetmask), // 69 */* (ANSI C)
|
||||
@@ -1176,7 +1177,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ GENX_(__NR_flock, sys_flock), // 143
|
||||
//ZZ GENX_(__NR_msync, sys_msync), // 144
|
||||
//ZZ
|
||||
-//ZZ GENX_(__NR_getsid, sys_getsid), // 147
|
||||
//ZZ GENX_(__NR_fdatasync, sys_fdatasync), // 148
|
||||
//ZZ LINXY(__NR__sysctl, sys_sysctl), // 149
|
||||
//ZZ
|
||||
commit 92379dfe8ab904b8f7ecfa2a6c9094cf3cc2481d
|
||||
Author: sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>
|
||||
Date: Thu Oct 30 13:54:24 2014 +0000
|
||||
|
||||
Bug 339940 - (arm64/aarch64) unhandled syscall: 83 (sys_fdatasync) + patch
|
||||
Patch from David Abdurachmanov <davidlt@cern.ch>
|
||||
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14675 a5019735-40e9-0310-863c-91ae7b9d1cf9
|
||||
|
||||
diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
index 045b9b9..69a997c 100644
|
||||
--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
+++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
@@ -922,6 +922,7 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
|
||||
LINX_(__NR_utimensat, sys_utimensat), // 88
|
||||
GENX_(__NR_fsync, sys_fsync), // 82
|
||||
+ GENX_(__NR_fdatasync, sys_fdatasync), // 83
|
||||
LINXY(__NR_timerfd_create, sys_timerfd_create), // 85
|
||||
LINXY(__NR_timerfd_settime, sys_timerfd_settime), // 86
|
||||
LINXY(__NR_timerfd_gettime, sys_timerfd_gettime), // 87
|
||||
@@ -1177,7 +1178,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ GENX_(__NR_flock, sys_flock), // 143
|
||||
//ZZ GENX_(__NR_msync, sys_msync), // 144
|
||||
//ZZ
|
||||
-//ZZ GENX_(__NR_fdatasync, sys_fdatasync), // 148
|
||||
//ZZ LINXY(__NR__sysctl, sys_sysctl), // 149
|
||||
//ZZ
|
||||
//ZZ GENX_(__NR_munlock, sys_munlock), // 151
|
||||
|
||||
commit 20a8d68dec8168d8a3df1b73f8128212344bcab0
|
||||
Author: sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>
|
||||
Date: Thu Oct 30 14:11:32 2014 +0000
|
||||
|
||||
Bug 340028 - unhandled syscalls for arm64 (msync, pread64, setreuid
|
||||
and setregid)
|
||||
Patch from dimitry@google.com.
|
||||
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14676 a5019735-40e9-0310-863c-91ae7b9d1cf9
|
||||
|
||||
diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
index 69a997c..d0fe78d 100644
|
||||
--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
+++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
@@ -910,6 +910,7 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
GENX_(__NR_write, sys_write), // 64
|
||||
GENXY(__NR_readv, sys_readv), // 65
|
||||
GENX_(__NR_writev, sys_writev), // 66
|
||||
+ GENXY(__NR_pread64, sys_pread64), // 67
|
||||
GENX_(__NR_pwrite64, sys_pwrite64), // 68
|
||||
LINX_(__NR_pselect6, sys_pselect6), // 72
|
||||
LINXY(__NR_ppoll, sys_ppoll), // 73
|
||||
@@ -951,6 +952,8 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
PLAX_(__NR_rt_sigreturn, sys_rt_sigreturn), // 139
|
||||
GENX_(__NR_setpriority, sys_setpriority), // 140
|
||||
GENX_(__NR_getpriority, sys_getpriority), // 141
|
||||
+ GENX_(__NR_setregid, sys_setregid), // 143
|
||||
+ GENX_(__NR_setreuid, sys_setreuid), // 145
|
||||
LINX_(__NR_setresuid, sys_setresuid), // 147
|
||||
LINXY(__NR_getresuid, sys_getresuid), // 148
|
||||
LINXY(__NR_getresgid, sys_getresgid), // 150
|
||||
@@ -1017,6 +1020,7 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
PLAX_(__NR3264_fadvise64, sys_fadvise64), // 223
|
||||
|
||||
GENXY(__NR_mprotect, sys_mprotect), // 226
|
||||
+ GENX_(__NR_msync, sys_msync), // 227
|
||||
GENX_(__NR_mlock, sys_mlock), // 228
|
||||
GENX_(__NR_mlockall, sys_mlockall), // 230
|
||||
GENX_(__NR_madvise, sys_madvise), // 233
|
||||
@@ -1099,8 +1103,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ //zz // (__NR_sgetmask, sys_sgetmask), // 68 */* (ANSI C)
|
||||
//ZZ //zz // (__NR_ssetmask, sys_ssetmask), // 69 */* (ANSI C)
|
||||
//ZZ //zz
|
||||
-//ZZ LINX_(__NR_setreuid, sys_setreuid16), // 70
|
||||
-//ZZ LINX_(__NR_setregid, sys_setregid16), // 71
|
||||
//ZZ PLAX_(__NR_sigsuspend, sys_sigsuspend), // 72
|
||||
//ZZ LINXY(__NR_sigpending, sys_sigpending), // 73
|
||||
//ZZ //zz // (__NR_sethostname, sys_sethostname), // 74 */*
|
||||
@@ -1176,7 +1178,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ GENXY(__NR_getdents, sys_getdents), // 141
|
||||
//ZZ GENX_(__NR__newselect, sys_select), // 142
|
||||
//ZZ GENX_(__NR_flock, sys_flock), // 143
|
||||
-//ZZ GENX_(__NR_msync, sys_msync), // 144
|
||||
//ZZ
|
||||
//ZZ LINXY(__NR__sysctl, sys_sysctl), // 149
|
||||
//ZZ
|
||||
@@ -1207,7 +1208,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ LINXY(__NR_rt_sigpending, sys_rt_sigpending), // 176
|
||||
//ZZ LINXY(__NR_rt_sigtimedwait, sys_rt_sigtimedwait),// 177
|
||||
//ZZ
|
||||
-//ZZ GENXY(__NR_pread64, sys_pread64), // 180
|
||||
//ZZ LINX_(__NR_chown, sys_chown16), // 182
|
||||
//ZZ
|
||||
//ZZ LINX_(__NR_capset, sys_capset), // 185
|
||||
|
||||
commit f78d99007454b34d0619cabc99c3f66613b05285
|
||||
Author: sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>
|
||||
Date: Thu Oct 30 14:28:14 2014 +0000
|
||||
|
||||
Bug 340236 - 4 unhandled syscalls on aarch64/arm64:
|
||||
mknodat (33), fchdir (50), chroot (51), fchownat (54)
|
||||
Patch from Miroslav Franc (mfranc@redhat.com)
|
||||
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14677 a5019735-40e9-0310-863c-91ae7b9d1cf9
|
||||
|
||||
diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
index d0fe78d..54238ed 100644
|
||||
--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
+++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
@@ -880,6 +880,7 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
LINX_(__NR_inotify_add_watch, sys_inotify_add_watch), // 27
|
||||
LINX_(__NR_inotify_rm_watch, sys_inotify_rm_watch), // 28
|
||||
LINXY(__NR_ioctl, sys_ioctl), // 29
|
||||
+ LINX_(__NR_mknodat, sys_mknodat), // 33
|
||||
LINX_(__NR_mkdirat, sys_mkdirat), // 34
|
||||
LINX_(__NR_unlinkat, sys_unlinkat), // 35
|
||||
LINX_(__NR_symlinkat, sys_symlinkat), // 36
|
||||
@@ -896,7 +897,10 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
LINX_(__NR_fallocate, sys_fallocate), // 47
|
||||
LINX_(__NR_faccessat, sys_faccessat), // 48
|
||||
GENX_(__NR_chdir, sys_chdir), // 49
|
||||
+ GENX_(__NR_fchdir, sys_fchdir), // 50
|
||||
+ GENX_(__NR_chroot, sys_chroot), // 51
|
||||
LINX_(__NR_fchmodat, sys_fchmodat), // 53
|
||||
+ LINX_(__NR_fchownat, sys_fchownat), // 54
|
||||
LINXY(__NR_openat, sys_openat), // 56
|
||||
GENXY(__NR_close, sys_close), // 57
|
||||
LINXY(__NR_pipe2, sys_pipe2), // 59
|
||||
@@ -1093,7 +1097,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ // GENX_(__NR_ulimit, sys_ni_syscall), // 58
|
||||
//ZZ //zz // (__NR_oldolduname, sys_olduname), // 59 Linux -- obsolete
|
||||
//ZZ //zz
|
||||
-//ZZ GENX_(__NR_chroot, sys_chroot), // 61
|
||||
//ZZ //zz // (__NR_ustat, sys_ustat) // 62 SVr4 -- deprecated
|
||||
//ZZ GENXY(__NR_dup2, sys_dup2), // 63
|
||||
//ZZ GENX_(__NR_getppid, sys_getppid), // 64
|
||||
@@ -1165,7 +1168,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ //zz // Nb: get_kernel_syms() was removed 2.4-->2.6
|
||||
//ZZ // GENX_(__NR_get_kernel_syms, sys_ni_syscall), // 130
|
||||
//ZZ GENX_(__NR_getpgid, sys_getpgid), // 132
|
||||
-//ZZ GENX_(__NR_fchdir, sys_fchdir), // 133
|
||||
//ZZ //zz // (__NR_bdflush, sys_bdflush), // 134 */Linux
|
||||
//ZZ //zz
|
||||
//ZZ //zz // (__NR_sysfs, sys_sysfs), // 135 SVr4
|
||||
@@ -1329,8 +1331,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ LINX_(__NR_inotify_init, sys_inotify_init), // 291
|
||||
//ZZ // LINX_(__NR_migrate_pages, sys_migrate_pages), // 294
|
||||
//ZZ
|
||||
-//ZZ LINX_(__NR_mknodat, sys_mknodat), // 297
|
||||
-//ZZ LINX_(__NR_fchownat, sys_fchownat), // 298
|
||||
//ZZ LINX_(__NR_futimesat, sys_futimesat), // 326 on arm
|
||||
//ZZ
|
||||
//ZZ PLAXY(__NR_fstatat64, sys_fstatat64), // 300
|
||||
|
||||
commit 076d5f343c3753ea0db86701f922b7c84a83ec38
|
||||
Author: mjw <mjw@a5019735-40e9-0310-863c-91ae7b9d1cf9>
|
||||
Date: Tue Nov 4 13:43:21 2014 +0000
|
||||
|
||||
Bug 340630 arm64: fchmod (52) and fchown (55) syscalls not recognized.
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14686 a5019735-40e9-0310-863c-91ae7b9d1cf9
|
||||
|
||||
diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
index 54238ed..f8a59c1 100644
|
||||
--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
+++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
@@ -899,8 +899,10 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
GENX_(__NR_chdir, sys_chdir), // 49
|
||||
GENX_(__NR_fchdir, sys_fchdir), // 50
|
||||
GENX_(__NR_chroot, sys_chroot), // 51
|
||||
+ GENX_(__NR_fchmod, sys_fchmod), // 52
|
||||
LINX_(__NR_fchmodat, sys_fchmodat), // 53
|
||||
LINX_(__NR_fchownat, sys_fchownat), // 54
|
||||
+ GENX_(__NR_fchown, sys_fchown), // 55
|
||||
LINXY(__NR_openat, sys_openat), // 56
|
||||
GENXY(__NR_close, sys_close), // 57
|
||||
LINXY(__NR_pipe2, sys_pipe2), // 59
|
||||
@@ -1129,7 +1131,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ GENXY(__NR_munmap, sys_munmap), // 91
|
||||
//ZZ GENX_(__NR_truncate, sys_truncate), // 92
|
||||
//ZZ GENX_(__NR_ftruncate, sys_ftruncate), // 93
|
||||
-//ZZ GENX_(__NR_fchmod, sys_fchmod), // 94
|
||||
//ZZ
|
||||
//ZZ LINX_(__NR_fchown, sys_fchown16), // 95
|
||||
//ZZ // GENX_(__NR_profil, sys_ni_syscall), // 98
|
||||
@@ -1237,7 +1238,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ
|
||||
//ZZ GENXY(__NR_getgroups32, sys_getgroups), // 205
|
||||
//ZZ GENX_(__NR_setgroups32, sys_setgroups), // 206
|
||||
-//ZZ GENX_(__NR_fchown32, sys_fchown), // 207
|
||||
//ZZ LINX_(__NR_setresuid32, sys_setresuid), // 208
|
||||
//ZZ LINXY(__NR_getresuid32, sys_getresuid), // 209
|
||||
//ZZ
|
||||
commit 2562dd489ed5ff9d5eb73f7d2957eb3b2c5dc801
|
||||
Author: mjw <mjw@a5019735-40e9-0310-863c-91ae7b9d1cf9>
|
||||
Date: Thu Nov 13 13:03:25 2014 +0000
|
||||
|
||||
Bug 340922 arm64: unhandled getgroups/setgroups syscalls.
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14716 a5019735-40e9-0310-863c-91ae7b9d1cf9
|
||||
|
||||
diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
index 59e1cf6..cd27ad2 100644
|
||||
--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
+++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
|
||||
@@ -968,6 +968,8 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
GENX_(__NR_getpgid, sys_getpgid), // 155
|
||||
GENX_(__NR_getsid, sys_getsid), // 156
|
||||
GENX_(__NR_setsid, sys_setsid), // 157
|
||||
+ GENXY(__NR_getgroups, sys_getgroups), // 158
|
||||
+ GENX_(__NR_setgroups, sys_setgroups), // 159
|
||||
GENXY(__NR_uname, sys_newuname), // 160
|
||||
GENXY(__NR_getrlimit, sys_old_getrlimit), // 163
|
||||
GENX_(__NR_setrlimit, sys_setrlimit), // 164
|
||||
@@ -1237,8 +1239,6 @@ static SyscallTableEntry syscall_main_table[] = {
|
||||
//ZZ GENX_(__NR_setreuid32, sys_setreuid), // 203
|
||||
//ZZ GENX_(__NR_setregid32, sys_setregid), // 204
|
||||
//ZZ
|
||||
-//ZZ GENXY(__NR_getgroups32, sys_getgroups), // 205
|
||||
-//ZZ GENX_(__NR_setgroups32, sys_setgroups), // 206
|
||||
//ZZ LINX_(__NR_setresuid32, sys_setresuid), // 208
|
||||
//ZZ LINXY(__NR_getresuid32, sys_getresuid), // 209
|
||||
//ZZ
|
@ -1,21 +0,0 @@
|
||||
commit 9a20b6daf975d94f24d8c2688eb0159c7e651ff6
|
||||
Author: sewardj <sewardj@8f6e269a-dfd6-0310-a8e1-e2731360e62c>
|
||||
Date: Thu Oct 30 15:54:53 2014 +0000
|
||||
|
||||
Implement fcvtmu x_d. Fixes #339927.
|
||||
|
||||
|
||||
git-svn-id: svn://svn.valgrind.org/vex/trunk@2982 8f6e269a-dfd6-0310-a8e1-e2731360e62c
|
||||
|
||||
diff --git a/VEX/priv/guest_arm64_toIR.c b/VEX/priv/guest_arm64_toIR.c
|
||||
index 0377139..23aea80 100644
|
||||
--- a/VEX/priv/guest_arm64_toIR.c
|
||||
+++ b/VEX/priv/guest_arm64_toIR.c
|
||||
@@ -12241,6 +12241,7 @@ Bool dis_AdvSIMD_fp_to_from_int_conv(/*MB_OUT*/DisResult* dres, UInt insn)
|
||||
|| (iop == Iop_F64toI64S && irrm == Irrm_PosINF) /* FCVTPS Xd,Dn */
|
||||
/* F64toI64U */
|
||||
|| (iop == Iop_F64toI64U && irrm == Irrm_ZERO) /* FCVTZU Xd,Dn */
|
||||
+ || (iop == Iop_F64toI64U && irrm == Irrm_NegINF) /* FCVTMU Xd,Dn */
|
||||
|| (iop == Iop_F64toI64U && irrm == Irrm_PosINF) /* FCVTPU Xd,Dn */
|
||||
) {
|
||||
/* validated */
|
@ -1,31 +0,0 @@
|
||||
diff --git a/VEX/priv/guest_ppc_toIR.c b/VEX/priv/guest_ppc_toIR.c
|
||||
index adabf64..8f7e4aa 100644
|
||||
--- a/VEX/priv/guest_ppc_toIR.c
|
||||
+++ b/VEX/priv/guest_ppc_toIR.c
|
||||
@@ -18783,10 +18783,26 @@ DisResult disInstr_PPC_WRK (
|
||||
UInt word2 = mode64 ? 0x78006800 : 0x5400683E;
|
||||
UInt word3 = mode64 ? 0x7800E802 : 0x5400E83E;
|
||||
UInt word4 = mode64 ? 0x78009802 : 0x5400983E;
|
||||
+ Bool is_special_preamble = False;
|
||||
if (getUIntPPCendianly(code+ 0) == word1 &&
|
||||
getUIntPPCendianly(code+ 4) == word2 &&
|
||||
getUIntPPCendianly(code+ 8) == word3 &&
|
||||
getUIntPPCendianly(code+12) == word4) {
|
||||
+ is_special_preamble = True;
|
||||
+ } else if (! mode64 &&
|
||||
+ getUIntPPCendianly(code+ 0) == 0x54001800 &&
|
||||
+ getUIntPPCendianly(code+ 4) == 0x54006800 &&
|
||||
+ getUIntPPCendianly(code+ 8) == 0x5400E800 &&
|
||||
+ getUIntPPCendianly(code+12) == 0x54009800) {
|
||||
+ static Bool reported = False;
|
||||
+ if (!reported) {
|
||||
+ vex_printf("disInstr(ppc): old ppc32 instruction magic detected. Code might clobber r0.\n");
|
||||
+ vex_printf("disInstr(ppc): source needs to be recompiled against latest valgrind.h.\n");
|
||||
+ reported = True;
|
||||
+ }
|
||||
+ is_special_preamble = True;
|
||||
+ }
|
||||
+ if (is_special_preamble) {
|
||||
/* Got a "Special" instruction preamble. Which one is it? */
|
||||
if (getUIntPPCendianly(code+16) == 0x7C210B78 /* or 1,1,1 */) {
|
||||
/* %R3 = client_request ( %R4 ) */
|
@ -2,8 +2,8 @@
|
||||
|
||||
Summary: Tool for finding memory management bugs in programs
|
||||
Name: %{?scl_prefix}valgrind
|
||||
Version: 3.10.0
|
||||
Release: 6%{?dist}
|
||||
Version: 3.10.1
|
||||
Release: 0.1.TEST1%{?dist}
|
||||
Epoch: 1
|
||||
License: GPLv2+
|
||||
URL: http://www.valgrind.org/
|
||||
@ -44,7 +44,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
%define _find_debuginfo_dwz_opts %{nil}
|
||||
%undefine _include_minidebuginfo
|
||||
|
||||
Source0: http://www.valgrind.org/downloads/valgrind-%{version}.tar.bz2
|
||||
Source0: http://www.valgrind.org/downloads/valgrind-%{version}.TEST1.tar.bz2
|
||||
|
||||
# Needs investigation and pushing upstream
|
||||
Patch1: valgrind-3.9.0-cachegrind-improvements.patch
|
||||
@ -58,32 +58,6 @@ Patch3: valgrind-3.9.0-stat_h.patch
|
||||
# Make ld.so supressions slightly less specific.
|
||||
Patch4: valgrind-3.9.0-ldso-supp.patch
|
||||
|
||||
# Recognize and warn about usage of old (broken) ppc32 magic instr preamble.
|
||||
# https://bugs.kde.org/show_bug.cgi?id=278808#c6
|
||||
Patch5: valgrind-3.10.0-old-ppc32-instr-magic.patch
|
||||
|
||||
# KDE#339853 arm64 times syscall unknown
|
||||
# KDE#339856 arm64 unhandled getsid/setsid syscalls.
|
||||
# KDE#339940 arm64 unhandled syscall: 83 (sys_fdatasync)
|
||||
# KDE#340028 unhandled syscalls for arm64 (msync, pread64, setreuid, setregid)
|
||||
# KDE#340236 arm64 mknodat (33), fchdir (50), chroot (51), fchownat (54)
|
||||
# KDE#340630 arm64 fchmod (52) and fchown (55) syscalls not recognized.
|
||||
# KDE#340922 arm64: unhandled getgroups/setgroups syscalls.
|
||||
Patch6: valgrind-3.10.0-aarch64-syscalls.patch
|
||||
|
||||
# KDE#339858 arm64 recognize dmb sy. Data Memory Barrier full SYstem variant.
|
||||
Patch7: valgrind-3.10.0-aarch64-dmb-sy.patch
|
||||
|
||||
# KDE#339926 Implement frintx d_d and s_s.
|
||||
Patch8: valgrind-3.10.0-aarch64-frint.patch
|
||||
|
||||
# KDE#339927 Implement fcvtmu x_d.
|
||||
Patch9: valgrind-3.10.0-fcvtmu.patch
|
||||
|
||||
# KDE#340509 Implement FCVTAS W_S and FCVTAU W_S.
|
||||
# KDE#340632 arm64: unhandled instruction fcvtas
|
||||
Patch10: valgrind-3.10.0-aarch64-fcvta.patch
|
||||
|
||||
%if %{build_multilib}
|
||||
# Ensure glibc{,-devel} is installed for both multilib arches
|
||||
BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so
|
||||
@ -180,18 +154,12 @@ See the section on Debugging MPI Parallel Programs with Valgrind in the
|
||||
Valgrind User Manual for details.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{?scl:%{pkg_name}}%{!?scl:%{name}}-%{version}
|
||||
%setup -q -n %{?scl:%{pkg_name}}%{!?scl:%{name}}-%{version}.TEST1
|
||||
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
%patch10 -p1
|
||||
|
||||
%build
|
||||
# We need to use the software collection compiler and binutils if available.
|
||||
@ -340,6 +308,16 @@ echo ===============END TESTING===============
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Nov 24 2014 Mark Wielaard <mjw@redhat.com> - 3.10.1-0.1.TEST1
|
||||
- Upgrade to valgrind 3.10.1.TEST1
|
||||
- Remove patches that are now upstream:
|
||||
- valgrind-3.10.0-old-ppc32-instr-magic.patch
|
||||
- valgrind-3.10.0-aarch64-syscalls.patch
|
||||
- valgrind-3.10.0-aarch64-dmb-sy.patch
|
||||
- valgrind-3.10.0-aarch64-frint.patch
|
||||
- valgrind-3.10.0-fcvtmu.patch
|
||||
- valgrind-3.10.0-aarch64-fcvta.patch
|
||||
|
||||
* Wed Nov 19 2014 Mark Wielaard <mjw@redhat.com> - 3.10.0-6
|
||||
- Add getgroups/setgroups to valgrind-3.10.0-aarch64-syscalls.patch
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user