[Soot-list] Re(de)compilation of unmodified .class files
Mario Mendez
mario at cs.unm.edu
Tue Apr 10 21:19:41 EDT 2007
Say that you have two application classes A & B (no libraries). A uses
B. A has been modified since the last time Soot was invoked but B not.
When calling
soot.Main -f jimple --app A
, existing transformations (say, BodyTransformers) are called for BOTH
classes. I'm looking for a way to avoid calling all the transformations
in B, since I already stored my particular representation of that class
in a file.
So the question is if that functionality is implemented in Soot in some
way or I have to add it on my own.
Thank you!
Patrick Lam wrote:
> Mario Mendez wrote:
>> Hi guys,
>>
>> I noticed that Soot processes all the .class files every time is
>> invoked, independently of whether they have been modified or not. Is
>> there any flag to change that behavior?
>>
>> I'm trying to compile Jimple to another intermediate language (through a
>> SceneTransformer) and it would be really efficient to automatically
>> avoid calling it -and every single previous transformation- for those
>> .class that didn't change.
>
> Hi Mario,
>
> If you have no dependences between the different files that you're
> processing, then in principle Soot shouldn't need to create Jimple for
> the files that it's not updating, which would save you some time. How
> closely linked are your different classes? How many classes are
> application classes vs. library classes?
>
> Note that Soot can read Jimple files, but that this doesn't seem to have
> saved us any time.
>
> pat
More information about the Soot-list
mailing list