Package org.teavm.common
Class GraphUtils
- java.lang.Object
-
- org.teavm.common.GraphUtils
-
public final class GraphUtils extends Object
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static GraphbuildDominatorGraph(DominatorTree domTree, int sz)static DominatorTreebuildDominatorTree(Graph graph)static DominatorTreebuildDominatorTree(Graph graph, int start)static int[]dfs(Graph graph)static int[]findBackEdges(Graph graph)static int[][]findDominanceFrontiers(Graph cfg, DominatorTree domTree)static int[][]findStronglyConnectedComponents(Graph graph)static booleanisIrreducible(Graph graph)static StringprintToDot(Graph graph)static GraphremoveLoops(Graph graph)static voidsplitIrreducibleGraph(Graph graph, int[] weights, GraphSplittingBackend backend)static Graphsubgraph(Graph graph, IntPredicate filter)
-
-
-
Method Detail
-
findBackEdges
public static int[] findBackEdges(Graph graph)
-
isIrreducible
public static boolean isIrreducible(Graph graph)
-
subgraph
public static Graph subgraph(Graph graph, IntPredicate filter)
-
findStronglyConnectedComponents
public static int[][] findStronglyConnectedComponents(Graph graph)
-
buildDominatorTree
public static DominatorTree buildDominatorTree(Graph graph)
-
buildDominatorTree
public static DominatorTree buildDominatorTree(Graph graph, int start)
-
buildDominatorGraph
public static Graph buildDominatorGraph(DominatorTree domTree, int sz)
-
dfs
public static int[] dfs(Graph graph)
-
splitIrreducibleGraph
public static void splitIrreducibleGraph(Graph graph, int[] weights, GraphSplittingBackend backend)
-
findDominanceFrontiers
public static int[][] findDominanceFrontiers(Graph cfg, DominatorTree domTree)
-
-