diff --git a/valgrind-3.11.0-shr.patch b/valgrind-3.11.0-shr.patch new file mode 100644 index 0000000..7370d7f --- /dev/null +++ b/valgrind-3.11.0-shr.patch @@ -0,0 +1,34 @@ +commit 632cb02573da3ff6237d9aeb9acd55c09c2ad317 +Author: philippe +Date: Tue Jul 12 20:49:05 2016 +0000 + + Fix n-i-bz amd64: memcheck false positive with shr %edx + + False positive analysis and fix by Julian. + + Thanks + + + + git-svn-id: svn://svn.valgrind.org/vex/trunk@3223 8f6e269a-dfd6-0310-a8e1-e2731360e62c + +diff --git a/VEX/priv/guest_amd64_helpers.c b/VEX/priv/guest_amd64_helpers.c +index ab53e15..3a0a4c6 100644 +--- a/VEX/priv/guest_amd64_helpers.c ++++ b/VEX/priv/guest_amd64_helpers.c +@@ -1604,6 +1604,15 @@ IRExpr* guest_amd64_spechelper ( const HChar* function_name, + mkU64(0))); + } + ++ /*---------------- SHRL ----------------*/ ++ ++ if (isU64(cc_op, AMD64G_CC_OP_SHRL) && isU64(cond, AMD64CondZ)) { ++ /* SHRL, then Z --> test dep1 == 0 */ ++ return unop(Iop_1Uto64, ++ binop(Iop_CmpEQ32, unop(Iop_64to32, cc_dep1), ++ mkU32(0))); ++ } ++ + /*---------------- COPY ----------------*/ + /* This can happen, as a result of amd64 FP compares: "comisd ... ; + jbe" for example. */ diff --git a/valgrind.spec b/valgrind.spec index 48444b7..0a09674 100644 --- a/valgrind.spec +++ b/valgrind.spec @@ -169,6 +169,9 @@ Patch39: valgrind-3.11.0-arm64-handle_at.patch # KDE#363714 ppc64 missing syscalls sync, waitid and name_to/open_by_handle_at Patch40: valgrind-3.11.0-ppc64-syscalls.patch +# valgrind svn r3223 - memcheck false positive with shr %edx +Patch41: valgrind-3.11.0-shr.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 @@ -318,6 +321,7 @@ chmod 755 memcheck/tests/arm64-linux/filter_stderr %patch38 -p1 %patch39 -p1 %patch40 -p1 +%patch41 -p1 %build # We need to use the software collection compiler and binutils if available. @@ -510,6 +514,10 @@ echo ===============END TESTING=============== %endif %changelog +* Thu Jul 21 2016 Mark Wielaard +- Mandatory Perl build-requires added +- Add valgrind-3.11.0-shr.patch + * Tue Jun 21 2016 Mark Wielaard - 3.11.0-23 - Update valgrind-3.11.0-ppoll-mask.patch (#1344082)