This repository has been archived by the owner on Jun 1, 2023. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
e.g. adding ".pm" to "warnings": 8 + 3 = 11. needing a len=12. SvLEN is already 12, but sv_grow realloced to 8+3+3=14+1=15->16. various people decided over time in the front and in the back to add just another one for safety. sv_grow adds the one for \0 already, so there's no need in the front. only the SvGROW macro logic, which checks against SvLEN. But even this had it off-by-one. memory numbers (DEBUGGING): miniperl -e0 262890 => 262833 byte miniperl -Ilib -E0 425636 => 423040 byte perl Config ... 797578 => 796932 byte $ PERL_HASH_SEED=0 valgrind --tool=massif --massif-out-file=massif.perl.p0 ./perl -Ilib -MConfig -Mwarnings -Mstrict -V:ccflags ; grep -h mem_heap_B= massif.perl.p0 |cut -c12-|sort -rn|head -n1 With #141 smallstrings the first goes down to 262689 bytes.
- Loading branch information