[Soot-list] Multi Run Forward Flow Analysis

Dave Webb Dave.Webb at gmx.de
Sun Feb 19 02:17:07 EST 2017


Hello,

I'm using the ForwardFlowAnalysis provided by Soot, but I have some troubles with my analysis.

Soot visits each statement and calls my "flowThrough(inSet, stmt, outSet)" method. Based on the inSet and the stmt, I fill the outSet.

The issue is that if my graph has cycles (e.g. due to loops), each stmt is only visited exactly once, even if the inSet would be different this time.
Basically I want to keep flowing through the graph until the outSet of all stmts is stable and does not change anymore.

How do I perform the ForwardFlowAnalysis until my termination criterion is reached?
Introduce a global "hasChanged" variable and call "doAnalysis()" multiple times until "hasChanged" is eventually false?

Best Regards,
Dave


More information about the Soot-list mailing list