I have here now ~15 files different to CVS, which I would like to sync in either direction for easier future changes.
So the question is, should I checked it in / partially / forget it.

Changes are:
- SPMC (small or scalar PMC) with half the size of a PMC, no promotion or whatever to a PMC, disabled with one define in pmc.c
- pool flags with aligned pools, disabled in pobj.h
- key.c and list.c flags cleanup
- mark constant PMCs in DOD[1], hash undef PMC changes
- minor cleanups

The first two are pretty much encapsulated and disabled by default. They can be easily removed at any time. SPMCs could get really functional after vtable var/value changes.

[1] we currently have constant KEYs and a global undef object in perlhash, that live in the normal PMC pool and thus where skipped during free_unused_pobjects().
During playing with pool flags, I did remove checking for constant items, so I introduced marking them during trace_active_PMCs. The final solution should be, to create a constant PMC header pool and a new init function "pmc_new_constant_noinit()".

leo

Reply via email to