On Sun, 15 Apr 2012 22:24:56 -0400, Walter Bright
<[email protected]> 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