Revision: 855 Author: tim.bunce Date: Thu Aug 6 19:20:50 2009 Log: Made JSON::Any optional. Fix main::RUNTIME fake sub generation when there's no subs in main:: Fixed compiler warnings. Resync'd tests with main::RUNTIME fake sub enabled. Fixed NYTProfTest.pm to properly abort test group on fatal error.
http://code.google.com/p/perl-devel-nytprof/source/detail?r=855 Modified: /trunk/NYTProf.xs /trunk/bin/nytprofhtml /trunk/t/lib/NYTProfTest.pm /trunk/t/test01.rdt /trunk/t/test02.rdt /trunk/t/test03.rdt /trunk/t/test05.rdt /trunk/t/test06.rdt /trunk/t/test07.rdt /trunk/t/test08.rdt /trunk/t/test09.rdt /trunk/t/test10.rdt /trunk/t/test11.rdt /trunk/t/test12.rdt /trunk/t/test13.rdt /trunk/t/test14.rdt /trunk/t/test16.rdt /trunk/t/test17-goto.rdt /trunk/t/test20-streval.rdt /trunk/t/test21-streval3.rdt /trunk/t/test22-strevala.rdt /trunk/t/test23-strevall.rdt /trunk/t/test30-fork-0.rdt /trunk/t/test40pmc.rdt /trunk/t/test50-disable.rdt /trunk/t/test51-enable.rdt /trunk/t/test60-subname.rdt /trunk/t/test61-submerge.rdt /trunk/t/test80-recurs.rdt ======================================= --- /trunk/NYTProf.xs Thu Aug 6 17:22:16 2009 +++ /trunk/NYTProf.xs Thu Aug 6 19:20:50 2009 @@ -304,6 +304,7 @@ static NV cumulative_overhead_ticks = 0.0; static NV cumulative_subr_secs = 0.0; static UV cumulative_subr_seqn = 0; +static int main_runtime_used = 0; static unsigned int ticks_per_sec = 0; /* 0 forces error if not set */ @@ -2255,7 +2256,8 @@ cumulative_subr_secs, subr_entry->initial_subr_secs, cumulative_overhead_ticks, subr_entry->initial_overhead_ticks, overhead_ticks, (int)subr_entry->called_cv_depth, - subr_entry->caller_fid, subr_entry->caller_line, subr_entry->subr_call_seqn); + subr_entry->caller_fid, subr_entry->caller_line, + (long unsigned int)subr_entry->subr_call_seqn); /* only count inclusive time for the outer-most calls */ if (subr_entry->called_cv_depth <= 1) { @@ -2436,9 +2438,10 @@ subr_entry->caller_subnam_sv = newSV(0); /* XXX add cache/stack thing for these SVs */ if (caller_cv == PL_main_cv) { - /* PL_main_cv is run-time main (compile, eg 'use' is main::BEGIN) */ + /* PL_main_cv is run-time main (compile, eg 'use', is main::BEGIN) */ subr_entry->caller_subpkg_pv = "main"; sv_setpv(subr_entry->caller_subnam_sv, "RUNTIME"); /* *cough* */ + ++main_runtime_used; } else { HV *stash_hv = NULL; @@ -2723,7 +2726,7 @@ subr_entry->called_cv_depth, subr_entry->initial_overhead_ticks, subr_entry->initial_subr_secs, - subr_entry->subr_call_seqn + (long unsigned int)subr_entry->subr_call_seqn ); } @@ -3149,13 +3152,19 @@ sub_name, (int)filename_len, filename, fid ); } - if (1) { /* Create a fake entry for main::RUNTIME subroutine */ + if (main_runtime_used) { /* Create fake entry for main::RUNTIME sub */ char *runtime = "main::RUNTIME"; - SV *sv; + SV *sv = *hv_fetch(hv, runtime, strlen(runtime), 1); + char *filename; /* get name of file that contained first profiled sub in 'main::' */ SV *pkg_filename_sv = sub_pkg_filename_sv(aTHX_ runtime); - sv = *hv_fetch(hv, runtime, strlen(runtime), 1); - sv_setpvf(sv, "%s:%d-%d", SvPV_nolen(pkg_filename_sv), 1, 1); + if (!pkg_filename_sv) { /* no subs in main, so guess */ + filename = hashtable.first_inserted->key; + } + else { + filename = SvPV_nolen(pkg_filename_sv); + } + sv_setpvf(sv, "%s:%d-%d", filename, 1, 1); } /* Iterate over PL_DBsub writing out fid and source line range of subs. ======================================= --- /trunk/bin/nytprofhtml Thu Aug 6 17:22:16 2009 +++ /trunk/bin/nytprofhtml Thu Aug 6 19:20:50 2009 @@ -16,7 +16,6 @@ use Getopt::Long; use List::Util qw(sum max); use File::Copy; -use JSON::Any; use Devel::NYTProf::Reader; use Devel::NYTProf::Core; @@ -28,6 +27,9 @@ ); use Devel::NYTProf::Constants qw(NYTP_SCi_CALLING_SUB); +my $json_any = eval { require JSON::Any; JSON::Any->import; JSON::Any->new } + or warn "Can't load JSON::Any module - HTML visualizations skipped.\n"; + our $VERSION = '2.10'; if ($VERSION != $Devel::NYTProf::Core::VERSION) { @@ -291,11 +293,14 @@ my $subs_in_file = $profile->subs_defined_in_file($filestr, 0); # include subs defined in this file # and/or called from subs defined in this file + #warn "$dot_file: @{[ keys %$subs_in_file ]}\n"; my $sub_filter = sub { my ($si, $calledby) = @_; return 1 if not defined $calledby; - my $include = ($subs_in_file->{$si->subname} + my $subname = $si->subname; + my $include = ($subs_in_file->{$subname} || $subs_in_file->{$calledby}); + #warn "Call graph $subname<-$calledby: ".($include ? "SHOW" : "skip")."\n"; return $include; }; output_subs_callgraph_dot_file($reporter, $dot_file, $sub_filter, 0); @@ -596,6 +601,8 @@ sub js_for_new_treemap { my ($name, $new_args, $tree_data) = @_; + return '' unless $json_any; + my $default_new_args = { titleHeight => 0, # no titles addLeftClickHandler => 1, # zoom in @@ -623,7 +630,6 @@ exists $new_args->{$_} or $new_args->{$_} = $default_new_args->{$_} for keys %$default_new_args; - our $json_any ||= JSON::Any->new; my $new_args_json = $json_any->objToJson($new_args); my $tree_data_json = $json_any->objToJson($tree_data); ======================================= --- /trunk/t/lib/NYTProfTest.pm Wed Aug 5 15:35:34 2009 +++ /trunk/t/lib/NYTProfTest.pm Thu Aug 6 19:20:50 2009 @@ -109,6 +109,7 @@ sub do_foreach_env_combination { my ($code) = @_; + COMBINATION: for my $env (@env_combinations) { my $prev_failures = count_of_failed_tests(); @@ -119,7 +120,10 @@ ($opts{v}) ? warn $context : print $context; ok eval { $code->(\%env) }; - diag "Test group aborted: $@" if $@; + if ($@) { + diag "Test group aborted: $@"; + last COMBINATION; + } # did any tests fail? my $failed = (count_of_failed_tests() - $prev_failures) ? 1 : 0; ======================================= --- /trunk/t/test01.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test01.rdt Thu Aug 6 19:20:50 2009 @@ -21,6 +21,7 @@ fid_fileinfo 1 [ test01.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::bar 6-8 fid_fileinfo 1 sub main::baz 10-14 fid_fileinfo 1 sub main::foo 1-4 @@ -56,6 +57,7 @@ sub_subinfo main::CORE:print called_by 1 2 [ 2 0 0 0 0 0 0 main::foo ] sub_subinfo main::CORE:print called_by 1 7 [ 4 0 0 0 0 0 0 main::bar ] sub_subinfo main::CORE:print called_by 1 11 [ 1 0 0 0 0 0 0 main::baz ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::bar [ 1 6 8 4 0 0 0 0 ] sub_subinfo main::bar called_by 1 3 [ 2 0 0 0 0 0 0 main::foo ] sub_subinfo main::bar called_by 1 12 [ 1 0 0 0 0 0 0 main::baz ] ======================================= --- /trunk/t/test02.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test02.rdt Thu Aug 6 19:20:50 2009 @@ -22,6 +22,7 @@ fid_fileinfo 1 [ test02.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::bar 6-8 fid_fileinfo 1 sub main::baz 10-16 fid_fileinfo 1 sub main::foo 1-4 @@ -64,6 +65,7 @@ sub_subinfo main::CORE:print called_by 1 2 [ 2 0 0 0 0 0 0 main::foo ] sub_subinfo main::CORE:print called_by 1 7 [ 7 0 0 0 0 0 0 main::bar ] sub_subinfo main::CORE:print called_by 1 11 [ 1 0 0 0 0 0 0 main::baz ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::bar [ 1 6 8 7 0 0 0 0 ] sub_subinfo main::bar called_by 1 3 [ 2 0 0 0 0 0 0 main::foo ] sub_subinfo main::bar called_by 1 12 [ 1 0 0 0 0 0 0 main::baz ] ======================================= --- /trunk/t/test03.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test03.rdt Thu Aug 6 19:20:50 2009 @@ -20,6 +20,7 @@ fid_fileinfo 1 [ test03.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::bar 7-9 fid_fileinfo 1 sub main::baz 11-15 fid_fileinfo 1 sub main::foo 1-5 @@ -51,6 +52,7 @@ sub_subinfo main::CORE:print called_by 1 2 [ 1 0 0 0 0 0 0 main::foo ] sub_subinfo main::CORE:print called_by 1 8 [ 2 0 0 0 0 0 0 main::bar ] sub_subinfo main::CORE:print called_by 1 12 [ 1 0 0 0 0 0 0 main::baz ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::bar [ 1 7 9 2 0 0 0 0 ] sub_subinfo main::bar called_by 1 13 [ 1 0 0 0 0 0 0 main::baz ] sub_subinfo main::bar called_by 1 17 [ 1 0 0 0 0 0 0 main::RUNTIME ] ======================================= --- /trunk/t/test05.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test05.rdt Thu Aug 6 19:20:50 2009 @@ -21,6 +21,7 @@ fid_fileinfo 1 [ test05.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::bar 12-17 fid_fileinfo 1 sub main::foo1 4-7 fid_fileinfo 1 sub main::foo2 8-11 @@ -58,6 +59,7 @@ sub_subinfo main::CORE:print called_by 1 9 [ 1 0 0 0 0 0 0 main::foo2 ] sub_subinfo main::CORE:print called_by 1 13 [ 2 0 0 0 0 0 0 main::bar ] sub_subinfo main::CORE:print called_by 1 19 [ 2 0 0 0 0 0 0 main::yeppers ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::bar [ 1 12 17 2 0 0 0 0 ] sub_subinfo main::bar called_by 1 6 [ 1 0 0 0 0 0 0 main::foo1 ] sub_subinfo main::bar called_by 1 10 [ 1 0 0 0 0 0 0 main::foo2 ] ======================================= --- /trunk/t/test06.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test06.rdt Thu Aug 6 19:20:50 2009 @@ -29,6 +29,7 @@ fid_fileinfo 1 [ test06.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::bar 19-28 fid_fileinfo 1 sub main::baz 30-40 fid_fileinfo 1 sub main::foo 9-17 @@ -83,6 +84,7 @@ sub_subinfo main::CORE:print called_by 1 10 [ 1 0 0 0 0 0 0 main::foo ] sub_subinfo main::CORE:print called_by 1 20 [ 1 0 0 0 0 0 0 main::bar ] sub_subinfo main::CORE:print called_by 1 31 [ 1 0 0 0 0 0 0 main::baz ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::bar [ 1 19 28 1 0 0 0 0 ] sub_subinfo main::bar called_by 1 43 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::baz [ 1 30 40 1 0 0 0 0 ] ======================================= --- /trunk/t/test07.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test07.rdt Thu Aug 6 19:20:50 2009 @@ -16,6 +16,7 @@ fid_fileinfo 1 [ test07.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 call 1 main::CORE:print [ 1 0 0 0 0 0 0 main::RUNTIME ] fid_line_time 1 1 [ 0 1 ] fid_sub_time 1 1 [ 0 1 ] @@ -25,3 +26,4 @@ sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] sub_subinfo main::CORE:print [ 1 0 0 1 0 0 0 0 ] sub_subinfo main::CORE:print called_by 1 1 [ 1 0 0 0 0 0 0 main::RUNTIME ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] ======================================= --- /trunk/t/test08.rdt Fri Jul 10 16:29:35 2009 +++ /trunk/t/test08.rdt Thu Aug 6 19:20:50 2009 @@ -18,6 +18,7 @@ fid_block_time 1 1 2 2 [ 0 1 ] fid_fileinfo 1 [ test08.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 eval 1 [ 1 0 ] fid_fileinfo 2 [ (eval 0)[test08.p:1] 1 1 2 2 0 0 ] fid_line_time 1 1 0 0 @@ -32,3 +33,4 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] ======================================= --- /trunk/t/test09.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test09.rdt Thu Aug 6 19:20:50 2009 @@ -25,6 +25,7 @@ fid_block_time 1 13 [ 0 1 ] fid_fileinfo 1 [ test09.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::bar 7-9 fid_fileinfo 1 sub main::foo 1-5 fid_fileinfo 1 call 11 main::foo [ 1 0 0 0 0 0 0 main::RUNTIME ] @@ -65,6 +66,7 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::bar [ 1 7 9 3 0 0 0 0 ] sub_subinfo main::bar called_by 1 13 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::bar called_by 2 3 [ 1 0 0 0 0 0 0 main::foo ] ======================================= --- /trunk/t/test10.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test10.rdt Thu Aug 6 19:20:50 2009 @@ -20,6 +20,7 @@ fid_fileinfo 1 [ test10.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:sleep 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 call 2 main::__ANON__[(eval 0)[test10.p:1]:1] [ 1 0 0 0 0 0 0 main::RUNTIME ] fid_fileinfo 1 eval 1 [ 1 0 ] fid_fileinfo 2 [ (eval 0)[test10.p:1] 1 1 2 2 0 0 ] @@ -41,5 +42,6 @@ sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] sub_subinfo main::CORE:sleep [ 1 0 0 1 0 0 0 0 ] sub_subinfo main::CORE:sleep called_by 2 1 [ 1 0 0 0 0 0 0 main::__ANON__[(eval 0)[test10.p:1]:1] ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::__ANON__[(eval 0)[test10.p:1]:1] [ 2 1 1 1 0 0 0 0 ] sub_subinfo main::__ANON__[(eval 0)[test10.p:1]:1] called_by 1 2 [ 1 0 0 0 0 0 0 main::RUNTIME ] ======================================= --- /trunk/t/test11.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test11.rdt Thu Aug 6 19:20:50 2009 @@ -23,6 +23,7 @@ fid_fileinfo 1 call 6 main::__ANON__[(eval 0)[test11.p:3]:1] [ 1 0 0 0 0 0 0 main::RUNTIME ] fid_fileinfo 1 eval 3 [ 1 0 ] fid_fileinfo 2 [ (eval 0)[test11.p:3] 1 3 2 2 0 0 ] +fid_fileinfo 2 sub main::RUNTIME 1-1 fid_fileinfo 2 sub main::__ANON__[(eval 0)[test11.p:3]:1] 1-1 fid_line_time 1 3 0 0 fid_line_time 1 3 1 0 @@ -38,6 +39,7 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 2 4 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 2 1 1 0 0 0 0 0 ] sub_subinfo main::__ANON__[(eval 0)[test11.p:3]:1] [ 2 1 1 2 0 0 0 0 ] sub_subinfo main::__ANON__[(eval 0)[test11.p:3]:1] called_by 1 5 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::__ANON__[(eval 0)[test11.p:3]:1] called_by 1 6 [ 1 0 0 0 0 0 0 main::RUNTIME ] ======================================= --- /trunk/t/test12.rdt Fri Jul 10 16:29:35 2009 +++ /trunk/t/test12.rdt Thu Aug 6 19:20:50 2009 @@ -16,6 +16,7 @@ fid_block_time 2 1 [ 0 1 ] fid_fileinfo 1 [ test12.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 2 [ test12.pl 2 2 0 0 ] fid_line_time 1 1 [ 0 1 ] fid_line_time 2 1 [ 0 1 ] @@ -25,3 +26,4 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] ======================================= --- /trunk/t/test13.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test13.rdt Thu Aug 6 19:20:50 2009 @@ -25,6 +25,7 @@ fid_fileinfo 1 [ test13.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::bar 7-9 fid_fileinfo 1 sub main::baz 11-17 fid_fileinfo 1 sub main::foo 3-5 @@ -65,6 +66,7 @@ sub_subinfo main::CORE:print called_by 1 4 [ 3 0 0 0 0 0 0 main::foo ] sub_subinfo main::CORE:print called_by 1 8 [ 1 0 0 0 0 0 0 main::bar ] sub_subinfo main::CORE:print called_by 1 12 [ 1 0 0 0 0 0 0 main::baz ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::bar [ 1 7 9 1 0 0 0 0 ] sub_subinfo main::bar called_by 1 20 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::baz [ 1 11 17 1 0 0 0 0 ] ======================================= --- /trunk/t/test14.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test14.rdt Thu Aug 6 19:20:50 2009 @@ -23,6 +23,7 @@ fid_block_time 2 20 [ 0 1 ] fid_fileinfo 1 [ test14.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 16-16 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 call 17 test14::pre [ 1 0 0 0 0 0 0 main::RUNTIME ] fid_fileinfo 1 call 18 AutoLoader::AUTOLOAD [ 1 0 0 0 0 0 0 main::RUNTIME ] fid_fileinfo 1 call 19 AutoLoader::AUTOLOAD [ 1 0 0 0 0 0 0 main::RUNTIME ] @@ -56,10 +57,11 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 16 16 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo test14::BEGIN [ 2 2 2 0 0 0 0 0 ] sub_subinfo test14::bar [ 2 16 18 1 0 0 0 0 ] -sub_subinfo test14::bar called_by 3 116 [ 1 0 0 0 0 0 0 main::RUNTIME ] +sub_subinfo test14::bar called_by 3 51 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo test14::foo [ 2 12 14 1 0 0 0 0 ] -sub_subinfo test14::foo called_by 3 116 [ 1 0 0 0 0 0 0 main::RUNTIME ] +sub_subinfo test14::foo called_by 3 51 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo test14::pre [ 2 8 8 1 0 0 0 0 ] sub_subinfo test14::pre called_by 1 17 [ 1 0 0 0 0 0 0 main::RUNTIME ] ======================================= --- /trunk/t/test16.rdt Sun Jul 26 12:54:21 2009 +++ /trunk/t/test16.rdt Thu Aug 6 19:20:50 2009 @@ -23,6 +23,7 @@ fid_fileinfo 1 sub main::BEGIN 6-6 fid_fileinfo 1 sub main::CORE:match 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::bar 20-27 fid_fileinfo 1 sub main::foo 8-18 fid_fileinfo 1 call 11 main::CORE:match [ 2 0 0 0 0 0 0 main::foo ] @@ -59,6 +60,7 @@ sub_subinfo main::CORE:match called_by 1 22 [ 3 0 0 0 0 0 0 main::bar ] sub_subinfo main::CORE:print [ 1 0 0 2 0 0 0 0 ] sub_subinfo main::CORE:print called_by 1 22 [ 2 0 0 0 0 0 0 main::bar ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::bar [ 1 20 27 2 0 0 0 0 ] sub_subinfo main::bar called_by 1 32 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::bar called_by 1 33 [ 1 0 0 0 0 0 0 main::RUNTIME ] ======================================= --- /trunk/t/test17-goto.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test17-goto.rdt Thu Aug 6 19:20:50 2009 @@ -23,6 +23,7 @@ fid_block_time 1 35 [ 0 1 ] fid_fileinfo 1 [ test17-goto.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::bar 26-28 fid_fileinfo 1 sub main::destination 18-20 fid_fileinfo 1 sub main::foo 30-33 @@ -58,6 +59,7 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::bar [ 1 26 28 1 0 0 0 0 ] sub_subinfo main::bar called_by 1 31 [ 1 0 0 0 0 0 0 main::foo ] sub_subinfo main::destination [ 1 18 20 1 0 0 0 0 ] ======================================= --- /trunk/t/test20-streval.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test20-streval.rdt Thu Aug 6 19:20:50 2009 @@ -26,6 +26,7 @@ fid_fileinfo 1 [ test20-streval.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::foo 3-3 fid_fileinfo 1 call 3 main::CORE:print [ 4 0 0 0 0 0 0 main::foo ] fid_fileinfo 1 eval 8 [ 1 0 ] @@ -69,6 +70,7 @@ sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] sub_subinfo main::CORE:print [ 1 0 0 4 0 0 0 0 ] sub_subinfo main::CORE:print called_by 1 3 [ 4 0 0 0 0 0 0 main::foo ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::foo [ 1 3 3 4 0 0 0 0 ] sub_subinfo main::foo called_by 2 1 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::foo called_by 3 1 [ 1 0 0 0 0 0 0 main::RUNTIME ] ======================================= --- /trunk/t/test21-streval3.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test21-streval3.rdt Thu Aug 6 19:20:50 2009 @@ -21,6 +21,7 @@ fid_block_time 1 17 2 4 [ 0 2 ] fid_fileinfo 1 [ test21-streval3.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::foo 4-4 fid_fileinfo 1 eval 17 [ 1 2 ] fid_fileinfo 2 [ (eval 0)[test21-streval3.p:17] 1 17 2 2 0 0 ] @@ -49,6 +50,7 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::foo [ 1 4 4 3 0 0 0 0 ] sub_subinfo main::foo called_by 2 3 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::foo called_by 3 3 [ 1 0 0 0 0 0 0 main::RUNTIME ] ======================================= --- /trunk/t/test22-strevala.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test22-strevala.rdt Thu Aug 6 19:20:50 2009 @@ -34,6 +34,7 @@ fid_fileinfo 1 eval 12 [ 1 2 ] fid_fileinfo 2 [ (eval 0)[test22-strevala.p:6] 1 6 2 2 0 0 ] fid_fileinfo 2 sub main::CORE:print 0-0 +fid_fileinfo 2 sub main::RUNTIME 1-1 fid_fileinfo 2 sub main::__ANON__[(eval 0)[test22-strevala.p:6]:1] 1-1 fid_fileinfo 2 call 1 main::CORE:print [ 1 0 0 0 0 0 0 main::__ANON__[(eval 0)[test22-strevala.p:6]:1] ] fid_fileinfo 3 [ (eval 0)[test22-strevala.p:9] 1 9 3 2 0 0 ] @@ -87,6 +88,7 @@ sub_subinfo main::CORE:print called_by 4 1 [ 1 0 0 0 0 0 0 main::__ANON__[(eval 0)[test22-strevala.p:9]:1] ] sub_subinfo main::CORE:print called_by 6 1 [ 1 0 0 0 0 0 0 main::__ANON__[(eval 0)[(eval 0)[test22-strevala.p:12]:2]:1] ] sub_subinfo main::CORE:print called_by 7 1 [ 1 0 0 0 0 0 0 main::__ANON__[(eval 0)[(eval 0)[test22-strevala.p:12]:2]:1] ] +sub_subinfo main::RUNTIME [ 2 1 1 0 0 0 0 0 ] sub_subinfo main::__ANON__[(eval 0)[(eval 0)[test22-strevala.p:12]:2]:1] [ 6 1 1 2 0 0 0 0 ] sub_subinfo main::__ANON__[(eval 0)[(eval 0)[test22-strevala.p:12]:2]:1] called_by 5 2 [ 2 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::__ANON__[(eval 0)[test22-strevala.p:6]:1] [ 2 1 1 1 0 0 0 0 ] ======================================= --- /trunk/t/test23-strevall.rdt Fri Jul 10 16:29:35 2009 +++ /trunk/t/test23-strevall.rdt Thu Aug 6 19:20:50 2009 @@ -18,6 +18,7 @@ fid_block_time 3 1 2 45 [ 0 1 ] fid_fileinfo 1 [ test23-strevall.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 2 [ (eval 0) 3 1 2 2 0 0 ] fid_fileinfo 3 [ /unknown-eval-invoker 3 130 0 0 ] fid_fileinfo 3 eval 1 [ 1 0 ] @@ -33,3 +34,4 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] ======================================= --- /trunk/t/test30-fork-0.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test30-fork-0.rdt Thu Aug 6 19:20:50 2009 @@ -24,6 +24,7 @@ fid_fileinfo 1 sub main::BEGIN 0-0 fid_fileinfo 1 sub main::CORE:print 0-0 fid_fileinfo 1 sub main::CORE:wait 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::other 6-8 fid_fileinfo 1 sub main::postfork 10-13 fid_fileinfo 1 sub main::prefork 1-4 @@ -64,6 +65,7 @@ sub_subinfo main::CORE:print called_by 1 11 [ 1 0 0 0 0 0 0 main::postfork ] sub_subinfo main::CORE:wait [ 1 0 0 1 0 0 0 0 ] sub_subinfo main::CORE:wait called_by 1 22 [ 1 0 0 0 0 0 0 main::RUNTIME ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::other [ 1 6 8 3 0 0 0 0 ] sub_subinfo main::other called_by 1 3 [ 1 0 0 0 0 0 0 main::prefork ] sub_subinfo main::other called_by 1 12 [ 1 0 0 0 0 0 0 main::postfork ] ======================================= --- /trunk/t/test40pmc.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test40pmc.rdt Thu Aug 6 19:20:50 2009 @@ -16,6 +16,7 @@ fid_block_time 2 6 [ 0 1 ] fid_fileinfo 1 [ test40pmc.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 3-3 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 call 4 test40pmc::foo [ 1 0 0 0 0 0 0 main::RUNTIME ] fid_fileinfo 2 [ test40pmc.pm 2 3 0 0 ] fid_fileinfo 2 sub test40pmc::foo 5-7 @@ -27,5 +28,6 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 3 3 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo test40pmc::foo [ 2 5 7 1 0 0 0 0 ] sub_subinfo test40pmc::foo called_by 1 4 [ 1 0 0 0 0 0 0 main::RUNTIME ] ======================================= --- /trunk/t/test50-disable.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test50-disable.rdt Thu Aug 6 19:20:50 2009 @@ -18,6 +18,7 @@ fid_block_time 1 5 [ 0 1 ] fid_fileinfo 1 [ test50-disable.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 call 2 DB::disable_profile [ 1 0 0 0 0 0 0 main::RUNTIME ] fid_fileinfo 1 call 6 DB::disable_profile [ 1 0 0 0 0 0 0 main::RUNTIME ] fid_line_time 1 1 [ 0 1 ] @@ -35,3 +36,4 @@ sub_subinfo DB::disable_profile called_by 1 2 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo DB::disable_profile called_by 1 6 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] ======================================= --- /trunk/t/test51-enable.rdt Sat Jul 25 18:02:45 2009 +++ /trunk/t/test51-enable.rdt Thu Aug 6 19:20:50 2009 @@ -29,6 +29,7 @@ fid_fileinfo 2 sub main::sub1 1-1 fid_fileinfo 3 [ (eval 0)[test51-enable.p:7] 1 7 3 4 0 0 ] fid_fileinfo 3 sub main::CORE:unlink 0-0 +fid_fileinfo 3 sub main::RUNTIME 1-1 fid_fileinfo 3 sub main::sub9 1-1 fid_line_time 1 3 [ 0 1 ] fid_line_time 1 4 [ 0 1 ] @@ -52,6 +53,7 @@ sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] sub_subinfo main::CORE:unlink [ 3 0 0 1 0 0 0 0 ] sub_subinfo main::CORE:unlink called_by 1 5 [ 1 0 0 0 0 0 0 main::RUNTIME ] +sub_subinfo main::RUNTIME [ 3 1 1 0 0 0 0 0 ] sub_subinfo main::sub1 [ 2 1 1 1 0 0 0 0 ] sub_subinfo main::sub1 called_by 1 9 [ 1 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::sub9 [ 3 1 1 0 0 0 0 0 ] ======================================= --- /trunk/t/test60-subname.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test60-subname.rdt Thu Aug 6 19:20:50 2009 @@ -25,6 +25,7 @@ fid_fileinfo 1 [ test60-subname.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 2-2 fid_fileinfo 1 sub main::CORE:wait 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::launch 27-27 fid_fileinfo 1 call 5 Devel::NYTProf::Test::example_xsub [ 1 0 0 0 0 0 0 main::RUNTIME ] fid_fileinfo 1 call 9 Devel::NYTProf::Test::example_xsub [ 1 0 0 0 0 0 0 main::RUNTIME ] @@ -71,5 +72,6 @@ sub_subinfo main::BEGIN [ 1 2 2 0 0 0 0 0 ] sub_subinfo main::CORE:wait [ 1 0 0 1 0 0 0 0 ] sub_subinfo main::CORE:wait called_by 1 22 [ 1 0 0 0 0 0 0 main::RUNTIME ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::launch [ 1 27 27 1 0 0 0 0 ] sub_subinfo main::launch called_by 1 28 [ 1 0 0 0 0 0 0 main::RUNTIME ] ======================================= --- /trunk/t/test61-submerge.rdt Thu Aug 6 18:04:58 2009 +++ /trunk/t/test61-submerge.rdt Thu Aug 6 19:20:50 2009 @@ -32,6 +32,7 @@ fid_fileinfo 3 call 1 main::foo [ 1 0 0 0 0 0 0 main::__ANON__[(eval 0)[test61-submerge.p:8]:1] ] fid_fileinfo 4 [ (eval 0)[test61-submerge.p:8] 1 8 4 2 0 0 ] fid_fileinfo 4 sub main::CORE:print 0-0 +fid_fileinfo 4 sub main::RUNTIME 1-1 fid_fileinfo 4 sub main::__ANON__[(eval 0)[test61-submerge.p:8]:1] 1-1 fid_fileinfo 4 call 1 main::foo [ 1 0 0 0 0 0 0 main::__ANON__[(eval 0)[test61-submerge.p:8]:1] ] fid_line_time 1 4 [ 0 3 ] @@ -52,6 +53,7 @@ sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] sub_subinfo main::CORE:print [ 4 0 0 3 0 0 0 0 ] sub_subinfo main::CORE:print called_by 1 4 [ 3 0 0 0 0 0 0 main::foo ] +sub_subinfo main::RUNTIME [ 4 1 1 0 0 0 0 0 ] sub_subinfo main::__ANON__[(eval 0)[test61-submerge.p:8]:1] [ 2 1 1 3 0 0 0 0 ] sub_subinfo main::__ANON__[(eval 0)[test61-submerge.p:8]:1] called_by 1 8 [ 3 0 0 0 0 0 0 main::RUNTIME ] sub_subinfo main::foo [ 1 4 4 3 0 0 0 0 ] ======================================= --- /trunk/t/test80-recurs.rdt Mon Jul 20 11:56:41 2009 +++ /trunk/t/test80-recurs.rdt Thu Aug 6 19:20:50 2009 @@ -16,6 +16,7 @@ fid_block_time 1 7 [ 0 1 ] fid_fileinfo 1 [ test80-recurs.p 1 2 0 0 ] fid_fileinfo 1 sub main::BEGIN 0-0 +fid_fileinfo 1 sub main::RUNTIME 1-1 fid_fileinfo 1 sub main::recurs 1-5 fid_fileinfo 1 call 4 main::recurs [ 2 0 0 0 0 0 2 main::recurs ] fid_fileinfo 1 call 7 main::recurs [ 1 0 0 0 0 0 0 main::RUNTIME ] @@ -29,6 +30,7 @@ profile_modes fid_line_time line profile_modes fid_sub_time sub sub_subinfo main::BEGIN [ 1 0 0 0 0 0 0 0 ] +sub_subinfo main::RUNTIME [ 1 1 1 0 0 0 0 0 ] sub_subinfo main::recurs [ 1 1 5 3 0 0 2 0 ] sub_subinfo main::recurs called_by 1 4 [ 2 0 0 0 0 0 2 main::recurs ] sub_subinfo main::recurs called_by 1 7 [ 1 0 0 0 0 0 0 main::RUNTIME ] --~--~---------~--~----~------------~-------~--~----~ You've received this message because you are subscribed to the Devel::NYTProf Development User group. Group hosted at: http://groups.google.com/group/develnytprof-dev Project hosted at: http://perl-devel-nytprof.googlecode.com CPAN distribution: http://search.cpan.org/dist/Devel-NYTProf To post, email: [email protected] To unsubscribe, email: [email protected] -~----------~----~----~----~------~----~------~--~---
