From 457c78b7c85857265d23e207a7a8db70debab5dbe1355fa263b1ac8d56b6fef0 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 18 Feb 2014 14:33:33 +0000 Subject: [PATCH] - added patches: * r2798.diff OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=104 --- glibc-2.19.patch | 2 +- r2798.diff | 33 +++++++++++++++++++++++++++++++++ valgrind.changes | 6 ++++++ valgrind.spec | 2 ++ 4 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 r2798.diff diff --git a/glibc-2.19.patch b/glibc-2.19.patch index 563fa9d..117b17b 100644 --- a/glibc-2.19.patch +++ b/glibc-2.19.patch @@ -2,7 +2,7 @@ Index: valgrind-3.9.0/configure.ac =================================================================== --- valgrind-3.9.0.orig/configure.ac +++ valgrind-3.9.0/configure.ac -@@ -918,6 +918,13 @@ case "${GLIBC_VERSION}" in +@@ -939,6 +939,13 @@ case "${GLIBC_VERSION}" in DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" ;; diff --git a/r2798.diff b/r2798.diff new file mode 100644 index 0000000..28e4835 --- /dev/null +++ b/r2798.diff @@ -0,0 +1,33 @@ +------------------------------------------------------------------------ +r2798 | cborntra | 2013-11-07 22:37:28 +0100 (Do, 07 Nov 2013) | 16 lines + +Fix Bug 327284. The condition code of risbg was not correct. +This instruction might be used by by gcc for masking out bits, +e.g. code like + n &= 3; + if (n == 0) + +might result in + risbg %r4,%r4,62,128+63,0 + je + +The old code set the condition code depending on the operand before +masking. Fix it. This patch also indicates that we need test suite +coverage for risbg and friends. + + + +------------------------------------------------------------------------ +Index: priv/guest_s390_toIR.c +=================================================================== +--- VEX/priv/guest_s390_toIR.c (revision 2797) ++++ VEX/priv/guest_s390_toIR.c (revision 2798) +@@ -7606,7 +7606,7 @@ s390_irgen_RISBG(UChar r1, UChar r2, UCh + put_gpr_dw0(r1, binop(Iop_And64, mkexpr(op2), mkU64(mask))); + } + assign(result, get_gpr_dw0(r1)); +- s390_cc_thunk_putS(S390_CC_OP_LOAD_AND_TEST, op2); ++ s390_cc_thunk_putS(S390_CC_OP_LOAD_AND_TEST, result); + + return "risbg"; + } diff --git a/valgrind.changes b/valgrind.changes index 027d99d..75a8c4c 100644 --- a/valgrind.changes +++ b/valgrind.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Feb 18 14:33:22 UTC 2014 - dmueller@suse.com + +- added patches: + * r2798.diff + ------------------------------------------------------------------- Tue Feb 11 11:28:45 UTC 2014 - schwab@suse.de diff --git a/valgrind.spec b/valgrind.spec index b017262..db2bbe1 100644 --- a/valgrind.spec +++ b/valgrind.spec @@ -43,6 +43,7 @@ Patch2: armv6-support.diff Patch3: valgrind-3.9.0-merge.patches.from.Paul.McKenney.patch Patch4: valgrind-3.9.0-ppc64le-abiv2.patch Patch5: glibc-2.19.patch +Patch6: r2798.diff # during building the major version of glibc is built into the suppression file %define glibc_main_version %(getconf GNU_LIBC_VERSION | cut -d' ' -f2 | cut -d. -f1) %define glibc_major_version %(getconf GNU_LIBC_VERSION | cut -d' ' -f2 | cut -d. -f2) @@ -144,6 +145,7 @@ cd .. %patch3 -p1 %patch4 -p1 %patch5 -p1 +%patch6 %build %ifarch %arm