[Soot-list] Backward Interprocedural Data flow analysis using HEROS

Bodden, Eric eric.bodden at sit.fraunhofer.de
Mon May 13 14:13:06 EDT 2013


Hi Ashish.

> I have a doubt in this-
> 
> What does a FLowFunction which I need to porvide signifies, i.e-
> 1) Is it an edge connecting a dataflow fact at the current program point to a data flow fact after the statement. Means Do I need to provide these edges. OR
> 
> 2) Do I need to give Gen and Kill information in these FlowFunctions, which HEROS Solver uses to generate the edges of the exploded graph.
> 
> I am confused because, in the example analysis, some places , a GEN and KILL set is generated or modified like in IFDSLocalInfoFlow while for IFDSReachingDefs no gen  and Kill set are manipulated .
> 
> Only after I understand this, I can write and plugin the flow functions for my analysis, a variant of Live Variable analysis.

The flow function effectively creates a set of edges that originate from the same (!) source node. The result of the flow function is the set of all nodes that are connected to this source node. Gen and Kill functions can be used to generate this set.

Eric


More information about the Soot-list mailing list