12 years agoFactor out op class guessing
Florian Ragwitz [Mon, 1 Oct 2012 01:29:16 +0000]
Factor out op class guessing

Sometimes callers already know what kind of class the op they're dealing with
belongs to. If they do, they can now just pass down that information into
op_size_class, avoiding possibly wrong guesses from cc_opclass based on op_type.

12 years agoAttempt to count PL_compiling
Florian Ragwitz [Mon, 1 Oct 2012 01:27:16 +0000]
Attempt to count PL_compiling

Often, PL_compiling will have an op_type of OP_NULL, making it being counted as
a regular base op. However, it's memory is being allocated within the
PerlInterpreter structure or in a proper global as a full COP, not just a
BASEOP. Therefore it's possible for it to be counted wrong right now.

12 years agoCount lexical hint hashes in COPs
Florian Ragwitz [Mon, 1 Oct 2012 01:09:20 +0000]
Count lexical hint hashes in COPs

12 years agoAdd refcounted_he structs counting
Florian Ragwitz [Mon, 1 Oct 2012 01:07:29 +0000]
Add refcounted_he structs counting

12 years agoAttempt to extract the refcounted_he definition
Florian Ragwitz [Mon, 1 Oct 2012 01:05:32 +0000]
Attempt to extract the refcounted_he definition

Not all perls have this structure, so some compatibility checks will have to be
added later.

We can't easily reuse the definition from hv.h unless we define PERL_CORE, which
will break loads of other code we currently have.

12 years agoAdd a missing dependency
Florian Ragwitz [Sun, 30 Sep 2012 08:03:12 +0000]
Add a missing dependency

12 years agoMove SvSTASH counting from SVt_PVCV to >= SVt_PVMG
Florian Ragwitz [Sun, 30 Sep 2012 07:50:52 +0000]
Move SvSTASH counting from SVt_PVCV to >= SVt_PVMG

I assume that certain stashes might not be reached using the previous
behaviour. Both objects and CVs (and possibly even others) can have a stash.
For anonymous stashes without CVs in them, I believe SvSTASH would not be
counted if an object blessed in said anonymous stash would be processed.

12 years agoFor non-magical XPVMGs, count OURSTASH for if present
Florian Ragwitz [Sun, 30 Sep 2012 07:50:12 +0000]
For non-magical XPVMGs, count OURSTASH for if present

12 years agoOnly attempt to count magic on magical SVs
Florian Ragwitz [Sun, 30 Sep 2012 07:48:30 +0000]
Only attempt to count magic on magical SVs

XPVMGs might not have a MAGIC* chain attached. SvMAGICAL is the predicate for
that.

12 years agoFix compilation on perls with IMPLICIT_CONTEXT
Florian Ragwitz [Sun, 30 Sep 2012 07:31:33 +0000]
Fix compilation on perls with IMPLICIT_CONTEXT

12 years agoMore prereqs tim-20120929-d-m
Tim Bunce [Fri, 28 Sep 2012 19:19:03 +0000]
More prereqs

12 years agoMerge branch 'tim-20120929-d-m' of git.shadowcat.co.uk:Devel-Size into tim-20120929-d-m
Tim Bunce [Fri, 28 Sep 2012 19:18:06 +0000]
Merge branch 'tim-20120929-d-m' of git.shadowcat.co.uk:Devel-Size into tim-20120929-d-m

12 years agoDon't "open -a Graphviz $opt_dot" unless on OSX
Tim Bunce [Fri, 28 Sep 2012 19:16:53 +0000]
Don't "open -a Graphviz $opt_dot" unless on OSX

12 years agotweak .gitignore
Tim Bunce [Fri, 28 Sep 2012 19:16:22 +0000]
tweak .gitignore

12 years agoadd some PREREQ_PM
Tim Bunce [Fri, 28 Sep 2012 19:14:56 +0000]
add some PREREQ_PM

12 years agoFix mstats scope
timbo [Fri, 28 Sep 2012 18:57:04 +0000]
Fix mstats scope

