You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
WIP add API for refcounting CopFILE names with threads #8
This has large memory savings, test prog,
perl -MTest::More -e"system 'pause'"
before 2196KB Private Bytes Win 7 32 bit to after 2092KB.
-On a CHEK the refcount is a U32 for memory savings on 64 bit CPUs while
SHEKs are Size_t for refcount because of HE struct, on 32 bit Size_t and
U32 happen to be the same thing, if there is future integration the
refcount members will have to be the same type, then duping a SHEK or
a CHEK is the same code, except that HVhek_COMPILING controls whether to
aquire OP_REFCNT_LOCK before touching the ref count, in the future with
atomic operations, the refcount can be manipulated with atomic operations
regardless if it is a SHEK or CHEK since OP_REFCNT_LOCK lines were removed
-TODO figure out how to do static const CHEKs, hash member must be 0
since its process specific randomized (rurban's B stores HEKs in RW static
memory and fixes up the hash #s at runtime), add test and branch
so that refcount isn't read and written or passed to PerlMemShared_free
if static flag is on inidicating static const CHEK
-TODO Perl_newGP uses CHEKs not CopFILE, no memcpy and add _< that way
-TODO optimize the former alloca to smallbuf or Safefree or savestack
newx free
0 commit comments