This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa][ GC, Virtual operands, and GCing between passes


On Thu, 2003-12-11 at 11:59, Geoff Keating wrote:
> Andrew MacLeod <amacleod@redhat.com> writes:
> 
> > I have array of pointers to trees.
> > 
> > so 
> > 
> > tree **defs;
> 
> That's an array of pointers to pointers to trees.  'tree' is a pointer
> to a tree.
> 

Depends on how you descibe it. 'tree' is a pointer to a tree
structure/union so  Its an array of pointers to pointers to tree
structures, yes, but an array of pointers to trees seemed like a
sufficient description to me... 

regardless, Its a cache of all the operand pointers in the stmt. So its
a list of pointers to trees so we can access/change them easily without
hunting for them. thus 'tree **'.

So all the trees will get marked when the stmt is marked. Since the
vector is part of the stmt annotation, if the stmt operands are not
marked, the annotation/vector will not get marked either. If the stmt is
marked, I need the vector to be marked, but none of the components.

So I need the tree ** vector to be treated as if is an array of
interegers or something, no marking of anything in it.

Im about to punt on it anyway and manage those vectors myself since GC
doesnt seem to want to deal with them nicely.

Andrew


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]