From: Josef Weidendorfer Date: Fri, 31 Mar 2006 13:16:15 +0000 (+0000) Subject: Option --dump-every-bb now takes a 64bit value on user X-Git-Tag: svn/VALGRIND_3_2_0~153 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=61068ab73d7af519a702aea2d98b9432ebef81b6;p=thirdparty%2Fvalgrind.git Option --dump-every-bb now takes a 64bit value on user request. Update/clarify documentation. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5806 --- diff --git a/callgrind/clo.c b/callgrind/clo.c index 184fed1068..bd6d02a63d 100644 --- a/callgrind/clo.c +++ b/callgrind/clo.c @@ -618,7 +618,7 @@ Bool CLG_(process_cmd_line_option)(Char* arg) CLG_(clo).dump_bb = False; else if (0 == VG_(strncmp)(arg, "--dump-every-bb=", 16)) - CLG_(clo).dump_every_bb = (Int)VG_(atoll)(&arg[16]); + CLG_(clo).dump_every_bb = (ULong)VG_(atoll)(&arg[16]); else if (0 == VG_(strcmp)(arg, "--collect-alloc=yes")) diff --git a/callgrind/docs/cl-manual.xml b/callgrind/docs/cl-manual.xml index 6c8797f422..068dedeba8 100644 --- a/callgrind/docs/cl-manual.xml +++ b/callgrind/docs/cl-manual.xml @@ -235,9 +235,7 @@ callgrind.out.pid.part-threa Periodic dumping after execution of a specified number of basic blocks. For this, use the command line option . - The resultion of the internal basic block counter of Valgrind is - only rough, so you should at least specify a interval of 50000 - basic blocks. + @@ -539,7 +537,11 @@ be executed. For interactive control use - Dump profile data each <count> basic blocks + Dump profile data every <count> basic blocks. + Whether a dump is needed is only checked when Valgrinds internal + scheduler is run. Therefore, the minimum setting useful is about 100000. + The count is a 64-bit value to make long dump periods possible. + diff --git a/callgrind/global.h b/callgrind/global.h index a1033923d2..abef4c9fce 100644 --- a/callgrind/global.h +++ b/callgrind/global.h @@ -70,7 +70,7 @@ struct _CommandLineOptions { Bool dump_bbs; /* Dump basic block information? */ /* Dump generation options */ - Int dump_every_bb; /* Dump every xxx BBs. */ + ULong dump_every_bb; /* Dump every xxx BBs. */ /* Collection options */ Bool separate_threads; /* Separate threads in dump? */ diff --git a/callgrind/threads.c b/callgrind/threads.c index eda9d0c46f..9626cd2eb6 100644 --- a/callgrind/threads.c +++ b/callgrind/threads.c @@ -182,7 +182,7 @@ void CLG_(run_thread)(ThreadId tid) if (CLG_(clo).dump_every_bb >0) { if (CLG_(stat).bb_executions - bbs_done > CLG_(clo).dump_every_bb) { - VG_(sprintf)(buf, "--dump-every-bb=%d", CLG_(clo).dump_every_bb); + VG_(sprintf)(buf, "--dump-every-bb=%llu", CLG_(clo).dump_every_bb); CLG_(dump_profile)(buf, False); bbs_done = CLG_(stat).bb_executions; }