Accepting request 70871 from devel:tools
- revert removal for gcc-32bit requirement, breaks valgrinding 32bit code on 64bit archs This has been removed 2010/Oct/21. The missing dependency is detected by configure ("checking for 32 bit build support... no") but this is not fatal when only running 64bit on 64bit archs. (forwarded request 70449 from StefanBruens) OBS-URL: https://build.opensuse.org/request/show/70871 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/valgrind?expand=0&rev=43
This commit is contained in:
commit
aec1156334
@ -1,42 +0,0 @@
|
||||
Index: memcheck/memcheck.h
|
||||
===================================================================
|
||||
--- memcheck/memcheck.h.orig
|
||||
+++ memcheck/memcheck.h
|
||||
@@ -134,6 +134,18 @@ typedef
|
||||
_qzz_res; \
|
||||
}))
|
||||
|
||||
+/* This is the old name for VALGRIND_MAKE_MEM_NOACCESS. Deprecated. */
|
||||
+#define VALGRIND_MAKE_NOACCESS(_qzz_addr,_qzz_len) \
|
||||
+ VALGRIND_MAKE_MEM_NOACCESS(_qzz_addr,_qzz_len)
|
||||
+
|
||||
+/* This is the old name for VALGRIND_MAKE_MEM_UNDEFINED. Deprecated. */
|
||||
+#define VALGRIND_MAKE_WRITABLE(_qzz_addr,_qzz_len) \
|
||||
+ VALGRIND_MAKE_MEM_UNDEFINED(_qzz_addr,_qzz_len)
|
||||
+
|
||||
+/* This is the old name for VALGRIND_MAKE_MEM_DEFINED. Deprecated. */
|
||||
+#define VALGRIND_MAKE_READABLE(_qzz_addr,_qzz_len) \
|
||||
+ VALGRIND_MAKE_MEM_DEFINED(_qzz_addr,_qzz_len)
|
||||
+
|
||||
/* Similar to VALGRIND_MAKE_MEM_DEFINED except that addressability is
|
||||
not altered: bytes which are addressable are marked as defined,
|
||||
but those which are not addressable are left unchanged. */
|
||||
@@ -205,6 +217,18 @@ typedef
|
||||
(volatile unsigned char *)&(__lvalue), \
|
||||
(unsigned long)(sizeof (__lvalue)))
|
||||
|
||||
+/* This is the old name for VALGRIND_CHECK_MEM_IS_ADDRESSABLE. Deprecated. */
|
||||
+#define VALGRIND_CHECK_WRITABLE(_qzz_addr,_qzz_len) \
|
||||
+ VALGRIND_CHECK_MEM_IS_ADDRESSABLE(_qzz_addr,_qzz_len)
|
||||
+
|
||||
+/* This is the old name for VALGRIND_CHECK_MEM_IS_DEFINED. Deprecated. */
|
||||
+#define VALGRIND_CHECK_READABLE(_qzz_addr,_qzz_len) \
|
||||
+ VALGRIND_CHECK_MEM_IS_DEFINED(_qzz_addr,_qzz_len)
|
||||
+
|
||||
+/* This is the old name for VALGRIND_CHECK_VALUE_IS_DEFINED. Deprecated. */
|
||||
+#define VALGRIND_CHECK_DEFINED(__lvalue) \
|
||||
+ VALGRIND_CHECK_VALUE_IS_DEFINED(__lvalue)
|
||||
+
|
||||
|
||||
/* Do a full memory leak check (like --leak-check=full) mid-execution. */
|
||||
#define VALGRIND_DO_LEAK_CHECK \
|
File diff suppressed because it is too large
Load Diff
68256
valgrind-3.6.0.svn11566-s390x-port.diff
Normal file
68256
valgrind-3.6.0.svn11566-s390x-port.diff
Normal file
File diff suppressed because one or more lines are too long
20
valgrind-r11643.diff
Normal file
20
valgrind-r11643.diff
Normal file
@ -0,0 +1,20 @@
|
||||
------------------------------------------------------------------------
|
||||
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 )
|
35
valgrind-r11644.diff
Normal file
35
valgrind-r11644.diff
Normal file
@ -0,0 +1,35 @@
|
||||
------------------------------------------------------------------------
|
||||
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);
|
62
valgrind-vex-r2106.diff
Normal file
62
valgrind-vex-r2106.diff
Normal file
@ -0,0 +1,62 @@
|
||||
------------------------------------------------------------------------
|
||||
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;
|
||||
}
|
28
valgrind-vex-r2109.diff
Normal file
28
valgrind-vex-r2109.diff
Normal file
@ -0,0 +1,28 @@
|
||||
--- 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
|
||||
);
|
@ -1,3 +1,16 @@
|
||||
-------------------------------------------------------------------
|
||||
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)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 16 11:23:54 CET 2011 - dmueller@suse.de
|
||||
|
||||
|
@ -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: glibc-devel-32bit gcc-32bit
|
||||
%endif
|
||||
Url: http://valgrind.org/
|
||||
License: GPLv2+
|
||||
@ -33,8 +33,11 @@ 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 @@ Authors:
|
||||
%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"
|
||||
|
Loading…
Reference in New Issue
Block a user