This commit is contained in:
Jakub Jelinek 2009-02-10 16:51:53 +00:00
parent 288932ee87
commit 0a98d28cf6
5 changed files with 1279 additions and 15 deletions

View File

@ -50,7 +50,7 @@
- for (i = 0; i < c->sets * c->assoc; i++)
- c->tags[i] = 0;
+ c->tags = VG_(calloc)("cg.sim.ci.1",
+ sizeof(UWord), c->sets * c->assoc);
+ sizeof(UWord), sets * c->assoc);
}
/* This is done as a macro rather than by passing in the cache_t2 as an

1193
valgrind-3.4.0-debug.patch Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,68 @@
--- valgrind-3.4.0/Makefile.am.jj 2009-01-02 13:40:45.000000000 -0500
+++ valgrind-3.4.0/Makefile.am 2009-02-09 07:40:21.140994000 -0500
@@ -209,26 +209,26 @@ valt_load_address_x86_linux.lds: Makefil
$(CC) @FLAG_M32@ -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
valt_load_address_amd64_linux.lds: Makefile
$(CC) -m64 -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
valt_load_address_ppc32_linux.lds: Makefile
$(CC) @FLAG_M32@ -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
valt_load_address_ppc64_linux.lds: Makefile
$(CC) -m64 -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
--- valgrind-3.4.0/Makefile.in.jj 2009-01-02 13:50:00.000000000 -0500
+++ valgrind-3.4.0/Makefile.in 2009-02-09 07:41:28.439218000 -0500
@@ -946,28 +946,28 @@ valt_load_address_x86_linux.lds: Makefil
$(CC) @FLAG_M32@ -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
valt_load_address_amd64_linux.lds: Makefile
$(CC) -m64 -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
valt_load_address_ppc32_linux.lds: Makefile
$(CC) @FLAG_M32@ -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
valt_load_address_ppc64_linux.lds: Makefile
$(CC) -m64 -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.

View File

@ -8,7 +8,7 @@
#define MASK_VSCR_VALID 0x00010001
@@ -2142,7 +2143,7 @@ static IRExpr* /* ::Ity_I32 */ getGST_ma
@@ -2149,7 +2150,7 @@ static IRExpr* /* ::Ity_I32 */ getGST_ma
/* We're only keeping track of the rounding mode,
so if the mask isn't asking for this, just return 0x0 */
@ -17,7 +17,7 @@
assign( val, IRExpr_Get( OFFB_FPROUND, Ity_I32 ) );
} else {
assign( val, mkU32(0x0) );
@@ -2271,7 +2272,7 @@ static void putGST_masked ( PPC_GST reg,
@@ -2278,7 +2279,7 @@ static void putGST_masked ( PPC_GST reg,
switch (reg) {
case PPC_GST_FPSCR: {
/* Allow writes to Rounding Mode */
@ -26,7 +26,7 @@
/* construct new fpround from new and old values as per mask:
new fpround = (src & (3 & mask)) | (fpround & (3 & ~mask)) */
stmt(
@@ -2279,11 +2280,11 @@ static void putGST_masked ( PPC_GST reg,
@@ -2286,11 +2287,11 @@ static void putGST_masked ( PPC_GST reg,
OFFB_FPROUND,
binop(
Iop_Or32,
@ -40,7 +40,7 @@
)
)
)
@@ -3224,6 +3225,48 @@ static Bool dis_int_logic ( UInt theInst
@@ -3231,6 +3232,48 @@ static Bool dis_int_logic ( UInt theInst
// TODO: alternatively: assign(rA, verbose_Clz64(rS));
break;
@ -89,7 +89,7 @@
default:
vex_printf("dis_int_logic(ppc)(opc2)\n");
return False;
@@ -6533,6 +6576,45 @@ static Bool dis_fp_round ( UInt theInstr
@@ -6556,6 +6599,45 @@ static Bool dis_fp_round ( UInt theInstr
binop(Iop_I64toF64, rm, mkexpr(r_tmp64)) );
break;
@ -135,7 +135,7 @@
default:
vex_printf("dis_fp_round(ppc)(opc2)\n");
return False;
@@ -9139,6 +9221,10 @@ DisResult disInstr_PPC_WRK (
@@ -9224,6 +9306,10 @@ DisResult disInstr_PPC_WRK (
case 0x32E: // fctid
case 0x32F: // fctidz
case 0x34E: // fcfid
@ -145,8 +145,8 @@
+ case 0x1E8: // frim (Power5+)
if (dis_fp_round(theInstr)) goto decode_success;
goto decode_failure;
@@ -9216,6 +9302,10 @@ DisResult disInstr_PPC_WRK (
@@ -9310,6 +9396,10 @@ DisResult disInstr_PPC_WRK (
if (dis_int_arith( theInstr )) goto decode_success;
goto decode_failure;
@ -157,7 +157,7 @@
default:
break; // Fall through...
}
@@ -9234,6 +9324,7 @@ DisResult disInstr_PPC_WRK (
@@ -9328,6 +9418,7 @@ DisResult disInstr_PPC_WRK (
case 0x11C: case 0x3BA: case 0x39A: // eqv, extsb, extsh
case 0x1DC: case 0x07C: case 0x1BC: // nand, nor, or
case 0x19C: case 0x13C: // orc, xor

View File

@ -1,13 +1,14 @@
Summary: Tool for finding memory management bugs in programs
Name: valgrind
Version: 3.4.0
Release: 2
Release: 3
Epoch: 1
Source0: http://www.valgrind.org/downloads/valgrind-%{version}.tar.bz2
Patch1: valgrind-3.4.0-cachegrind-improvements.patch
Patch2: valgrind-3.4.0-pkg-config.patch
Patch3: valgrind-3.4.0-power5+-6.patch
Patch4: valgrind-3.4.0-openat.patch
Patch3: valgrind-3.4.0-openat.patch
Patch4: valgrind-3.4.0-newbu.patch
Patch5: valgrind-3.4.0-debug.patch
License: GPLv2
URL: http://www.valgrind.org/
Group: Development/Debuggers
@ -65,6 +66,7 @@ or valgrind plugins.
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%build
%ifarch x86_64 ppc64
@ -127,6 +129,8 @@ ln -sf ../../lib/valgrind/%{valsecarch}-linux $RPM_BUILD_ROOT%{_libdir}/valgrind
%endif
%endif
rm -f $RPM_BUILD_ROOT%{_libdir}/valgrind/*.supp.in
%clean
rm -rf $RPM_BUILD_ROOT
@ -141,7 +145,6 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/valgrind/%{valsecarch}-linux
%endif
%{_libdir}/valgrind/%{valarch}-linux/*[^a]
%{_libdir}/valgrind/%{valarch}-linux/*[^.]a
%{_libdir}/valgrind/*.supp
%{_mandir}/man1/valgrind*
@ -154,7 +157,7 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/pkgconfig/*
%changelog
* Sat Feb 7 2009 Jakub Jelinek <jakub@redhat.com> 3.4.0-2
* Tue Feb 9 2009 Jakub Jelinek <jakub@redhat.com> 3.4.0-3
- update to 3.4.0
* Wed Apr 16 2008 Jakub Jelinek <jakub@redhat.com> 3.3.0-3