Class GotoLoopDetection
- java.lang.Object
 - 
- com.ensoftcorp.open.c.commons.analysis.GotoLoopDetection
 
 
- 
public class GotoLoopDetection extends java.lang.ObjectIt uses immediate dominance (idom) analysis to detect Goto loop and add tag as Goto_Back_Edge to the edge which cause loop. It also gives the count of Goto loops.- Author:
 - Sharwan Ram
 
 
- 
- 
Constructor Summary
Constructors Constructor Description GotoLoopDetection() 
- 
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.util.Map<com.ensoftcorp.atlas.core.db.graph.Node,com.ensoftcorp.atlas.core.db.graph.Node>getIDOM(com.ensoftcorp.atlas.core.query.Q function)Returns an immediate dominator (idom) mapping in the control flow graph of the given functionstatic java.lang.StringrecoverFunctionGotoLoops(com.ensoftcorp.atlas.core.query.Q cfg)static java.lang.StringrecoverGotoLoops()static java.lang.StringrecoverGotoLoops(com.ensoftcorp.atlas.core.query.Q app) 
 - 
 
- 
- 
Method Detail
- 
recoverGotoLoops
public static java.lang.String recoverGotoLoops()
 
- 
recoverGotoLoops
public static java.lang.String recoverGotoLoops(com.ensoftcorp.atlas.core.query.Q app)
 
- 
recoverFunctionGotoLoops
public static java.lang.String recoverFunctionGotoLoops(com.ensoftcorp.atlas.core.query.Q cfg)
 
- 
getIDOM
public static java.util.Map<com.ensoftcorp.atlas.core.db.graph.Node,com.ensoftcorp.atlas.core.db.graph.Node> getIDOM(com.ensoftcorp.atlas.core.query.Q function)
Returns an immediate dominator (idom) mapping in the control flow graph of the given function- Parameters:
 function-- Returns:
 - Map which contains immediate dominator (idom) mapping, like:- (node, idom of node)
 
 
 - 
 
 -