changeset 22767:c69bbc0b9ea7

Make methods in DefaultJavaLoweringProvider to avoid having them in HotSpotLoweringProvider
author Christian Wimmer <christian.wimmer@oracle.com>
date Tue, 06 Oct 2015 16:52:09 -0700
parents a11240648dc3
children 942bc81f277e
files graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/DefaultHotSpotLoweringProvider.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotLoweringProvider.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/NewObjectSnippets.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/DefaultJavaLoweringProvider.java
diffstat 4 files changed, 20 insertions(+), 32 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/DefaultHotSpotLoweringProvider.java	Wed Sep 30 15:40:22 2015 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/DefaultHotSpotLoweringProvider.java	Tue Oct 06 16:52:09 2015 -0700
@@ -411,7 +411,7 @@
     }
 
     @Override
-    protected ValueNode staticFieldBase(StructuredGraph graph, ResolvedJavaField f) {
+    public ValueNode staticFieldBase(StructuredGraph graph, ResolvedJavaField f) {
         HotSpotResolvedJavaField field = (HotSpotResolvedJavaField) f;
         JavaConstant base = field.getDeclaringClass().getJavaClass();
         return ConstantNode.forConstant(base, metaAccess, graph);
@@ -467,12 +467,12 @@
     }
 
     @Override
-    protected BarrierType fieldInitializationBarrier(JavaKind entryKind) {
+    public BarrierType fieldInitializationBarrier(JavaKind entryKind) {
         return (entryKind == JavaKind.Object && !config().useDeferredInitBarriers) ? BarrierType.IMPRECISE : BarrierType.NONE;
     }
 
     @Override
-    protected BarrierType arrayInitializationBarrier(JavaKind entryKind) {
+    public BarrierType arrayInitializationBarrier(JavaKind entryKind) {
         return (entryKind == JavaKind.Object && !config().useDeferredInitBarriers) ? BarrierType.PRECISE : BarrierType.NONE;
     }
 
@@ -623,7 +623,7 @@
     }
 
     @Override
-    protected int fieldOffset(ResolvedJavaField f) {
+    public int fieldOffset(ResolvedJavaField f) {
         HotSpotResolvedJavaField field = (HotSpotResolvedJavaField) f;
         return field.offset();
     }
@@ -638,17 +638,17 @@
     }
 
     @Override
-    protected int arrayBaseOffset(JavaKind kind) {
+    public int arrayBaseOffset(JavaKind kind) {
         return getArrayBaseOffset(kind);
     }
 
     @Override
-    protected int arrayLengthOffset() {
+    public int arrayLengthOffset() {
         return config().arrayOopDescLengthOffset();
     }
 
     @Override
-    protected LocationIdentity initLocationIdentity() {
+    public LocationIdentity initLocationIdentity() {
         return INIT_LOCATION;
     }
 }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotLoweringProvider.java	Wed Sep 30 15:40:22 2015 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotLoweringProvider.java	Tue Oct 06 16:52:09 2015 -0700
@@ -23,12 +23,7 @@
 package com.oracle.graal.hotspot.meta;
 
 import jdk.internal.jvmci.hotspot.HotSpotVMConfig;
-import jdk.internal.jvmci.meta.JavaKind;
 
-import com.oracle.graal.compiler.common.type.Stamp;
-import com.oracle.graal.nodes.StructuredGraph;
-import com.oracle.graal.nodes.ValueNode;
-import com.oracle.graal.nodes.memory.address.AddressNode;
 import com.oracle.graal.nodes.spi.LoweringProvider;
 
 /**
@@ -37,14 +32,4 @@
 public interface HotSpotLoweringProvider extends LoweringProvider {
 
     void initialize(HotSpotProviders providers, HotSpotVMConfig config);
-
-    int arrayScalingFactor(JavaKind kind);
-
-    AddressNode createArrayAddress(StructuredGraph graph, ValueNode array, JavaKind elementKind, ValueNode index);
-
-    Stamp loadStamp(Stamp stamp, JavaKind kind);
-
-    ValueNode implicitLoadConvert(StructuredGraph graph, JavaKind kind, ValueNode value);
-
-    ValueNode implicitStoreConvert(StructuredGraph graph, JavaKind kind, ValueNode value);
 }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/NewObjectSnippets.java	Wed Sep 30 15:40:22 2015 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/NewObjectSnippets.java	Tue Oct 06 16:52:09 2015 -0700
@@ -69,6 +69,7 @@
 import jdk.internal.jvmci.code.Register;
 import jdk.internal.jvmci.code.TargetDescription;
 import jdk.internal.jvmci.common.JVMCIError;
+import jdk.internal.jvmci.hotspot.HotSpotJVMCIRuntimeProvider;
 import jdk.internal.jvmci.hotspot.HotSpotResolvedObjectType;
 import jdk.internal.jvmci.meta.DeoptimizationAction;
 import jdk.internal.jvmci.meta.DeoptimizationReason;
@@ -83,7 +84,6 @@
 import com.oracle.graal.graph.Node.ConstantNodeParameter;
 import com.oracle.graal.graph.Node.NodeIntrinsic;
 import com.oracle.graal.hotspot.HotSpotBackend;
-import com.oracle.graal.hotspot.meta.HotSpotLoweringProvider;
 import com.oracle.graal.hotspot.meta.HotSpotProviders;
 import com.oracle.graal.hotspot.meta.HotSpotRegistersProvider;
 import com.oracle.graal.hotspot.nodes.DimensionsNode;
@@ -523,8 +523,7 @@
             JavaKind elementKind = elementType.getJavaKind();
             ConstantNode hub = ConstantNode.forConstant(KlassPointerStamp.klassNonNull(), arrayType.klass(), providers.getMetaAccess(), graph);
             final int headerSize = getArrayBaseOffset(elementKind);
-            HotSpotLoweringProvider lowerer = (HotSpotLoweringProvider) providers.getLowerer();
-            int log2ElementSize = CodeUtil.log2(lowerer.arrayScalingFactor(elementKind));
+            int log2ElementSize = CodeUtil.log2(HotSpotJVMCIRuntimeProvider.getArrayIndexScale(elementKind));
 
             Arguments args = new Arguments(allocateArray, graph.getGuardsStage(), tool.getLoweringStage());
             args.add("hub", hub);
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/DefaultJavaLoweringProvider.java	Wed Sep 30 15:40:22 2015 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/DefaultJavaLoweringProvider.java	Tue Oct 06 16:52:09 2015 -0700
@@ -142,6 +142,10 @@
         providers.getReplacements().registerSnippetTemplateCache(new SnippetCounterNode.SnippetCounterSnippets.Templates(providers, snippetReflection, target));
     }
 
+    public final TargetDescription getTarget() {
+        return target;
+    }
+
     @Override
     public void lower(Node n, LoweringTool tool) {
         assert n instanceof Lowerable;
@@ -649,11 +653,11 @@
         return BarrierType.NONE;
     }
 
-    protected BarrierType fieldInitializationBarrier(JavaKind entryKind) {
+    public BarrierType fieldInitializationBarrier(JavaKind entryKind) {
         return entryKind == JavaKind.Object ? BarrierType.IMPRECISE : BarrierType.NONE;
     }
 
-    protected BarrierType arrayInitializationBarrier(JavaKind entryKind) {
+    public BarrierType arrayInitializationBarrier(JavaKind entryKind) {
         return entryKind == JavaKind.Object ? BarrierType.PRECISE : BarrierType.NONE;
     }
 
@@ -681,19 +685,19 @@
         return BarrierType.NONE;
     }
 
-    protected abstract int fieldOffset(ResolvedJavaField field);
+    public abstract int fieldOffset(ResolvedJavaField field);
 
-    protected abstract ValueNode staticFieldBase(StructuredGraph graph, ResolvedJavaField field);
+    public abstract ValueNode staticFieldBase(StructuredGraph graph, ResolvedJavaField field);
 
-    protected abstract int arrayLengthOffset();
+    public abstract int arrayLengthOffset();
 
-    protected abstract int arrayBaseOffset(JavaKind elementKind);
+    public abstract int arrayBaseOffset(JavaKind elementKind);
 
     public int arrayScalingFactor(JavaKind elementKind) {
         return target.arch.getPlatformKind(elementKind).getSizeInBytes();
     }
 
-    protected abstract LocationIdentity initLocationIdentity();
+    public abstract LocationIdentity initLocationIdentity();
 
     public Stamp loadStamp(Stamp stamp, JavaKind kind) {
         return loadStamp(stamp, kind, true);