Let memory sizes of the various IMEMO object types be reflected correctly #2140
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Supersedes #2112. In current trunk only the
imemo_tmpbuf
type's auxiliary malloc heap buffer is factored intoobj_memsize_of
. The following IMEMO types also allocate on the malloc heap:imemo_env
(similar pattern asimemo_tmpbuf
, an array ofVALUE
s)imemo_ment
(single struct allocated)imemo_iseq
(massaged theiseq_memsize
API a little)imemo_ast
(more difficult to get right, need to walk buffer elements too)The
imemo_memsize
function introduced attempts to be the entry point for object size calculation of the IMEMO types.