On Monday, 23 February 2015 at 21:11:23 UTC, Sativa wrote:
1. Scan the heap in the BG on another thread/cpu for compactification.
You need to a precise GC to do this, because you need to know what is a pointer. Otherwise if you have two variables, say a size_t and a pointer that contain the same raw value, on compacting you could overwrite the size_t despite it just being a number and not a pointer. Also you need to ban certain pointer shenanigans (like xor fun stuff), though the current GC doesn't work when those are in use anyway, so I guess it's not too bad.

Reply via email to