| Filename | /usr/share/perl/5.10/warnings/register.pm |
| Statements | Executed 265 statements in 755µs |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 4 | 4 | 4 | 669µs | 743µs | warnings::register::import |
| 8 | 2 | 1 | 74µs | 74µs | warnings::register::mkMask |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | package warnings::register; | ||||
| 2 | |||||
| 3 | 1 | 1µs | our $VERSION = '1.01'; | ||
| 4 | |||||
| 5 | 1 | 1µs | require warnings; | ||
| 6 | |||||
| 7 | sub mkMask | ||||
| 8 | { | ||||
| 9 | 8 | 12µs | my ($bit) = @_; | ||
| 10 | 8 | 10µs | my $mask = ""; | ||
| 11 | |||||
| 12 | 8 | 19µs | vec($mask, $bit, 1) = 1; | ||
| 13 | 8 | 51µs | return $mask; | ||
| 14 | } | ||||
| 15 | |||||
| 16 | sub import | ||||
| 17 | # spent 743µs (669+74) within warnings::register::import which was called 4 times, avg 186µs/call:
# once (193µs+20µs) by overload::BEGIN@139 at line 139 of overload.pm
# once (169µs+20µs) by Tie::Hash::BEGIN@6 at line 6 of Tie/Hash.pm
# once (154µs+17µs) by vars::BEGIN@7 at line 7 of vars.pm
# once (153µs+17µs) by constant::BEGIN@4 at line 4 of constant.pm | ||||
| 18 | 4 | 5µs | shift; | ||
| 19 | 4 | 22µs | my $package = (caller(0))[0]; | ||
| 20 | 4 | 29µs | if (! defined $warnings::Bits{$package}) { | ||
| 21 | 4 | 23µs | 4 | 41µs | $warnings::Bits{$package} = mkMask($warnings::LAST_BIT); # spent 41µs making 4 calls to warnings::register::mkMask, avg 10µs/call |
| 22 | 4 | 9µs | vec($warnings::Bits{'all'}, $warnings::LAST_BIT, 1) = 1; | ||
| 23 | 4 | 6µs | $warnings::Offsets{$package} = $warnings::LAST_BIT ++; | ||
| 24 | 4 | 60µs | foreach my $k (keys %warnings::Bits) { | ||
| 25 | 194 | 470µs | vec($warnings::Bits{$k}, $warnings::LAST_BIT, 1) = 0; | ||
| 26 | } | ||||
| 27 | 4 | 22µs | 4 | 33µs | $warnings::DeadBits{$package} = mkMask($warnings::LAST_BIT); # spent 33µs making 4 calls to warnings::register::mkMask, avg 8µs/call |
| 28 | 4 | 11µs | vec($warnings::DeadBits{'all'}, $warnings::LAST_BIT++, 1) = 1; | ||
| 29 | } | ||||
| 30 | } | ||||
| 31 | |||||
| 32 | 1 | 4µs | 1; |