diff graal/GraalCompiler/src/com/sun/c1x/ir/BlockEnd.java @ 2624:8e44074058af

remove explicit pointer from BlockEnd to BlockBegin
author Lukas Stadler <lukas.stadler@jku.at>
date Tue, 10 May 2011 14:29:40 +0200
parents dd115f80acf8
children 194d93d089bd
line wrap: on
line diff
--- a/graal/GraalCompiler/src/com/sun/c1x/ir/BlockEnd.java	Tue May 10 11:55:12 2011 +0200
+++ b/graal/GraalCompiler/src/com/sun/c1x/ir/BlockEnd.java	Tue May 10 14:29:40 2011 +0200
@@ -79,8 +79,7 @@
         return blockSuccessorCount;
     }
 
-    BlockBegin begin;
-    boolean isSafepoint;
+    private boolean isSafepoint;
 
     /**
      * Constructs a new block end with the specified value type.
@@ -120,17 +119,12 @@
      * @return the beginning of this basic block
      */
     public BlockBegin begin() {
-        return begin;
-    }
-
-    /**
-     * Sets the basic block beginning for this block end. This should only
-     * be called from {@link BlockBegin}.
-     *
-     * @param block the beginning of this basic block
-     */
-    void setBegin(BlockBegin block) {
-        begin = block;
+        for (Node n : predecessors()) {
+            if (n instanceof BlockBegin) {
+                return (BlockBegin) n;
+            }
+        }
+        return null;
     }
 
     /**