diff graal/GraalCompiler/src/com/sun/c1x/gen/LIRGenerator.java @ 2728:7e470e1cd3b6

Removed special casing for exception phis in LIRGenerator. Removed dependency between LIRBlock.blockID and BlockBegin.blockID.
author Thomas Wuerthinger <thomas@wuerthinger.net>
date Thu, 19 May 2011 17:13:30 +0200
parents 1ddcbcd33325
children a2f62de90c76
line wrap: on
line diff
--- a/graal/GraalCompiler/src/com/sun/c1x/gen/LIRGenerator.java	Thu May 19 17:04:30 2011 +0200
+++ b/graal/GraalCompiler/src/com/sun/c1x/gen/LIRGenerator.java	Thu May 19 17:13:30 2011 +0200
@@ -390,16 +390,6 @@
 
     @Override
     public void visitExceptionObject(ExceptionObject x) {
-
-        // no moves are created for phi functions at the begin of exception
-        // handlers, so assign operands manually here
-        currentBlock.stateBefore().forEachLivePhi(currentBlock.blockID(), new PhiProcedure() {
-            public boolean doPhi(Phi phi) {
-                operandForPhi(phi);
-                return true;
-            }
-        });
-
         XirSnippet snippet = xir.genExceptionObject(site(x));
         emitXir(snippet, x, stateFor(x), null, true);
     }
@@ -1442,7 +1432,7 @@
         if (x instanceof ExceptionEdgeInstruction) {
             BlockBegin begin = ((ExceptionEdgeInstruction) x).exceptionEdge();
             if (begin != null) {
-                exceptionEdge = begin.lirBlock();
+                exceptionEdge = getLIRBlock(begin);
             }
         }
         return new LIRDebugInfo(state, exceptionEdge);