[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Spark : interprated AllocNode.NewExpr results with table



On Tue, Apr 29, 2003 at 03:55:09PM +0200, Christophe Massol wrote:
> 
> Thank you for your help
> Do you know how access to the valNodes ?

What do you mean? Which ValNodes are you looking for?

On Tue, Apr 29, 2003 at 05:39:24PM +0200, Christophe Massol wrote:
> That I want precisely it's to find a link between a Soot.Jimple.Local and a 
> Soot.SootField (with a lot of limits I know)

There's not really a link between a local variable and a field. They are
very different entities. I don't think I understand what you're trying
to do.

On Wed, Apr 30, 2003 at 05:22:37PM +0200, Christophe Massol wrote:
> Hello,
> 
> With Spark I can identificate the new Expr corresponding to the local pointer 
> on an invoke expr ( p.m() ) and identificate singlely an object (with 
> limits).
> 
> but how identificate singlely a new Expr with a table pointer new Expr in a 
> for instruction ?
> 
> example :
> -----------------------------
> 1	p[] p= new P[10];
> 
> 2	for(i=0 ; i < 10 ; i++){
> 3		p[i] = new P(); 
> 4	}
> 
> 5	p[4].m();
> 
> ----------------------------
> 
> in spark, when I analyse the line 5, I suppose that it will give me the new 
> Expr : new P() : contained in line 3 for result.
> 
> But here, I can't say if this object created with this new P() is the object 
> p[4] or p[2] p[X]. Here I can't identificate singlely an Instance (staticly).
> 
> Can you help me for this case ? Do you know some works do on my problem ? Can 
> I resolve it with Spark ?

Spark models all the elements of an array together, so it does not
distinguish between different elements. In addition, it models all the
objects allocated at the same call site together, so it cannot
distiguish between them.

Ondrej