On Tue, Feb 16, 2010 at 05:58:17PM +0000, Nicholas Clark wrote:
> On Tue, Feb 16, 2010 at 05:50:40PM +0000, Tim Bunce wrote:
> > Thanks for background detail and test Nick. Very helpful.
> > I'll give it some thought, hopefully tonight.
> 
> No problem.
> 
> I didn't like finding a failing test, so tried to fix it. I failed on that,
> but at least figured out the cause, and ruled out and removed all the external
> dependencies.

Which was a big help. It's what I'd stalled on finding the time to tackle.

> About the only thing I didn't have in my description was that at the point of
> the SEGV, subr_entry_ix is 0. (Because it gets reset to that value.
> Effectively the profiler thinks that it's still running at the top level of
> the program, when actually its inside a method call.)

r1064 is a pleasingly simple fix :)

I think there are cases where subr_entry_ix > 0 but I'm fairly sure
they'll "work" in a reasonably sane, though slightly inaccurate, fashion.

> I suspect, but can't easily test from here, that a goto \&sub inside an
> import called via use on 5.8.8 and earlier will fail similarly for the same
> reason. And, I'd guess, tie invocations and overloading invocations.
> Maybe even goto \&sub inside BEGIN, CHECK or INIT blocks. :-)

Very plausible. I don't feel any great need to improve the accuracy of
profiling on perl < 5.8.8 so I'm happy to ignore anything except crashers.

Tim.

-- 
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]

Reply via email to