> But I can't help but wonder if there might be a way to explicitly identify > (at the source level) objects having the property that every in-bound > pointer to the object is either (a) a root pointer, or (b) a pointer field > of an object in the same allocation region. The goal is to deal with large > data structures that die as a group *without* requiring a full-heap GC. > So the idea is that: >
Shouldnt region analysis find this anyway ? If there is only 1 pointer instead of 0 then see if its a root ( which LLVM needs to know anyway ). There was some mention of user defined regions eg ptr[myregion] .. If you say all references to a user region are via a root ptr eg ptr[myregion].a.b bit you can take a reference of b ( well maybe for objects in the user region but thats a lot harder) then you can ref count the region root as an alias for the region not all the objects and dispose of the user region en mass. Consider this mass free behaviour if what you want for a user region and you dont want them to be huge/ whole program . Ben
_______________________________________________ bitc-dev mailing list [email protected] http://www.coyotos.org/mailman/listinfo/bitc-dev
