diff graal/GraalCompiler/src/com/sun/c1x/ir/NewArray.java @ 2622:91d3952f7eb7

Framestate work : using stateAFter and reducting the number of nodes with framestates. Intermediate state (does not pass tests)
author Gilles Duboscq <gilles.duboscq@oracle.com>
date Tue, 10 May 2011 12:37:46 +0200
parents f1bc67c2d453
children 4dd0573f510b
line wrap: on
line diff
--- a/graal/GraalCompiler/src/com/sun/c1x/ir/NewArray.java	Tue May 10 11:55:12 2011 +0200
+++ b/graal/GraalCompiler/src/com/sun/c1x/ir/NewArray.java	Tue May 10 12:37:46 2011 +0200
@@ -23,13 +23,12 @@
 package com.sun.c1x.ir;
 
 import com.oracle.graal.graph.*;
-import com.sun.c1x.value.*;
 import com.sun.cri.ci.*;
 
 /**
  * The {@code NewArray} class is the base of all instructions that allocate arrays.
  */
-public abstract class NewArray extends StateSplit {
+public abstract class NewArray extends Instruction {
 
     private static final int INPUT_COUNT = 1;
     private static final int INPUT_LENGTH = 0;
@@ -65,10 +64,14 @@
      * @param successorCount
      * @param graph
      */
-    NewArray(Value length, FrameState stateBefore, int inputCount, int successorCount, Graph graph) {
-        super(CiKind.Object, stateBefore, inputCount + INPUT_COUNT, successorCount + SUCCESSOR_COUNT, graph);
+    NewArray(Value length, int inputCount, int successorCount, Graph graph) {
+        super(CiKind.Object, inputCount + INPUT_COUNT, successorCount + SUCCESSOR_COUNT, graph);
         setFlag(Flag.NonNull);
         setLength(length);
     }
 
+    @Override
+    public boolean canTrap() {
+        return true;
+    }
 }