commit valgrind for openSUSE:Factory
Hello community, here is the log from the commit of package valgrind for openSUSE:Factory checked in at Mon May 23 11:59:20 CEST 2011. -------- --- valgrind/valgrind.changes 2011-03-16 11:30:14.000000000 +0100 +++ /mounts/work_src_done/STABLE/valgrind/valgrind.changes 2011-05-17 13:48:54.000000000 +0200 @@ -1,0 +2,13 @@ +Tue May 17 11:46:04 UTC 2011 - stefan.bruens@rwth-aachen.de + +- revert removal for gcc-32bit requirement, breaks valgrinding + 32bit code on 64bit archs + +------------------------------------------------------------------- +Mon Apr 11 13:11:43 CEST 2011 - dmueller@suse.de + +- fix testsuite for s390 (kde#264800, kde#265762, kde#253206) +- Add folding rules for Clz32 and Clz64 (kde#243404) +- Refresh s390x port (kde#243404) + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- deprecated.diff valgrind-3.5.90.svn11391-s390x-port.diff New: ---- valgrind-3.6.0.svn11566-s390x-port.diff valgrind-r11643.diff valgrind-r11644.diff valgrind-vex-r2106.diff valgrind-vex-r2109.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ valgrind.spec ++++++ --- /var/tmp/diff_new_pack.vAqt1N/_old 2011-05-23 11:58:10.000000000 +0200 +++ /var/tmp/diff_new_pack.vAqt1N/_new 2011-05-23 11:58:10.000000000 +0200 @@ -20,7 +20,7 @@ Name: valgrind BuildRequires: docbook-xsl-stylesheets docbook_4 gcc-c++ glibc-devel-32bit libxslt xorg-x11-devel %ifarch x86_64 ppc64 -BuildRequires: glibc-devel-32bit +BuildRequires: gcc-32bit glibc-devel-32bit %endif Url: http://valgrind.org/ License: GPLv2+ @@ -28,13 +28,16 @@ Summary: Memory Management Debugger BuildRoot: %{_tmppath}/%{name}-%{version}-build Version: 3.6.1 -Release: 1 +Release: 2 Source0: %{name}-%{version}.tar.bz2 # svn di svn://svn.valgrind.org/valgrind/tags/VALGRIND_3_5_0 svn://svn.valgrind.org/valgrind/branches/VALGRIND_3_5_BRANCH > 3_5_BRANCH.diff # svn di svn://svn.valgrind.org/vex/tags/VEX_3_5_0 svn://svn.valgrind.org/vex/branches/VEX_3_5_BRANCH > VEX_3_5_BRANCH.diff Patch1: jit-register-unregister.diff -Patch2: deprecated.diff -Patch3: valgrind-3.5.90.svn11391-s390x-port.diff +Patch3: valgrind-3.6.0.svn11566-s390x-port.diff +Patch5: valgrind-vex-r2109.diff +Patch6: valgrind-r11644.diff +Patch7: valgrind-r11643.diff +Patch8: valgrind-vex-r2106.diff %if %suse_version <= 1100 Provides: valgrind-devel = %version %endif @@ -126,13 +129,15 @@ %prep %setup -q -n %{name}-%{version} cd VEX +%patch5 +%patch8 cd .. %patch1 -%ifarch s390x +#%ifarch s390x %patch3 -%endif -# probably no longer needed, kept around already for a long time (2010-10-12) -#%patch2 +#%endif +%patch6 +%patch7 %build export CFLAGS="$RPM_OPT_FLAGS" ++++++ valgrind-3.5.90.svn11391-s390x-port.diff -> valgrind-3.6.0.svn11566-s390x-port.diff ++++++ ++++ 89233 lines (skipped) ++++ between valgrind/valgrind-3.5.90.svn11391-s390x-port.diff ++++ and /mounts/work_src_done/STABLE/valgrind/valgrind-3.6.0.svn11566-s390x-port.diff ++++++ valgrind-r11643.diff ++++++ ------------------------------------------------------------------------ r11643 | sewardj | 2011-03-14 10:53:44 +0100 (Mo, 14. Mär 2011) | 3 Zeilen Build fix for older s390x-linux assemblers. Fixes #264800. (Florian Krohm, britzel@acm.org) ------------------------------------------------------------------------ Index: helgrind/tests/tc03_re_excl.c =================================================================== --- helgrind/tests/tc03_re_excl.c (Revision 11642) +++ helgrind/tests/tc03_re_excl.c (Revision 11643) @@ -10,7 +10,7 @@ /* A simple function to "use" a value, so that gcc can't possibly optimise it into nothing. */ static void use ( int x ) { - __asm__ __volatile__( "nop" : : "r"(x) : "cc","memory" ); + __asm__ __volatile__( "" : : "r"(x) : "cc","memory" ); } static void* worker_thread ( void* argV ) ++++++ valgrind-r11644.diff ++++++ ------------------------------------------------------------------------ r11644 | sewardj | 2011-03-15 09:13:08 +0100 (Di, 15. Mär 2011) | 3 Zeilen Some fixes for the faultstatus testcase. Fixes #253206. (Christian Borntraeger, borntraeger@de.ibm.com) ------------------------------------------------------------------------ Index: none/tests/faultstatus.c =================================================================== --- none/tests/faultstatus.c (Revision 11643) +++ none/tests/faultstatus.c (Revision 11644) @@ -70,7 +70,13 @@ static int testcode(int code, int want) static int testaddr(void *addr, volatile void *want) { + /* Some architectures (e.g. s390) just provide enough information to + resolve the page fault, but do not provide the offset within a page */ +#if defined(__s390__) + if (addr != (void *) ((unsigned long) want & ~0xffful)) { +#else if (addr != want) { +#endif fprintf(stderr, " FAIL: expected si_addr==%p, not %p\n", want, addr); return 0; } @@ -132,7 +138,8 @@ int main() for(i = 0; i < sizeof(sigs)/sizeof(*sigs); i++) sigaction(sigs[i], &sa, NULL); - fd = open("faultstatus.tmp", O_CREAT|O_TRUNC|O_EXCL, 0600); + /* we need O_RDWR for the truncate below */ + fd = open("faultstatus.tmp", O_CREAT|O_TRUNC|O_EXCL|O_RDWR, 0600); if (fd == -1) { perror("tmpfile"); exit(1); ++++++ valgrind-vex-r2106.diff ++++++ ------------------------------------------------------------------------ r2106 | sewardj | 2011-03-07 19:34:34 +0100 (Mo, 07. Mär 2011) | 4 Zeilen Add folding rules for Clz32 and Clz64. See bug 243404 comment 52. (Florian Krohn, britzel@acm.org). ------------------------------------------------------------------------ --- priv/ir_opt.c +++ priv/ir_opt.c @@ -956,6 +956,31 @@ static IRExpr* mkOnesOfPrimopResultType } } +/* Helpers for folding Clz32/64. */ +static UInt fold_Clz64 ( ULong value ) +{ + UInt i; + vassert(value != 0ULL); /* no defined semantics for arg==0 */ + for (i = 0; i < 64; ++i) { + if (value & (((ULong)1) << (63 - i))) return i; + } + vassert(0); + /*NOTREACHED*/ + return 0; +} + +static UInt fold_Clz32 ( UInt value ) +{ + UInt i; + vassert(value != 0); /* no defined semantics for arg==0 */ + for (i = 0; i < 32; ++i) { + if (value & (((UInt)1) << (31 - i))) return i; + } + vassert(0); + /*NOTREACHED*/ + return 0; +} + static IRExpr* fold_Expr ( IRExpr* e ) { @@ -1154,6 +1179,19 @@ static IRExpr* fold_Expr ( IRExpr* e ) break; } + case Iop_Clz32: { + UInt u32 = e->Iex.Unop.arg->Iex.Const.con->Ico.U32; + if (u32 != 0) + e2 = IRExpr_Const(IRConst_U32(fold_Clz32(u32))); + break; + } + case Iop_Clz64: { + ULong u64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U64; + if (u64 != 0ULL) + e2 = IRExpr_Const(IRConst_U64(fold_Clz64(u64))); + break; + } + default: goto unhandled; } ++++++ valgrind-vex-r2109.diff ++++++ --- pub/libvex.h +++ pub/libvex.h @@ -381,15 +381,25 @@ /* Initialise the library. You must call this first. */ extern void LibVEX_Init ( + /* failure exit function */ +# if __cplusplus == 1 && __GNUC__ && __GNUC__ <= 3 + /* g++ 3.x doesn't understand attributes on function parameters. + See #265762. */ +# else __attribute__ ((noreturn)) +# endif void (*failure_exit) ( void ), + /* logging output function */ void (*log_bytes) ( HChar*, Int nbytes ), + /* debug paranoia level */ Int debuglevel, + /* Are we supporting valgrind checking? */ Bool valgrind_support, + /* Control ... */ /*READONLY*/VexControl* vcon ); ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de