diff graal/GraalCompiler/src/com/sun/c1x/graph/CriticalEdgeFinder.java @ 2773:27512ea6bbcb

exception dispatch simplification: * BlockMap creates exception dispatch blocks (so they're iterated in the right order) * GraphBuilder uses exception dispatch blocks, simplified handleException, removed updateDispatchChain * simplified mergeOrClone * removed successor & predecessor methods from BlockBegin
author Lukas Stadler <lukas.stadler@jku.at>
date Tue, 24 May 2011 12:07:17 +0200
parents 6ab73784566a
children 93ec3f067420
line wrap: on
line diff
--- a/graal/GraalCompiler/src/com/sun/c1x/graph/CriticalEdgeFinder.java	Tue May 24 10:27:15 2011 +0200
+++ b/graal/GraalCompiler/src/com/sun/c1x/graph/CriticalEdgeFinder.java	Tue May 24 12:07:17 2011 +0200
@@ -51,8 +51,9 @@
     }
 
     public void apply(BlockBegin block) {
-        if (block.numberOfSux() >= 2) {
-            for (BlockBegin succ : block.end().blockSuccessors()) {
+        BlockEnd end = block.end();
+        if (end.blockSuccessorCount() >= 2) {
+            for (BlockBegin succ : end.blockSuccessors()) {
                 if (succ.numberOfPreds() >= 2) {
                     // TODO: (tw) probably we don't have to make it a critical edge if succ only contains the _same_ predecessor multiple times.
                     recordCriticalEdge(block, succ);