Mercurial > hg > truffle
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);