12 years agomstats() isn't very portable
Tim Bunce [Fri, 28 Sep 2012 18:54:39 +0000]
mstats() isn't very portable

12 years agoMega rename to Devel::Memory commit
Tim Bunce [Fri, 28 Sep 2012 18:31:11 +0000]
Mega rename to Devel::Memory commit

12 years agoadd TODO
Tim Bunce [Fri, 28 Sep 2012 16:09:57 +0000]
add TODO

12 years agoSplit out a new heap_size() function. Add TODO. Special case PL_strtab HeVAL's.
Tim Bunce [Fri, 28 Sep 2012 16:08:08 +0000]
Split out a new heap_size() function. Add TODO. Special case PL_strtab HeVAL's.

12 years agotweak Children tooltip
Tim Bunce [Fri, 28 Sep 2012 07:35:26 +0000]
tweak Children tooltip

12 years agoAdd "->" to link names for --text.
Tim Bunce [Fri, 28 Sep 2012 07:30:53 +0000]
Add "->" to link names for --text.

12 years agoAdd logarea param via referer. add bytesToSize. Polish formatting of tooltip
Tim Bunce [Fri, 28 Sep 2012 01:51:20 +0000]
Add logarea param via referer. add bytesToSize. Polish formatting of tooltip

12 years agoupdate notes.txt
Tim Bunce [Thu, 27 Sep 2012 16:09:47 +0000]
update notes.txt

12 years agoHack to enable log scale for treemap nodes (disabled)
Tim Bunce [Thu, 27 Sep 2012 15:27:24 +0000]
Hack to enable log scale for treemap nodes (disabled)

12 years agoFix for scalar attr and assorted clenups
Tim Bunce [Thu, 27 Sep 2012 15:24:21 +0000]
Fix for scalar attr and assorted clenups

12 years agocheck for AVelem, remove Dwarn
Tim Bunce [Thu, 27 Sep 2012 15:13:11 +0000]
check for AVelem, remove Dwarn

12 years agotweaks
Tim Bunce [Thu, 27 Sep 2012 15:12:43 +0000]
tweaks

12 years agoAdd PRE_ATTR and use it for array indices.
Tim Bunce [Wed, 26 Sep 2012 17:14:32 +0000]
Add PRE_ATTR and use it for array indices.

12 years agoApply SOME_RECURSION to CvOUTSIDE for now
Tim Bunce [Wed, 26 Sep 2012 17:09:07 +0000]
Apply SOME_RECURSION to CvOUTSIDE for now

12 years agoAdd 'ADD_PRE_ATTR' mechanism so we can output attrs for the next node.
Tim Bunce [Wed, 26 Sep 2012 17:08:58 +0000]
Add 'ADD_PRE_ATTR' mechanism so we can output attrs for the next node.

12 years agoUsing check_new doesn't work for padlist_size. Mark weakrefs in link name.
Tim Bunce [Wed, 26 Sep 2012 16:06:06 +0000]
Using check_new doesn't work for padlist_size. Mark weakrefs in link name.

12 years agoUse check_new in padlist_size.
Tim Bunce [Wed, 26 Sep 2012 15:09:52 +0000]
Use check_new in padlist_size.

12 years agoPad names almost working. Some asorted code cleanup.
Tim Bunce [Wed, 26 Sep 2012 15:09:12 +0000]
Pad names almost working. Some asorted code cleanup.

12 years agoChange env var name
Tim Bunce [Wed, 26 Sep 2012 13:35:37 +0000]
Change env var name

12 years agoRecurse into CvPADLISTs
Tim Bunce [Wed, 26 Sep 2012 13:35:24 +0000]
Recurse into CvPADLISTs

12 years agoNote need to treat HEs as nodes. Warn on suspect HeVAL
Tim Bunce [Wed, 26 Sep 2012 13:34:42 +0000]
Note need to treat HEs as nodes. Warn on suspect HeVAL

12 years agoDon't chase magic unless SvMAGICAL
Tim Bunce [Tue, 25 Sep 2012 16:11:25 +0000]
Don't chase magic unless SvMAGICAL

