← Index
NYTProf Performance Profile   « block view • line view • sub view »
For bin/hailo
  Run on Thu Oct 21 22:50:37 2010
Reported on Thu Oct 21 22:52:05 2010

Filename/home/hinrik/perl5/perlbrew/perls/perl-5.13.5/lib/5.13.5/autodie.pm
StatementsExecuted 17 statements in 472µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
1113.94ms8.25msautodie::::BEGIN@6autodie::BEGIN@6
11134µs34µsautodie::::BEGIN@2autodie::BEGIN@2
11116µs22µsautodie::::BEGIN@3autodie::BEGIN@3
11112µs25µsautodie::::BEGIN@4autodie::BEGIN@4
11110µs74µsautodie::::BEGIN@14autodie::BEGIN@14
1117µs7µsautodie::::importautodie::import
1116µs6µsautodie::::BEGIN@35autodie::BEGIN@35
1115µs5µsautodie::::BEGIN@10autodie::BEGIN@10
0000s0sautodie::::unimportautodie::unimport
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package autodie;
2239µs134µs
# spent 34µs within autodie::BEGIN@2 which was called: # once (34µs+0s) by Hailo::BEGIN@4 at line 2
use 5.008;
# spent 34µs making 1 call to autodie::BEGIN@2
3226µs227µs
# spent 22µs (16+6) within autodie::BEGIN@3 which was called: # once (16µs+6µs) by Hailo::BEGIN@4 at line 3
use strict;
# spent 22µs making 1 call to autodie::BEGIN@3 # spent 6µs making 1 call to strict::import
4225µs238µs
# spent 25µs (12+13) within autodie::BEGIN@4 which was called: # once (12µs+13µs) by Hailo::BEGIN@4 at line 4
use warnings;
# spent 25µs making 1 call to autodie::BEGIN@4 # spent 13µs making 1 call to warnings::import
5
62179µs18.25ms
# spent 8.25ms (3.94+4.31) within autodie::BEGIN@6 which was called: # once (3.94ms+4.31ms) by Hailo::BEGIN@4 at line 6
use Fatal ();
# spent 8.25ms making 1 call to autodie::BEGIN@6
716µsour @ISA = qw(Fatal);
81700nsour $VERSION;
9
10
# spent 5µs within autodie::BEGIN@10 which was called: # once (5µs+0s) by Hailo::BEGIN@4 at line 12
BEGIN {
1115µs $VERSION = '2.10';
12128µs15µs}
# spent 5µs making 1 call to autodie::BEGIN@10
13
14164µs
# spent 74µs (10+64) within autodie::BEGIN@14 which was called: # once (10µs+64µs) by Hailo::BEGIN@4 at line 29
use constant ERROR_WRONG_FATAL => q{
# spent 64µs making 1 call to constant::import
15Incorrect version of Fatal.pm loaded by autodie.
16
17The autodie pragma uses an updated version of Fatal to do its
18heavy lifting. We seem to have loaded Fatal version %s, which is
19probably the version that came with your version of Perl. However
20autodie needs version %s, which would have come bundled with
21autodie.
22
23You may be able to solve this problem by adding the following
24line of code to your main program, before any use of Fatal or
25autodie.
26
27 use lib "%s";
28
29277µs174µs};
# spent 74µs making 1 call to autodie::BEGIN@14
30
31# We have to check we've got the right version of Fatal before we
32# try to compile the rest of our code, lest we use a constant
33# that doesn't exist.
34
35
# spent 6µs within autodie::BEGIN@35 which was called: # once (6µs+0s) by Hailo::BEGIN@4 at line 51
BEGIN {
36
37 # If we have the wrong Fatal, then we've probably loaded the system
38 # one, not our own. Complain, and give a useful hint. ;)
39
4016µs if ($Fatal::VERSION ne $VERSION) {
41 my $autodie_path = $INC{'autodie.pm'};
42
43 $autodie_path =~ s/autodie\.pm//;
44
45 require Carp;
46
47 Carp::croak sprintf(
48 ERROR_WRONG_FATAL, $Fatal::VERSION, $VERSION, $autodie_path
49 );
50 }
51165µs16µs}
# spent 6µs making 1 call to autodie::BEGIN@35
52
53# When passing args to Fatal we want to keep the first arg
54# (our package) in place. Hence the splice.
55
56
# spent 7µs within autodie::import which was called: # once (7µs+0s) by Hailo::BEGIN@4 at line 4 of lib/Hailo.pm
sub import {
57211µs splice(@_,1,0,Fatal::LEXICAL_TAG);
5812.33ms goto &Fatal::import;
# spent 2.33ms making 1 call to Fatal::import
59}
60
61sub unimport {
62 splice(@_,1,0,Fatal::LEXICAL_TAG);
63 goto &Fatal::unimport;
64}
65
6614µs1;
67
68__END__