You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
|
|
|
1
(21) |
|
2
(19) |
3
(33) |
4
(24) |
5
(18) |
6
(13) |
7
(22) |
8
(21) |
|
9
(38) |
10
(25) |
11
(20) |
12
(27) |
13
(43) |
14
(9) |
15
(19) |
|
16
(37) |
17
(19) |
18
(13) |
19
(11) |
20
(8) |
21
(11) |
22
(25) |
|
23
(21) |
24
(30) |
25
(18) |
26
(11) |
27
(10) |
28
(14) |
29
(40) |
|
30
(24) |
31
(14) |
|
|
|
|
|
|
From: Nuno L. <nun...@sa...> - 2008-03-18 20:22:00
|
> BTW, does valgrind has some way to dump the superblock contents (e.g. the > asm/vex instructions and jumps)? OK, disregard the question. I already found the answer myself. e.g.: valgrind --tool=none -v --trace-flags=11111111 --trace-children=yes --trace-notbelow=1 ls Nuno |
|
From: Julian S. <js...@ac...> - 2008-03-18 20:14:00
|
On Tuesday 18 March 2008 21:03, Nuno Lopes wrote: > > BTW, does valgrind has some way to dump the superblock contents (e.g. the > > asm/vex instructions and jumps)? > > OK, disregard the question. I already found the answer myself. > e.g.: > valgrind --tool=none -v --trace-flags=11111111 --trace-children=yes > --trace-notbelow=1 ls Also --profile-flags= is quite fun. It has the advantage that it shows you the "hot" blocks in an application. Without that kind of profiling facility, it is difficult to distinguish between bad bits of code generation that only happen rarely, from ones which happen enough to be a performance problem. Also the --tool= is important, since the instrumentation code added by tools is very varied. Try comparing the code generated by none vs cachegrind (lots of calls) vs memcheck (what _is_ all that stuff :-?) If you can get your hands on a powerpc machine, also try on that. You'll see different effects again on that platform. For some simple benchmarks, try the programs in perf, with --profile-flags. For example ffbench.c contains almost all the action in the top 7 blocks or so, which means they are quite interesting to study in detail. J |
|
From: <sv...@va...> - 2008-03-18 17:53:05
|
Author: bart Date: 2008-03-18 17:53:09 +0000 (Tue, 18 Mar 2008) New Revision: 7736 Log: Enabled AM_PROG_CC_C_O. According to the automake manual, specifying this flag is required when using per-target flags. Modified: trunk/configure.in Modified: trunk/configure.in =================================================================== --- trunk/configure.in 2008-03-18 17:40:38 UTC (rev 7735) +++ trunk/configure.in 2008-03-18 17:53:09 UTC (rev 7736) @@ -55,7 +55,7 @@ AC_PROG_LN_S AC_PROG_CC -##AM_PROG_CC_C_O +AM_PROG_CC_C_O AC_PROG_CPP AC_PROG_CXX AC_PROG_RANLIB |
|
From: <sv...@va...> - 2008-03-18 17:40:35
|
Author: bart Date: 2008-03-18 17:40:38 +0000 (Tue, 18 Mar 2008) New Revision: 7735 Log: Added the option "foreign" to AM_INIT_AUTOMAKE such that automake no longer complains on the $(addsuffix ...) construct which is present in various Makefile.am files. Modified: trunk/configure.in Modified: trunk/configure.in =================================================================== --- trunk/configure.in 2008-03-18 17:09:13 UTC (rev 7734) +++ trunk/configure.in 2008-03-18 17:40:38 UTC (rev 7735) @@ -11,7 +11,7 @@ AC_INIT(Valgrind, 3.4.0.SVN, val...@li...) AC_CONFIG_SRCDIR(coregrind/m_main.c) AM_CONFIG_HEADER(config.h) -AM_INIT_AUTOMAKE +AM_INIT_AUTOMAKE([foreign]) AM_MAINTAINER_MODE |
|
From: <sv...@va...> - 2008-03-18 17:09:09
|
Author: bart
Date: 2008-03-18 17:09:13 +0000 (Tue, 18 Mar 2008)
New Revision: 7734
Log:
The results of the hg03_inherit are now independent of the Linux platform it is run on.
Modified:
trunk/exp-drd/tests/hg03_inherit.stderr.exp
trunk/exp-drd/tests/hg03_inherit.vgtest
Modified: trunk/exp-drd/tests/hg03_inherit.stderr.exp
===================================================================
--- trunk/exp-drd/tests/hg03_inherit.stderr.exp 2008-03-18 17:08:08 UTC (rev 7733)
+++ trunk/exp-drd/tests/hg03_inherit.stderr.exp 2008-03-18 17:09:13 UTC (rev 7734)
@@ -3,25 +3,17 @@
Conflicting store by thread 3/3 at 0x........ size 4
at 0x........: t2 (hg03_inherit.c:28)
by 0x........: vg_thread_wrapper (drd_pthread_intercepts.c:?)
+ by 0x........: (within libpthread-?.?.so)
+ by 0x........: clone (in /...libc...)
Location 0x........ is 0 bytes inside shared[1],
declared at hg03_inherit.c:11, in frame #? of thread 3
-Other segment start (thread 1/1)
- at 0x........: pthread_join (drd_pthread_intercepts.c:?)
- by 0x........: main (hg03_inherit.c:49)
-Other segment end (thread 1/1)
- at 0x........: (within libpthread-?.?.so)
- by 0x........: pthread_join (drd_pthread_intercepts.c:?)
Conflicting store by thread 3/3 at 0x........ size 4
at 0x........: t2 (hg03_inherit.c:29)
by 0x........: vg_thread_wrapper (drd_pthread_intercepts.c:?)
+ by 0x........: (within libpthread-?.?.so)
+ by 0x........: clone (in /...libc...)
Location 0x........ is 0 bytes inside shared[1],
declared at hg03_inherit.c:11, in frame #? of thread 3
-Other segment start (thread 1/1)
- at 0x........: pthread_join (drd_pthread_intercepts.c:?)
- by 0x........: main (hg03_inherit.c:49)
-Other segment end (thread 1/1)
- at 0x........: (within libpthread-?.?.so)
- by 0x........: pthread_join (drd_pthread_intercepts.c:?)
ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
Modified: trunk/exp-drd/tests/hg03_inherit.vgtest
===================================================================
--- trunk/exp-drd/tests/hg03_inherit.vgtest 2008-03-18 17:08:08 UTC (rev 7733)
+++ trunk/exp-drd/tests/hg03_inherit.vgtest 2008-03-18 17:09:13 UTC (rev 7734)
@@ -1,2 +1,2 @@
prog: hg03_inherit
-vgopts: --num-callers=2
+vgopts: --show-confl-seg=no
|
|
From: <sv...@va...> - 2008-03-18 17:08:09
|
Author: bart
Date: 2008-03-18 17:08:08 +0000 (Tue, 18 Mar 2008)
New Revision: 7733
Log:
Added command-line option --show-confl-seg (show conflicting segments).
Modified:
trunk/exp-drd/drd_error.c
trunk/exp-drd/drd_error.h
trunk/exp-drd/drd_main.c
Modified: trunk/exp-drd/drd_error.c
===================================================================
--- trunk/exp-drd/drd_error.c 2008-03-18 01:46:48 UTC (rev 7732)
+++ trunk/exp-drd/drd_error.c 2008-03-18 17:08:08 UTC (rev 7733)
@@ -39,11 +39,23 @@
#include "pub_tool_tooliface.h" // VG_(needs_tool_errors)()
+/* Local type definitions. */
+
typedef enum {
ConflictingAccessSupp
} DRD_SuppKind;
+/* Local variables. */
+
+static Bool s_drd_show_conflicting_segments = True;
+
+
+void set_show_conflicting_segments(const Bool scs)
+{
+ s_drd_show_conflicting_segments = scs;
+}
+
/* Describe a data address range [a,a+len[ as good as possible, for error */
/* messages, putting the result in ai. */
static
@@ -105,8 +117,11 @@
{
VG_(message)(Vg_UserMsg, "Allocation context: unknown.");
}
- thread_report_conflicting_segments(dri->tid,
- dri->addr, dri->size, dri->access_type);
+ if (s_drd_show_conflicting_segments)
+ {
+ thread_report_conflicting_segments(dri->tid,
+ dri->addr, dri->size, dri->access_type);
+ }
}
static Bool drd_tool_error_eq(VgRes res, Error* e1, Error* e2)
Modified: trunk/exp-drd/drd_error.h
===================================================================
--- trunk/exp-drd/drd_error.h 2008-03-18 01:46:48 UTC (rev 7732)
+++ trunk/exp-drd/drd_error.h 2008-03-18 17:08:08 UTC (rev 7733)
@@ -120,9 +120,8 @@
typedef struct {
} GenericErrInfo;
-void describe_addr(Addr const a, SizeT const len, AddrInfo* const ai);
-Char* describe_addr_text(Addr const a, SizeT const len, AddrInfo* const ai,
- Char* const buf, UInt const n_buf);
+
+void set_show_conflicting_segments(const Bool scs);
void drd_register_error_handlers(void);
Modified: trunk/exp-drd/drd_main.c
===================================================================
--- trunk/exp-drd/drd_main.c 2008-03-18 01:46:48 UTC (rev 7732)
+++ trunk/exp-drd/drd_main.c 2008-03-18 17:08:08 UTC (rev 7733)
@@ -71,6 +71,7 @@
static Bool drd_process_cmd_line_option(Char* arg)
{
+ Bool show_confl_seg = True;
Bool trace_barrier = False;
Bool trace_clientobj = False;
Bool trace_cond = False;
@@ -84,6 +85,7 @@
Char* trace_address = 0;
VG_BOOL_CLO (arg, "--drd-stats", drd_print_stats)
+ else VG_BOOL_CLO(arg, "--show-confl-seg", show_confl_seg)
else VG_BOOL_CLO(arg, "--trace-barrier", trace_barrier)
else VG_BOOL_CLO(arg, "--trace-clientobj", trace_clientobj)
else VG_BOOL_CLO(arg, "--trace-cond", trace_cond)
@@ -100,6 +102,8 @@
else
return False;
+ if (! show_confl_seg)
+ set_show_conflicting_segments(show_confl_seg);
if (trace_address)
{
drd_trace_address = VG_(strtoll16)(trace_address, 0);
|
|
From: Tom H. <th...@cy...> - 2008-03-18 06:18:08
|
Nightly build on alvis ( i686, Red Hat 7.3 ) started at 2008-03-18 03:15:02 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 379 tests, 78 stderr failures, 1 stdout failure, 29 post failures == memcheck/tests/addressable (stderr) memcheck/tests/badjump (stderr) memcheck/tests/describe-block (stderr) memcheck/tests/erringfds (stderr) memcheck/tests/leak-0 (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/leak-pool-0 (stderr) memcheck/tests/leak-pool-1 (stderr) memcheck/tests/leak-pool-2 (stderr) memcheck/tests/leak-pool-3 (stderr) memcheck/tests/leak-pool-4 (stderr) memcheck/tests/leak-pool-5 (stderr) memcheck/tests/leak-regroot (stderr) memcheck/tests/leak-tree (stderr) memcheck/tests/long_namespace_xml (stderr) memcheck/tests/lsframe1 (stderr) memcheck/tests/lsframe2 (stderr) memcheck/tests/malloc_free_fill (stderr) memcheck/tests/match-overrun (stderr) memcheck/tests/noisy_child (stderr) memcheck/tests/partial_load_dflt (stderr) memcheck/tests/partial_load_ok (stderr) memcheck/tests/partiallydefinedeq (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/sigkill (stderr) memcheck/tests/stack_changes (stderr) memcheck/tests/varinfo1 (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo3 (stderr) memcheck/tests/varinfo4 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/x86/bug152022 (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) memcheck/tests/x86/xor-undef-x86 (stderr) memcheck/tests/xml1 (stderr) massif/tests/alloc-fns-A (post) massif/tests/alloc-fns-B (post) massif/tests/basic (post) massif/tests/basic2 (post) massif/tests/big-alloc (post) massif/tests/culling1 (stderr) massif/tests/culling2 (stderr) massif/tests/custom_alloc (post) massif/tests/deep-A (post) massif/tests/deep-B (stderr) massif/tests/deep-B (post) massif/tests/deep-C (stderr) massif/tests/deep-C (post) massif/tests/deep-D (post) massif/tests/ignoring (post) massif/tests/insig (post) massif/tests/long-names (post) massif/tests/long-time (post) massif/tests/new-cpp (post) massif/tests/null (post) massif/tests/one (post) massif/tests/overloaded-new (post) massif/tests/peak (post) massif/tests/peak2 (stderr) massif/tests/peak2 (post) massif/tests/realloc (stderr) massif/tests/realloc (post) massif/tests/thresholds_0_0 (post) massif/tests/thresholds_0_10 (post) massif/tests/thresholds_10_0 (post) massif/tests/thresholds_10_10 (post) massif/tests/thresholds_5_0 (post) massif/tests/thresholds_5_10 (post) massif/tests/zero1 (post) massif/tests/zero2 (post) none/tests/blockfault (stderr) none/tests/faultstatus (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) none/tests/shell (stderr) none/tests/shell_valid1 (stderr) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) helgrind/tests/hg01_all_ok (stderr) helgrind/tests/hg02_deadlock (stderr) helgrind/tests/hg03_inherit (stderr) helgrind/tests/hg04_race (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/hg06_readshared (stderr) helgrind/tests/tc01_simple_race (stderr) helgrind/tests/tc02_simple_tls (stderr) helgrind/tests/tc03_re_excl (stderr) helgrind/tests/tc05_simple_race (stderr) helgrind/tests/tc06_two_races (stderr) helgrind/tests/tc07_hbl1 (stderr) helgrind/tests/tc08_hbl2 (stderr) helgrind/tests/tc09_bad_unlock (stderr) helgrind/tests/tc11_XCHG (stderr) helgrind/tests/tc12_rwl_trivial (stderr) helgrind/tests/tc14_laog_dinphils (stderr) helgrind/tests/tc16_byterace (stderr) helgrind/tests/tc17_sembar (stderr) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc19_shadowmem (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) helgrind/tests/tc23_bogus_condwait (stderr) helgrind/tests/tc24_nonzero_sem (stderr) exp-drd/tests/tc09_bad_unlock (stderr) exp-drd/tests/tc12_rwl_trivial (stderr) |
|
From: Tom H. <th...@cy...> - 2008-03-18 04:26:55
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2008-03-18 03:05:04 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 413 tests, 6 stderr failures, 2 stdout failures, 0 post failures == memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/scalar (stderr) none/tests/faultstatus (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc22_exit_w_lock (stderr) |
|
From: Tom H. <th...@cy...> - 2008-03-18 03:52:49
|
Nightly build on aston ( x86_64, Fedora Core 5 ) started at 2008-03-18 03:20:06 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 419 tests, 9 stderr failures, 1 stdout failure, 0 post failures == memcheck/tests/malloc_free_fill (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/x86/scalar (stderr) none/tests/blockfault (stderr) none/tests/faultstatus (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) |
|
From: Tom H. <th...@cy...> - 2008-03-18 03:40:00
|
Nightly build on trojan ( x86_64, Fedora Core 6 ) started at 2008-03-18 03:25:04 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 417 tests, 9 stderr failures, 5 stdout failures, 0 post failures == memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/bug133694 (stdout) memcheck/tests/x86/bug133694 (stderr) memcheck/tests/x86/scalar (stderr) none/tests/cmdline1 (stdout) none/tests/cmdline2 (stdout) none/tests/faultstatus (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) helgrind/tests/tc17_sembar (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) |
|
From: Tom H. <th...@cy...> - 2008-03-18 03:33:19
|
Nightly build on dellow ( x86_64, Fedora 8 ) started at 2008-03-18 03:10:03 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 413 tests, 8 stderr failures, 2 stdout failures, 0 post failures == memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/scalar (stderr) none/tests/faultstatus (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) |
|
From: Tom H. <th...@cy...> - 2008-03-18 03:17:31
|
Nightly build on gill ( x86_64, Fedora Core 2 ) started at 2008-03-18 03:00:02 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 419 tests, 32 stderr failures, 3 stdout failures, 0 post failures == memcheck/tests/malloc_free_fill (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/stack_switch (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) none/tests/amd64/insn_ssse3 (stdout) none/tests/amd64/insn_ssse3 (stderr) none/tests/amd64/ssse3_misaligned (stderr) none/tests/blockfault (stderr) none/tests/faultstatus (stderr) none/tests/fdleak_fcntl (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) none/tests/x86/insn_ssse3 (stdout) none/tests/x86/insn_ssse3 (stderr) none/tests/x86/ssse3_misaligned (stderr) helgrind/tests/hg01_all_ok (stderr) helgrind/tests/hg02_deadlock (stderr) helgrind/tests/hg03_inherit (stderr) helgrind/tests/hg04_race (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/tc01_simple_race (stderr) helgrind/tests/tc05_simple_race (stderr) helgrind/tests/tc06_two_races (stderr) helgrind/tests/tc09_bad_unlock (stderr) helgrind/tests/tc14_laog_dinphils (stderr) helgrind/tests/tc16_byterace (stderr) helgrind/tests/tc17_sembar (stderr) helgrind/tests/tc19_shadowmem (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) helgrind/tests/tc23_bogus_condwait (stderr) exp-drd/tests/pth_create_chain (stderr) |
|
From: <sv...@va...> - 2008-03-18 01:46:44
|
Author: sewardj
Date: 2008-03-18 01:46:48 +0000 (Tue, 18 Mar 2008)
New Revision: 7732
Log:
Change the representation of WordSets so as to reduce from 3 to 2 the
total number of hg_zalloc'd blocks needed to represent each set.
(Konstantin Serebryany).
Modified:
branches/HGDEV/helgrind/hg_wordset.c
Modified: branches/HGDEV/helgrind/hg_wordset.c
===================================================================
--- branches/HGDEV/helgrind/hg_wordset.c 2008-03-17 18:57:03 UTC (rev 7731)
+++ branches/HGDEV/helgrind/hg_wordset.c 2008-03-18 01:46:48 UTC (rev 7732)
@@ -172,18 +172,26 @@
UWord n_isSubsetOf;
};
-/* Create a new WordVec of the given size. */
-
+/* Create a new WordVec of the given size. The WordVec and the array
+ of UWord its .words field points at, are allocated in the same
+ piece of memory, so as to reduce allocator overheads. We have to
+ be careful to ensure that the pointed-to array is suitably aligned,
+ but that should be OK since WordVec has a size of 3 machine words.
+ To be on the safe side this is asserted for. */
static WordVec* new_WV_of_size ( WordSetU* wsu, UWord sz )
{
+ HChar* allocated_mem;
WordVec* wv;
tl_assert(sz >= 0);
- wv = wsu->alloc( sizeof(WordVec) );
+ tl_assert(0 == (sizeof(WordVec) % sizeof(UWord)));
+ allocated_mem = wsu->alloc( sizeof(WordVec) + (SizeT)sz * sizeof(UWord));
+ wv = (WordVec*) allocated_mem;
wv->owner = wsu;
wv->words = NULL;
wv->size = sz;
if (sz > 0) {
- wv->words = wsu->alloc( (SizeT)sz * sizeof(UWord) );
+ wv->words = (UWord*)(allocated_mem + sizeof(WordVec));
+ tl_assert(0 == (UWord)(wv->words) % sizeof(UWord));
}
return wv;
}
@@ -191,9 +199,6 @@
static void delete_WV ( WordVec* wv )
{
void (*dealloc)(void*) = wv->owner->dealloc;
- if (wv->words) {
- dealloc(wv->words);
- }
dealloc(wv);
}
static void delete_WV_for_FM ( UWord wv ) {
@@ -497,24 +502,29 @@
WordSet HG_(doubletonWS) ( WordSetU* wsu, UWord w1, UWord w2 )
{
- WordVec* wv;
+ UWord wv_arr[2];
+ WordVec wv_;
+ WordVec *wv = &wv_;
+
+ wv_.owner = wsu;
+ wv_.words = wv_arr;
+ wv_.size = 2;
+
wsu->n_doubleton++;
if (w1 == w2) {
- wv = new_WV_of_size(wsu, 1);
+ wv->size = 1;
wv->words[0] = w1;
}
else if (w1 < w2) {
- wv = new_WV_of_size(wsu, 2);
wv->words[0] = w1;
wv->words[1] = w2;
}
else {
tl_assert(w1 > w2);
- wv = new_WV_of_size(wsu, 2);
wv->words[0] = w2;
wv->words[1] = w1;
}
- return add_or_dealloc_WordVec( wsu, wv );
+ return find_or_alloc_and_add_WordVec( wsu, wv );
}
WordSet HG_(singletonWS) ( WordSetU* wsu, UWord w )
@@ -569,7 +579,7 @@
VG_(printf)(" isSubsetOf %10u\n", wsu->n_isSubsetOf);
// compute and print size distributions
- for (i = 0; i < (int)HG_(cardinalityWSU)(wsu); i++) {
+ for (i = 0; i < (Int)HG_(cardinalityWSU)(wsu); i++) {
WordVec *wv = do_ix2vec( wsu, i );
Int size = wv->size;
if (size >= d_size) size = d_size-1;
|