| Filename | /home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/5.10.1/warnings/register.pm |
| Statements | Executed 198 statements in 1.27ms |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 3 | 3 | 3 | 1.10ms | 1.23ms | warnings::register::import |
| 6 | 2 | 1 | 130µs | 130µs | warnings::register::mkMask |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | package warnings::register; | ||||
| 2 | |||||
| 3 | 1 | 3µs | our $VERSION = '1.01'; | ||
| 4 | |||||
| 5 | =pod | ||||
| 6 | |||||
| - - | |||||
| 24 | 1 | 3µs | require warnings; | ||
| 25 | |||||
| 26 | sub mkMask | ||||
| 27 | { | ||||
| 28 | 24 | 184µs | my ($bit) = @_; | ||
| 29 | my $mask = ""; | ||||
| 30 | |||||
| 31 | vec($mask, $bit, 1) = 1; | ||||
| 32 | return $mask; | ||||
| 33 | } | ||||
| 34 | |||||
| 35 | sub import | ||||
| 36 | # spent 1.23ms (1.10+130µs) within warnings::register::import which was called 3 times, avg 411µs/call:
# once (407µs+45µs) by overload::BEGIN@139 at line 139 of overload.pm
# once (352µs+43µs) by constant::BEGIN@4 at line 4 of constant.pm
# once (343µs+41µs) by vars::BEGIN@7 at line 7 of vars.pm | ||||
| 37 | 9 | 115µs | shift; | ||
| 38 | my $package = (caller(0))[0]; | ||||
| 39 | 18 | 233µs | if (! defined $warnings::Bits{$package}) { | ||
| 40 | 3 | 74µs | $warnings::Bits{$package} = mkMask($warnings::LAST_BIT); # spent 74µs making 3 calls to warnings::register::mkMask, avg 25µs/call | ||
| 41 | vec($warnings::Bits{'all'}, $warnings::LAST_BIT, 1) = 1; | ||||
| 42 | $warnings::Offsets{$package} = $warnings::LAST_BIT ++; | ||||
| 43 | foreach my $k (keys %warnings::Bits) { | ||||
| 44 | 144 | 717µs | vec($warnings::Bits{$k}, $warnings::LAST_BIT, 1) = 0; | ||
| 45 | } | ||||
| 46 | 3 | 55µs | $warnings::DeadBits{$package} = mkMask($warnings::LAST_BIT); # spent 55µs making 3 calls to warnings::register::mkMask, avg 18µs/call | ||
| 47 | vec($warnings::DeadBits{'all'}, $warnings::LAST_BIT++, 1) = 1; | ||||
| 48 | } | ||||
| 49 | } | ||||
| 50 | |||||
| 51 | 1 | 12µs | 1; |