[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