Filename | /Users/ap13/perl5/lib/perl5/darwin-2level/Package/Stash/XS.pm |
Statements | Executed 13 statements in 686µs |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
674 | 2 | 2 | 9.52ms | 10.5ms | add_symbol (xsub) | Package::Stash::XS::
1203 | 1 | 1 | 4.17ms | 4.86ms | get_symbol (xsub) | Package::Stash::XS::
2564 | 8 | 2 | 1.91ms | 1.98ms | namespace (xsub) | Package::Stash::XS::
458 | 1 | 1 | 1.32ms | 1.55ms | has_symbol (xsub) | Package::Stash::XS::
169 | 1 | 1 | 976µs | 1.54ms | get_or_add_symbol (xsub) | Package::Stash::XS::
92 | 3 | 2 | 836µs | 836µs | new (xsub) | Package::Stash::XS::
766 | 6 | 2 | 568µs | 568µs | name (xsub) | Package::Stash::XS::
7 | 1 | 1 | 70µs | 75µs | list_all_symbols (xsub) | Package::Stash::XS::
1 | 1 | 1 | 28µs | 47µs | get_all_symbols (xsub) | Package::Stash::XS::
1 | 1 | 1 | 14µs | 14µs | BEGIN@2 | Package::Stash::XS::
1 | 1 | 1 | 12µs | 12µs | BEGIN@10 | Package::Stash::XS::
1 | 1 | 1 | 11µs | 30µs | BEGIN@8 | Package::Stash::XS::
2 | 1 | 1 | 9µs | 10µs | remove_symbol (xsub) | Package::Stash::XS::
1 | 1 | 1 | 8µs | 13µs | BEGIN@9 | Package::Stash::XS::
1 | 1 | 1 | 8µs | 8µs | BEGIN@13 | Package::Stash::XS::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | package Package::Stash::XS; | ||||
2 | # spent 14µs within Package::Stash::XS::BEGIN@2 which was called:
# once (14µs+0s) by Module::Runtime::require_module at line 4 | ||||
3 | 1 | 8µs | $Package::Stash::XS::AUTHORITY = 'cpan:DOY'; | ||
4 | 1 | 47µs | 1 | 14µs | } # spent 14µs making 1 call to Package::Stash::XS::BEGIN@2 |
5 | { | ||||
6 | 2 | 2µs | $Package::Stash::XS::VERSION = '0.26'; | ||
7 | } | ||||
8 | 2 | 31µs | 2 | 50µs | # spent 30µs (11+19) within Package::Stash::XS::BEGIN@8 which was called:
# once (11µs+19µs) by Module::Runtime::require_module at line 8 # spent 30µs making 1 call to Package::Stash::XS::BEGIN@8
# spent 19µs making 1 call to strict::import |
9 | 2 | 23µs | 2 | 18µs | # spent 13µs (8+5) within Package::Stash::XS::BEGIN@9 which was called:
# once (8µs+5µs) by Module::Runtime::require_module at line 9 # spent 13µs making 1 call to Package::Stash::XS::BEGIN@9
# spent 5µs making 1 call to warnings::import |
10 | 2 | 49µs | 1 | 12µs | # spent 12µs within Package::Stash::XS::BEGIN@10 which was called:
# once (12µs+0s) by Module::Runtime::require_module at line 10 # spent 12µs making 1 call to Package::Stash::XS::BEGIN@10 |
11 | # ABSTRACT: faster and more correct implementation of the Package::Stash API | ||||
12 | |||||
13 | 2 | 86µs | 1 | 8µs | # spent 8µs within Package::Stash::XS::BEGIN@13 which was called:
# once (8µs+0s) by Module::Runtime::require_module at line 13 # spent 8µs making 1 call to Package::Stash::XS::BEGIN@13 |
14 | XSLoader::load( | ||||
15 | __PACKAGE__, | ||||
16 | # we need to be careful not to touch $VERSION at compile time, otherwise | ||||
17 | # DynaLoader will assume it's set and check against it, which will cause | ||||
18 | # fail when being run in the checkout without dzil having set the actual | ||||
19 | # $VERSION | ||||
20 | exists $Package::Stash::XS::{VERSION} | ||||
21 | 1 | 428µs | 1 | 416µs | ? ${ $Package::Stash::XS::{VERSION} } : (), # spent 416µs making 1 call to XSLoader::load |
22 | ); | ||||
23 | |||||
24 | |||||
25 | 1 | 12µs | 1; | ||
26 | |||||
27 | __END__ | ||||
# spent 10.5ms (9.52+978µs) within Package::Stash::XS::add_symbol which was called 674 times, avg 16µs/call:
# 662 times (9.30ms+947µs) by Class::MOP::Package::add_package_symbol at line 230 of Class/MOP/Package.pm, avg 15µs/call
# 12 times (213µs+31µs) by Package::Stash::BEGIN@17 at line 31 of Package/Stash.pm, avg 20µs/call | |||||
# spent 47µs (28+19) within Package::Stash::XS::get_all_symbols which was called:
# once (28µs+19µs) by Package::Stash::BEGIN@17 at line 29 of Package/Stash.pm | |||||
# spent 1.54ms (976µs+569µs) within Package::Stash::XS::get_or_add_symbol which was called 169 times, avg 9µs/call:
# 169 times (976µs+569µs) by Class::MOP::Package::get_or_add_package_symbol at line 252 of Class/MOP/Package.pm, avg 9µs/call | |||||
# spent 4.86ms (4.17+685µs) within Package::Stash::XS::get_symbol which was called 1203 times, avg 4µs/call:
# 1203 times (4.17ms+685µs) by Class::MOP::Package::get_package_symbol at line 247 of Class/MOP/Package.pm, avg 4µs/call | |||||
# spent 1.55ms (1.32+225µs) within Package::Stash::XS::has_symbol which was called 458 times, avg 3µs/call:
# 458 times (1.32ms+225µs) by Class::MOP::Package::has_package_symbol at line 242 of Class/MOP/Package.pm, avg 3µs/call | |||||
# spent 75µs (70+5) within Package::Stash::XS::list_all_symbols which was called 7 times, avg 11µs/call:
# 7 times (70µs+5µs) by Class::MOP::Package::list_all_package_symbols at line 262 of Class/MOP/Package.pm, avg 11µs/call | |||||
# spent 568µs within Package::Stash::XS::name which was called 766 times, avg 742ns/call:
# 662 times (492µs+0s) by Package::Stash::XS::add_symbol at line 230 of Class/MOP/Package.pm, avg 744ns/call
# 84 times (60µs+0s) by Package::Stash::XS::namespace at line 252 of Class/MOP/Package.pm, avg 711ns/call
# 13 times (11µs+0s) by Package::Stash::XS::add_symbol or Package::Stash::XS::namespace at line 31 of Package/Stash.pm, avg 869ns/call
# 3 times (2µs+0s) by Package::Stash::XS::namespace at line 242 of Class/MOP/Package.pm, avg 667ns/call
# 3 times (2µs+0s) by Package::Stash::XS::namespace at line 247 of Class/MOP/Package.pm, avg 633ns/call
# once (1µs+0s) by Package::Stash::XS::namespace at line 29 of Package/Stash.pm | |||||
# spent 1.98ms (1.91+66µs) within Package::Stash::XS::namespace which was called 2564 times, avg 772ns/call:
# 1203 times (683µs+2µs) by Package::Stash::XS::get_symbol at line 247 of Class/MOP/Package.pm, avg 569ns/call
# 662 times (454µs+0s) by Package::Stash::XS::add_symbol at line 230 of Class/MOP/Package.pm, avg 687ns/call
# 458 times (223µs+2µs) by Package::Stash::XS::has_symbol at line 242 of Class/MOP/Package.pm, avg 491ns/call
# 219 times (509µs+60µs) by Package::Stash::XS::get_or_add_symbol at line 252 of Class/MOP/Package.pm, avg 3µs/call
# 12 times (19µs+900ns) by Package::Stash::XS::add_symbol at line 31 of Package/Stash.pm, avg 2µs/call
# 7 times (5µs+0s) by Package::Stash::XS::list_all_symbols at line 262 of Class/MOP/Package.pm, avg 757ns/call
# 2 times (1µs+0s) by Package::Stash::XS::remove_symbol at line 257 of Class/MOP/Package.pm, avg 500ns/call
# once (18µs+1µs) by Package::Stash::XS::get_all_symbols at line 29 of Package/Stash.pm | |||||
# spent 836µs within Package::Stash::XS::new which was called 92 times, avg 9µs/call:
# 90 times (794µs+0s) by Class::MOP::Package::_package_stash at line 218 of Class/MOP/Package.pm, avg 9µs/call
# once (36µs+0s) by Package::Stash::BEGIN@17 at line 27 of Package/Stash.pm
# once (6µs+0s) by Package::Stash::BEGIN@17 at line 28 of Package/Stash.pm | |||||
# spent 10µs (9+1000ns) within Package::Stash::XS::remove_symbol which was called 2 times, avg 5µs/call:
# 2 times (9µs+1000ns) by Class::MOP::Package::remove_package_symbol at line 257 of Class/MOP/Package.pm, avg 5µs/call |