[Parrot] #549: Kill UnionVal

Andy Dougherty doughera at lafayette.edu
Thu Jul 30 03:17:03 UTC 2009


On Wed, 29 Jul 2009, Andrew Whitworth wrote:

> On Wed, Jul 29, 2009 at 5:21 PM, Andy Dougherty<doughera at lafayette.edu> wrote:
> > On Wed, 29 Jul 2009, Andrew Whitworth wrote:
> > I'm afraid I don't understand.  *Which* existing PMC storage space would
> > be re-used?  Here's the current PMC structure:

> The only thing that the GC needs right now is enough storage for a
> single pointer, which can be used to arrange PObjs into a linked list
> of free items. See, for example, the structure GC_MS_PObj_Wrapper
> which is used in the MS GC right now for this exact purpose.

Ok, so that's effectively using "bufstart".  There are also a lot of 
references in src/gc/api.c (as well as lots of other files) to "buflen".  
I don't know if they are necessary, but it's not obvious how to get rid of 
them.  And if both bufstart and buflen are needed, then we're back 
where we started -- no space savings.

Please note I am not arguing either for or against UnionVal.  I was
simply seeking a direct answer to the simple question

   "What, exactly, are those structures supposed to look like after this?" 

in order to help with the implementation.

-- 
    Andy Dougherty		doughera at lafayette.edu


More information about the parrot-dev mailing list