12 years agoTweak node naming (remove + )
Tim Bunce [Tue, 25 Sep 2012 14:39:36 +0000]
Tweak node naming (remove + )

12 years agoFaster transitions
Tim Bunce [Tue, 25 Sep 2012 14:39:15 +0000]
Faster transitions

12 years agoFix for single node.
Tim Bunce [Tue, 25 Sep 2012 13:14:27 +0000]
Fix for single node.

12 years agoChase cop_stash only if refcnt==1. Move MG to end of sv_size().
Tim Bunce [Tue, 25 Sep 2012 13:12:34 +0000]
Chase cop_stash only if refcnt==1. Move MG to end of sv_size().

12 years agoLarger label font. workaround jit bug where old tooltip is still shown
Tim Bunce [Tue, 25 Sep 2012 12:53:23 +0000]
Larger label font. workaround jit bug where old tooltip is still shown

12 years agono longer size CvSTASH perl RT79366
Tim Bunce [Tue, 25 Sep 2012 10:02:43 +0000]
no longer size CvSTASH perl RT79366

12 years agoDrop json out. Write dot to file. Add 'text' tree mode.
Tim Bunce [Tue, 25 Sep 2012 09:53:43 +0000]
Drop json out. Write dot to file. Add 'text' tree mode.

12 years agoUnused svhead arena space. Scan arenas for unseen SVs. malloc info. Write to pipe.
Tim Bunce [Tue, 25 Sep 2012 09:51:59 +0000]
Unused svhead arena space. Scan arenas for unseen SVs. malloc info. Write to pipe.

12 years agoNote that the mouse-over doesn't work with Label:{}. Need to find out why.
Tim Bunce [Tue, 25 Sep 2012 02:56:38 +0000]
Note that the mouse-over doesn't work with Label:{}. Need to find out why.

12 years agoAdded local jquery-1.8.1-min.js so internet isn't needed
Tim Bunce [Sun, 23 Sep 2012 13:22:50 +0000]
Added local jquery-1.8.1-min.js so internet isn't needed

12 years agoFixed stringification ot root node. Fix handling of link nodes.
Tim Bunce [Sun, 23 Sep 2012 13:20:32 +0000]
Fixed stringification ot root node. Fix handling of link nodes.

12 years agoAdded node type to db. Added showid option.
Tim Bunce [Sun, 23 Sep 2012 13:19:42 +0000]
Added node type to db. Added showid option.

12 years agoMake levelsToShow more variable
Tim Bunce [Sun, 23 Sep 2012 12:57:13 +0000]
Make levelsToShow more variable

12 years agoFix NPathPushNode not (re)setting seqn, not perl_size "others" works.
Tim Bunce [Sun, 23 Sep 2012 12:45:25 +0000]
Fix NPathPushNode not (re)setting seqn, not perl_size "others" works.

12 years agoAdd more items to perl_size()
Tim Bunce [Sun, 23 Sep 2012 11:54:41 +0000]
Add more items to perl_size()

12 years agoPolish up dot output, incl adding sizes
Tim Bunce [Sat, 22 Sep 2012 17:35:59 +0000]
Polish up dot output, incl adding sizes

12 years agofix name escaping
Tim Bunce [Sat, 22 Sep 2012 15:02:20 +0000]
fix name escaping

12 years agoUse link nodes to label links.
Tim Bunce [Sat, 22 Sep 2012 14:41:56 +0000]
Use link nodes to label links.

12 years agoFix link-to-link for op_size.
Tim Bunce [Sat, 22 Sep 2012 14:41:10 +0000]
Fix link-to-link for op_size.

12 years agoadd basic dot format output
Tim Bunce [Sat, 22 Sep 2012 10:44:36 +0000]
add basic dot format output

12 years agoControl recursion threshold to enable more accurate perl_size.
Tim Bunce [Sat, 22 Sep 2012 10:15:17 +0000]
Control recursion threshold to enable more accurate perl_size.

