comparison graal/GraalCompiler/src/com/sun/c1x/graph/CriticalEdgeFinder.java @ 2674:6ab73784566a

* BlockBegin.predecessors changed to List<BlockEnd> * Node: add input/successor with given back edge index, allows for explicit ordering of predecessors/usages * Graphviz: PDF output, option to omit FrameStates * runscimark.sh: forward additional options to JVM
author Lukas Stadler <lukas.stadler@jku.at>
date Fri, 13 May 2011 15:18:41 +0200
parents dd115f80acf8
children 27512ea6bbcb
comparison
equal deleted inserted replaced
2673:98447ab8bd83 2674:6ab73784566a
68 68
69 edges.get(block).add(succ); 69 edges.get(block).add(succ);
70 } 70 }
71 71
72 public void splitCriticalEdges() { 72 public void splitCriticalEdges() {
73 for (BlockBegin from : edges.keySet()) { 73 for (Map.Entry<BlockBegin, Set<BlockBegin>> entry : edges.entrySet()) {
74 for (BlockBegin to : edges.get(from)) { 74 BlockBegin from = entry.getKey();
75 for (BlockBegin to : entry.getValue()) {
75 BlockBegin split = ir.splitEdge(from, to); 76 BlockBegin split = ir.splitEdge(from, to);
76 if (C1XOptions.PrintHIR) { 77 if (C1XOptions.PrintHIR) {
77 TTY.println("Split edge between block %d and block %d, creating new block %d", from.blockID, to.blockID, split.blockID); 78 TTY.println("Split edge between block %d and block %d, creating new block %d", from.blockID, to.blockID, split.blockID);
78 } 79 }
79 } 80 }