[Soot-list] How to do several passes over the code

David Mohr dmohr at cs.unm.edu
Wed Sep 23 11:59:21 EDT 2009


Hi,
I need to do two passes over the code. During the first pass, I add a
field to all classes. In the second pass I want to make use of this
field.

Naively I added the field transformation to the pack before I added
the second transformation. That did not work, since all
transformations are applied in order, but one class at a time. I then
tried to use different packs; adding the field transformation to wjtp,
and the second transformation to jtp, with the same result.

I went on to run soot.Main.main() with only the field transformation
added to the pack, then call G.reset(), add the second transformation
and run soot.Main.main again - but the changes made before G.reset()
were not visible afterwards.

Can anyone let me know how I can do two passes over the code?

Thanks,
~David


More information about the Soot-list mailing list