12 years agorm some old files
Tim Bunce [Thu, 20 Sep 2012 21:02:18 +0000]
rm some old files

12 years agoLots of progress.
Tim Bunce [Thu, 20 Sep 2012 17:09:58 +0000]
Lots of progress.

Reworked attribute pipeline.
Added title concept.
Added logarea (incomplete)

12 years agosmarten up the tooltip
Tim Bunce [Thu, 20 Sep 2012 09:32:53 +0000]
smarten up the tooltip

12 years agobasic leaves pass-thru
Tim Bunce [Wed, 19 Sep 2012 16:36:01 +0000]
basic leaves pass-thru

12 years agobasic attribute pass-thru
Tim Bunce [Wed, 19 Sep 2012 14:24:26 +0000]
basic attribute pass-thru

12 years agoA little polish
Tim Bunce [Wed, 19 Sep 2012 10:30:57 +0000]
A little polish

12 years agosingle-child node merging working
Tim Bunce [Wed, 19 Sep 2012 09:44:28 +0000]
single-child node merging working

12 years agosplit transform nodes away from fetch
Tim Bunce [Wed, 19 Sep 2012 08:55:47 +0000]
split transform nodes away from fetch

12 years agodrill down with basic tooltip
Tim Bunce [Tue, 18 Sep 2012 21:29:20 +0000]
drill down with basic tooltip

12 years agoon-demand treemap working, though rough
Tim Bunce [Mon, 17 Sep 2012 09:38:38 +0000]
on-demand treemap working, though rough

12 years agoWorking(ish) on demand demo using statis data
Tim Bunce [Sun, 16 Sep 2012 15:46:17 +0000]
Working(ish) on demand demo using statis data

12 years agoWorking on removing links from the output path
Tim Bunce [Wed, 12 Sep 2012 20:48:16 +0000]
Working on removing links from the output path

12 years agoRename dNPathSetNode->NPathPushNode and rework magic_size nodes.
Tim Bunce [Tue, 11 Sep 2012 22:45:05 +0000]
Rename dNPathSetNode->NPathPushNode and rework magic_size nodes.

12 years agoGenerate json and initial experiments with a treemap.
Tim Bunce [Tue, 11 Sep 2012 22:25:59 +0000]
Generate json and initial experiments with a treemap.

12 years agoAdd memnodes.pl script to process output stream.
Tim Bunce [Tue, 11 Sep 2012 20:42:47 +0000]
Add memnodes.pl script to process output stream.

12 years agoAdd node stream file format (plain text for now)
Tim Bunce [Mon, 10 Sep 2012 21:05:51 +0000]
Add node stream file format (plain text for now)

Add workaround for a PL_strtab HeVAL == 0xC.

12 years agoAdded perl_size()
Tim Bunce [Mon, 10 Sep 2012 19:00:49 +0000]
Added perl_size()

12 years agoSquashed commit of all initial work on the 'name path' mechanism.
Tim Bunce [Mon, 10 Sep 2012 18:59:39 +0000]
Squashed commit of all initial work on the 'name path' mechanism.

