compiler support added for precise GC
Steven Schveighoffer
schveiguy at yahoo.com
Mon Apr 16 04:58:00 PDT 2012
On Sun, 15 Apr 2012 22:24:56 -0400, Walter Bright
<newshound2 at digitalmars.com> wrote:
> 6. I suggest the GCInfo pointer be stored at the end of the allocated
> block, as then it won't affect the alignment of the allocated data.
This conflicts with the array runtime's use of the end of the block to
store the block's 'used' length. But it may not be an issue.
Note that the 16-byte block is going to get mighty small (only 12 bytes,
possibly 11 if it's an appendable block).
I also suggest that you look into changing the way structs are allocated
if you haven't already. Right now, they are allocated by creating a new
array of size 1. While this is convenient in terms of avoiding a new
function, it means all struct allocations are arrays, and as such will be
typed as arrays, with appendable semantics and with GCInfo of an array.
-Steve
More information about the Digitalmars-d
mailing list