timbunce / devel-nytprof

Devel::NYTProf is a powerful feature-rich source code profiler for Perl. (Mostly in maintenance mode, so PRs are much more likely to be acted upon than Issues.)
http://blog.timbunce.org/tag/nytprof/
67 stars 50 forks source link

support SSNEW*() macros returning SSize_t instead of I32 #200

Closed tonycoz closed 1 year ago

tonycoz commented 1 year ago

I recently committed a change to blead perl changing the return type of the SSNEW*() macros to SSize_t, since the I32 would overflow well before the scope stack index itself.

This change adapts Devel::NYTProf to store the full offset. I expect this to make no difference to older perls, as SSPTR() is a simple macro adding the supplied offset to the scope stack base pointer.

jkeenan commented 1 year ago

@timbunce, I am currently testing this p.r. as best I can. Do you have an opinion about the C (XS) code?