[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Limiting whole-program analysis
After reading the soot-docs, esp. tutorial.pdf, and a bit of fiddling
with invoking soot, i've come to the conclusion that call-graphs and
points-to analysis requires soot to run in whole-program mode (as
expected :)
However, with the simple A.java:
public class A { public static int f(int a, int b) { return a+b; }; }
The whole-program analysis of course traverses java.lang.Object (since A
extends this class) and that leads to java.lang.Class, which opens a
transitive closure of immense proportions.
The whole-program analysis for the "cg" pack alone then takes >20 mins
and uses more than 250Mb of java heap-space.
I've tried "-x java -x java.lang" to stop the closure at A, but that
doesn't work for me.
What should I do? where is it described what I should do to stop the
transitive traversal? any hints appreciated.
--
Helge