[Soot-list] Cut down the memory required by Soot + compiling soot

Kin Keung Ma archicat at gmail.com
Thu Mar 9 23:32:25 EST 2006


Hi,

Recently I use Soot to analyze lots of classes. It uses a lot of memory.
My way of doing this is as follows:

for each class c in Scene
    for each method m in c
        JimpleBody b = m.retrieveActiveBody();
        work with b

I assume Soot uses a lot of memory on jimplifying m. My thought is,
once i finished working with each b, I can throw it away, therefore I
hope I can freed the memory taken by b everytime I finished using it.
Is that possible?

Another thing. I tried to compile svn of Soot and failed. It complains:

    [javac] .../soot-dev/src/soot/javaToJimple/jj/ast/JjFieldAssign_c.java:30:
error: Type `Operator' not found in the declaration of the argument
`op' of method `<init>'.
    [javac]        public JjFieldAssign_c(Position pos, Field left,
Operator op, Expr right){

The only place I saw Operator is polyglot.lex.Operator, which is not
imported in JjFieldAssign_c.java. If I add the import it will complain
that the super method of JjFieldAssign_c doesn't really take
polyglot.lex.Operator. Any idea?

Kin


More information about the Soot-list mailing list