[Soot-list] JNewExpr and JSpecialInvokeExpr pairs

Nouraldin I. Jaber njaber at purdue.edu
Sun Feb 1 20:39:06 EST 2015


Hello all,

I hope you're doing well. I have a question about Jimple representation of allocating objects using "new" in Java.

I know that for example: 
Entry e = new Entry();

is represented using two statements :a JAssignStmt containing a "JNewExpr" and a JInvokeStmt that contains a "JSpecialInvokeExpr". like this:

$r1 = new Entry;
specialinvoke $r1.<Entry: void <init>()>();

My question is: is there anyway that I can reach one from the other? since there could be statements generated between them that may include assigning "$r1" to other temp locals before calling the invoke, or even another invoke.

I'm not sure if the AST or any internal structure have them coupled at some point or do I need to trace manually from the assign statement to the invoke statement and use PointsToAnalysis to double check.

thanks in advance

Nour


More information about the Soot-list mailing list