12 years agoSpelling fix to docs from gregor herrmann [CPAN #78766]
Tim Bunce [Wed, 15 Aug 2012 20:23:33 +0000]
Spelling fix to docs from gregor herrmann [CPAN #78766]

12 years agoBump $VERSION to 0.78_50
Nicholas Clark [Mon, 30 Jul 2012 15:26:56 +0000]
Bump $VERSION to 0.78_50

12 years agoThis is 0.78 - update META.yml and META.json
Nicholas Clark [Thu, 26 Jul 2012 14:39:13 +0000]
This is 0.78 - update META.yml and META.json

12 years agoBump $VERSION to 0.78
Nicholas Clark [Thu, 26 Jul 2012 12:26:04 +0000]
Bump $VERSION to 0.78

12 years agoThis is 0.77_51 - update META.yml and META.json
Nicholas Clark [Tue, 17 Jul 2012 14:47:37 +0000]
This is 0.77_51 - update META.yml and META.json

12 years agoCorrect the code for structured exception handling on MSVC.
bulk 88 [Sat, 2 Jun 2012 00:41:58 +0000]
Correct the code for structured exception handling on MSVC.

12 years agoBump $VERSION to 0.77_51
Nicholas Clark [Tue, 17 Jul 2012 14:31:29 +0000]
Bump $VERSION to 0.77_51

12 years agoThis is 0.77_50 - update META.yml, and add META.json
Nicholas Clark [Sat, 11 Feb 2012 16:10:29 +0000]
This is 0.77_50 - update META.yml, and add META.json

12 years agoSkip tests in t/magic.t that use formline on 5.8.1 and 5.8.2
Nicholas Clark [Fri, 10 Feb 2012 20:01:57 +0000]
Skip tests in t/magic.t that use formline on 5.8.1 and 5.8.2

Those versions have a buggy formline that can trigger an assertion failure.

12 years agoRefactor t/globs.t to avoid the side effects of a change to strict.pm
Nicholas Clark [Fri, 10 Feb 2012 19:48:25 +0000]
Refactor t/globs.t to avoid the side effects of a change to strict.pm

As of blead commit b50b20584a1bbc1a, Implement new 'use 5.xxx' plan,
use strict; will write to %^H. Move the eval that creates the subroutine
into a different scope, a new subroutine generate_glob(), so that its
outside pointer chain doesn't include gv_grew(). This avoids problems with
eval ops changing the side of the %^H copies at runtime.

13 years agoBump $VERSION to 0.77_50
Nicholas Clark [Mon, 16 May 2011 12:40:06 +0000]
Bump $VERSION to 0.77_50

13 years agoThis is 0.77 - update META.yml
Nicholas Clark [Mon, 16 May 2011 12:39:00 +0000]
This is 0.77 - update META.yml

13 years agoBump $VERSION to 0.77
Nicholas Clark [Thu, 12 May 2011 16:34:34 +0000]
Bump $VERSION to 0.77

13 years agoThis is 0.76_50 - update META.yml
Nicholas Clark [Thu, 12 May 2011 16:33:04 +0000]
This is 0.76_50 - update META.yml

13 years agoCount the size of the "effective names" of a hash.
Nicholas Clark [Thu, 12 May 2011 16:26:28 +0000]
Count the size of the "effective names" of a hash.

This code is somewhat cheeky, making direct structure accesses.

13 years agoCount HvNAME(), the HV "aux" struct, and the mro_meta struct.
Nicholas Clark [Thu, 12 May 2011 14:04:17 +0000]
Count HvNAME(), the HV "aux" struct, and the mro_meta struct.

13 years agoGvNAME() is shared from 5.10 onwards.
Nicholas Clark [Thu, 12 May 2011 11:28:38 +0000]
GvNAME() is shared from 5.10 onwards.

13 years agoUse GvFILE_HEK(), if present, in preference to GvFILE()
Nicholas Clark [Thu, 12 May 2011 10:57:13 +0000]
Use GvFILE_HEK(), if present, in preference to GvFILE()

13 years agoHandle shared hash key scalars correctly.
Nicholas Clark [Thu, 12 May 2011 10:39:10 +0000]
Handle shared hash key scalars correctly.

13 years agoSplit out HEK size calculation into hek_size().
Nicholas Clark [Thu, 12 May 2011 09:25:19 +0000]
Split out HEK size calculation into hek_size().

Add the shared HE overhead to the total size.

13 years agoAdd a comment to force emacs to use C mode.
Nicholas Clark [Thu, 12 May 2011 08:54:21 +0000]
Add a comment to force emacs to use C mode.

13 years agoAdd a single (void **) cast to make the C code also valid as C++
Nicholas Clark [Thu, 12 May 2011 08:43:02 +0000]
Add a single (void **) cast to make the C code also valid as C++

13 years agoBump $VERSION to 0.76_50
Nicholas Clark [Wed, 11 May 2011 09:02:19 +0000]
Bump $VERSION to 0.76_50