Class GraphUtils


  • public final class GraphUtils
    extends java.lang.Object
    • Method Detail

      • findBackEdges

        public static int[] findBackEdges​(Graph graph)
      • removeLoops

        public static Graph removeLoops​(Graph graph)
      • isIrreducible

        public static boolean isIrreducible​(Graph graph)
      • subgraph

        public static Graph subgraph​(Graph graph,
                                     java.util.function.IntPredicate filter)
      • findStronglyConnectedComponents

        public static int[][] findStronglyConnectedComponents​(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)
      • printToDot

        public static java.lang.String printToDot​(Graph graph)