[Soot-list] How to re-launch points-to analysis after wjop.si, so the points-to analysis corresponds to the inlined program?
Zhoulai
zell08v at orange.fr
Mon May 27 14:39:12 EDT 2013
Hello,
I have a naive question about how to re-launch points-to analysis after the
wjop.si phase (i.e., inlining transformation).
Following this great tutorial of Eric
http://www.bodden.de/2008/11/26/soot-packs/
the phase cg is performed before other whole-program phases, in part. the
inlining wjop.si phase. I have encountered a situation in which I need to
get the points-to analysis for the program after in-lining, which is
slightly different from the points-to analysis for the program before
inlining. However, I don't see how to re-launch points-to analysis after
the the phase wjop.si. Can anyone help?
I have a small program showing points-to graph of program after inlining
and before inlining are different:
--------------original program in java -----------------
public class Test4 {
public static void main(String[] args) {
A x=new A();
x.val=5;
foo(x);
int u = x.val;
}
public static void foo(A x) {
x.val=10;
}
}
------------------Jimple program after inlining---------------
public static void main(java.lang.String[])
{
java.lang.String[] r0;
cases.A $r1, r2, r3;
int i0;
r0 := @parameter0: java.lang.String[];
$r1 = new cases.A;
specialinvoke $r1.<cases.A: void <init>()>();
r2 = $r1;
r2.<cases.A: int val> = 5;
r3 = r2;
r3.<cases.A: int val> = 10;
i0 = r2.<cases.A: int val>;
return;
}
-----------------------------------
Note the line 'r3=r2' which is introduce an extra points-to relation
compared to the one for the original program. I would like to know how to
run again the points-to analysis for the inlined program. This could be a
possible duplicate of the early question which is not yet answered
http://www.sable.mcgill.ca/pipermail/soot-list/2009-March/002278.html
For info, my current soot options are here
args= new String[]{
"-f","J","-cp",sootClassPath,"-pp",
"-w","-W","-f","J",
"-p","wjop.si","on",
"-p", "cg.spark", "enabled:true",
className,
"-d","sootOutput_inline",
"-no-bodies-for-excluded",
};
Any ideas? Thank you.
Zhoulai
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20130527/962c746d/attachment.html
More information about the Soot-list
mailing list