changeset 19798:09a22ce2e442

removed some uses of setStampFromReturnType
author Doug Simon <doug.simon@oracle.com>
date Wed, 11 Mar 2015 23:27:51 +0100
parents 9594538080a8
children c70ef0d09be9
files graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSnippetReflectionProvider.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/BeginLockScopeNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CStringNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentLockNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DimensionsNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/MonitorCounterNode.java
diffstat 7 files changed, 32 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSnippetReflectionProvider.java	Wed Mar 11 23:23:08 2015 +0100
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSnippetReflectionProvider.java	Wed Mar 11 23:27:51 2015 +0100
@@ -73,6 +73,9 @@
     }
 
     public Object getInjectedNodeIntrinsicParameter(ResolvedJavaType type) {
+        if (type.isInstance(forObject(runtime.getHostProviders().getWordTypes()))) {
+            return runtime.getHostProviders().getWordTypes();
+        }
         if (type.isInstance(forObject(runtime))) {
             return runtime;
         }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/BeginLockScopeNode.java	Wed Mar 11 23:23:08 2015 +0100
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/BeginLockScopeNode.java	Wed Mar 11 23:27:51 2015 +0100
@@ -24,6 +24,7 @@
 
 import com.oracle.graal.api.code.*;
 import com.oracle.graal.api.meta.*;
+import com.oracle.graal.compiler.common.type.*;
 import com.oracle.graal.graph.*;
 import com.oracle.graal.hotspot.*;
 import com.oracle.graal.nodeinfo.*;
@@ -31,6 +32,7 @@
 import com.oracle.graal.nodes.extended.*;
 import com.oracle.graal.nodes.spi.*;
 import com.oracle.graal.word.*;
+import com.oracle.graal.word.phases.*;
 
 /**
  * Intrinsic for opening a scope binding a stack-based lock with an object. A lock scope must be
@@ -44,8 +46,8 @@
     public static final NodeClass<BeginLockScopeNode> TYPE = NodeClass.create(BeginLockScopeNode.class);
     protected int lockDepth;
 
-    public BeginLockScopeNode(int lockDepth) {
-        super(TYPE, null);
+    public BeginLockScopeNode(@InjectedNodeParameter WordTypes wordTypes, int lockDepth) {
+        super(TYPE, StampFactory.forKind(wordTypes.getWordKind()));
         this.lockDepth = lockDepth;
     }
 
@@ -68,6 +70,6 @@
         gen.setResult(this, result);
     }
 
-    @NodeIntrinsic(setStampFromReturnType = true)
+    @NodeIntrinsic
     public static native Word beginLockScope(@ConstantNodeParameter int lockDepth);
 }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CStringNode.java	Wed Mar 11 23:23:08 2015 +0100
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CStringNode.java	Wed Mar 11 23:27:51 2015 +0100
@@ -23,11 +23,13 @@
 package com.oracle.graal.hotspot.nodes;
 
 import com.oracle.graal.api.meta.*;
+import com.oracle.graal.compiler.common.type.*;
 import com.oracle.graal.graph.*;
 import com.oracle.graal.nodeinfo.*;
 import com.oracle.graal.nodes.calc.*;
 import com.oracle.graal.nodes.spi.*;
 import com.oracle.graal.word.*;
+import com.oracle.graal.word.phases.*;
 
 /**
  * Converts a compile-time constant Java string into a C string installed with the generated code.
@@ -38,8 +40,8 @@
     public static final NodeClass<CStringNode> TYPE = NodeClass.create(CStringNode.class);
     protected final String string;
 
-    public CStringNode(String string) {
-        super(TYPE, null);
+    public CStringNode(@InjectedNodeParameter WordTypes wordTypes, String string) {
+        super(TYPE, StampFactory.forKind(wordTypes.getWordKind()));
         this.string = string;
     }
 
@@ -68,6 +70,6 @@
         return bytes;
     }
 
-    @NodeIntrinsic(setStampFromReturnType = true)
+    @NodeIntrinsic
     public static native Word cstring(@ConstantNodeParameter String string);
 }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java	Wed Mar 11 23:23:08 2015 +0100
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java	Wed Mar 11 23:27:51 2015 +0100
@@ -32,6 +32,7 @@
 import com.oracle.graal.nodes.calc.*;
 import com.oracle.graal.nodes.spi.*;
 import com.oracle.graal.word.*;
+import com.oracle.graal.word.phases.*;
 
 /**
  * Gets the address of the C++ JavaThread object for the current thread.
@@ -42,8 +43,8 @@
 
     protected LIRKind wordKind;
 
-    public CurrentJavaThreadNode(@InjectedNodeParameter HotSpotGraalRuntimeProvider runtime) {
-        this(runtime.getTarget().wordKind);
+    public CurrentJavaThreadNode(@InjectedNodeParameter WordTypes wordTypes) {
+        this(wordTypes.getWordKind());
     }
 
     public CurrentJavaThreadNode(Kind wordKind) {
@@ -65,6 +66,6 @@
         }
     }
 
-    @NodeIntrinsic(setStampFromReturnType = true)
+    @NodeIntrinsic
     public static native Word get();
 }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentLockNode.java	Wed Mar 11 23:23:08 2015 +0100
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentLockNode.java	Wed Mar 11 23:27:51 2015 +0100
@@ -24,12 +24,14 @@
 
 import com.oracle.graal.api.code.*;
 import com.oracle.graal.api.meta.*;
+import com.oracle.graal.compiler.common.type.*;
 import com.oracle.graal.graph.*;
 import com.oracle.graal.hotspot.*;
 import com.oracle.graal.nodeinfo.*;
 import com.oracle.graal.nodes.*;
 import com.oracle.graal.nodes.spi.*;
 import com.oracle.graal.word.*;
+import com.oracle.graal.word.phases.*;
 
 /**
  * Intrinsic for getting the lock in the current {@linkplain BeginLockScopeNode lock scope}.
@@ -40,8 +42,8 @@
 
     protected int lockDepth;
 
-    public CurrentLockNode(int lockDepth) {
-        super(TYPE, null);
+    public CurrentLockNode(@InjectedNodeParameter WordTypes wordTypes, int lockDepth) {
+        super(TYPE, StampFactory.forKind(wordTypes.getWordKind()));
         this.lockDepth = lockDepth;
     }
 
@@ -55,6 +57,6 @@
         gen.setResult(this, result);
     }
 
-    @NodeIntrinsic(setStampFromReturnType = true)
+    @NodeIntrinsic
     public static native Word currentLock(@ConstantNodeParameter int lockDepth);
 }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DimensionsNode.java	Wed Mar 11 23:23:08 2015 +0100
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DimensionsNode.java	Wed Mar 11 23:27:51 2015 +0100
@@ -28,12 +28,14 @@
 
 import com.oracle.graal.api.code.*;
 import com.oracle.graal.api.meta.*;
+import com.oracle.graal.compiler.common.type.*;
 import com.oracle.graal.graph.*;
 import com.oracle.graal.lir.gen.*;
 import com.oracle.graal.nodeinfo.*;
 import com.oracle.graal.nodes.*;
 import com.oracle.graal.nodes.spi.*;
 import com.oracle.graal.word.*;
+import com.oracle.graal.word.phases.*;
 
 /**
  * Intrinsic for allocating an on-stack array of integers to hold the dimensions of a multianewarray
@@ -45,8 +47,8 @@
     public static final NodeClass<DimensionsNode> TYPE = NodeClass.create(DimensionsNode.class);
     protected final int rank;
 
-    public DimensionsNode(int rank) {
-        super(TYPE, null);
+    public DimensionsNode(@InjectedNodeParameter WordTypes wordTypes, int rank) {
+        super(TYPE, StampFactory.forKind(wordTypes.getWordKind()));
         this.rank = rank;
     }
 
@@ -61,6 +63,6 @@
         gen.setResult(this, result);
     }
 
-    @NodeIntrinsic(setStampFromReturnType = true)
+    @NodeIntrinsic
     public static native Word allocaDimsArray(@ConstantNodeParameter int rank);
 }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/MonitorCounterNode.java	Wed Mar 11 23:23:08 2015 +0100
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/MonitorCounterNode.java	Wed Mar 11 23:27:51 2015 +0100
@@ -26,11 +26,13 @@
 
 import com.oracle.graal.api.code.*;
 import com.oracle.graal.api.meta.*;
+import com.oracle.graal.compiler.common.type.*;
 import com.oracle.graal.graph.*;
 import com.oracle.graal.nodeinfo.*;
 import com.oracle.graal.nodes.calc.*;
 import com.oracle.graal.nodes.spi.*;
 import com.oracle.graal.word.*;
+import com.oracle.graal.word.phases.*;
 
 /**
  * Node that is used to maintain a stack based counter of how many locks are currently held.
@@ -39,8 +41,8 @@
 public final class MonitorCounterNode extends FloatingNode implements LIRLowerable {
     public static final NodeClass<MonitorCounterNode> TYPE = NodeClass.create(MonitorCounterNode.class);
 
-    public MonitorCounterNode() {
-        super(TYPE, null);
+    public MonitorCounterNode(@InjectedNodeParameter WordTypes wordTypes) {
+        super(TYPE, StampFactory.forKind(wordTypes.getWordKind()));
     }
 
     @Override
@@ -51,6 +53,6 @@
         gen.setResult(this, result);
     }
 
-    @NodeIntrinsic(setStampFromReturnType = true)
+    @NodeIntrinsic
     public static native Word counter();
 }