changeset 11250:4f1aa732e60f

Merge.
author Doug Simon <doug.simon@oracle.com>
date Wed, 07 Aug 2013 16:45:23 +0200
parents 7b416466e269 (current diff) 2e38c55153e5 (diff)
children e428ffc7a0ad 56f1aa40e13b
files
diffstat 5 files changed, 23 insertions(+), 23 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java	Wed Aug 07 16:44:54 2013 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java	Wed Aug 07 16:45:23 2013 +0200
@@ -53,7 +53,7 @@
     private static final SnippetCounter g1AttemptedPostWriteBarrierCounter = new SnippetCounter(countersWriteBarriers, "g1AttemptedPostWriteBarrierCounter",
                     "Number of attempted G1 Post Write Barriers");
     private static final SnippetCounter g1AttemptedPreWriteBarrierCounter = new SnippetCounter(countersWriteBarriers, "g1AttemptedPreWriteBarrierCounter", "Number of G1 attempted Pre Write Barriers");
-    private static final SnippetCounter g1AttemptedRefFieldBarrierCounter = new SnippetCounter(countersWriteBarriers, "g1AttemptedPreWriteBarrierCounter",
+    private static final SnippetCounter g1AttemptedRefFieldBarrierCounter = new SnippetCounter(countersWriteBarriers, "g1AttemptedRefFieldBarrierCounter",
                     "Number of G1 attempted Ref Field Read Barriers");
     private static final SnippetCounter g1EffectivePostWriteBarrierCounter = new SnippetCounter(countersWriteBarriers, "g1EffectivePostWriteBarrierCounter",
                     "Number of effective G1 Post Write Barriers");
@@ -322,7 +322,7 @@
     public static final ForeignCallDescriptor G1WBPOSTCALL = new ForeignCallDescriptor("write_barrier_post", void.class, Word.class);
 
     @NodeIntrinsic(ForeignCallNode.class)
-    private static native void g1PostBarrierStub(@ConstantNodeParameter ForeignCallDescriptor descriptor, Word card);
+    public static native void g1PostBarrierStub(@ConstantNodeParameter ForeignCallDescriptor descriptor, Word card);
 
     public static class Templates extends AbstractTemplates {
 
@@ -408,25 +408,25 @@
     /**
      * Log method of debugging purposes.
      */
-    private static void log(boolean enabled, String format, long value) {
+    public static void log(boolean enabled, String format, long value) {
         if (enabled) {
             Log.printf(format, value);
         }
     }
 
-    private static void log(boolean enabled, String format, long value1, long value2) {
+    public static void log(boolean enabled, String format, long value1, long value2) {
         if (enabled) {
             Log.printf(format, value1, value2);
         }
     }
 
-    private static void log(boolean enabled, String format, long value1, long value2, long value3) {
+    public static void log(boolean enabled, String format, long value1, long value2, long value3) {
         if (enabled) {
             Log.printf(format, value1, value2, value3);
         }
     }
 
-    private static boolean traceBarrier() {
+    public static boolean traceBarrier() {
         return GraalOptions.GCDebugStartCycle.getValue() > 0 && ((int) Word.unsigned(HotSpotReplacementsUtil.gcTotalCollectionsAddress()).readLong(0) > GraalOptions.GCDebugStartCycle.getValue());
     }
 
@@ -436,7 +436,7 @@
      * in a valid heap region. If an object is stale, an invalid access is performed in order to
      * prematurely crash the VM and debug the stack trace of the faulty method.
      */
-    private static void validateObject(Object parent, Object child) {
+    public static void validateObject(Object parent, Object child) {
         if (verifyOops() && child != null && !validateOop(VALIDATE_OBJECT, parent, child)) {
             log(true, "Verification ERROR, Parent: %p Child: %p\n", Word.fromObject(parent).rawValue(), Word.fromObject(child).rawValue());
             DirectObjectStoreNode.storeWord(null, 0, 0, Word.zero());
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/FrameAccessNode.java	Wed Aug 07 16:44:54 2013 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/FrameAccessNode.java	Wed Aug 07 16:45:23 2013 +0200
@@ -66,15 +66,15 @@
     }
 
     protected int getSlotIndex() {
-        return getFrameSlot().getIndex();
+        return getConstantFrameSlot().getIndex();
     }
 
-    protected boolean isFrameSlotConstant() {
-        return slot.isConstant();
+    protected boolean isConstantFrameSlot() {
+        return slot.isConstant() && !slot.isNullConstant();
     }
 
-    protected FrameSlot getFrameSlot() {
-        assert isFrameSlotConstant() : slot;
+    protected FrameSlot getConstantFrameSlot() {
+        assert isConstantFrameSlot() : slot;
         return (FrameSlot) slot.asConstant().asObject();
     }
 
@@ -87,14 +87,14 @@
     @Override
     public String toString(Verbosity verbosity) {
         if (verbosity == Verbosity.Name) {
-            return super.toString(verbosity) + getSlotKind().name() + (isFrameSlotConstant() ? " " + getFrameSlot() : "");
+            return super.toString(verbosity) + getSlotKind().name() + (isConstantFrameSlot() ? " " + getConstantFrameSlot() : "");
         } else {
             return super.toString(verbosity);
         }
     }
 
     protected final ValueNode getSlotOffset(int scale, MetaAccessProvider metaAccessProvider) {
-        if (isFrameSlotConstant()) {
+        if (isConstantFrameSlot()) {
             return ConstantNode.forInt(getSlotIndex() * scale, graph());
         } else {
             LoadFieldNode loadFrameSlotIndex = graph().add(new LoadFieldNode(getSlot(), metaAccessProvider.lookupJavaField(getFrameSlotIndexField())));
@@ -117,7 +117,7 @@
             return true;
         }
 
-        return getSlotKind() == getGraalKind(getFrameSlot().getKind());
+        return getSlotKind() == getGraalKind(getConstantFrameSlot().getKind());
     }
 
     private static Kind getGraalKind(FrameSlotKind kind) {
@@ -142,12 +142,12 @@
 
     @Override
     public final void simplify(SimplifierTool tool) {
-        if (isFrameSlotConstant()) {
+        if (isConstantFrameSlot()) {
             if (!isValidAccessKind()) {
                 tool.deleteBranch(this.next());
                 this.replaceAndDelete(graph().add(new DeoptimizeNode(DeoptimizationAction.InvalidateReprofile, DeoptimizationReason.UnreachedCode)));
             } else {
-                tool.assumptions().record(new AssumptionValidAssumption((OptimizedAssumption) getFrameSlot().getFrameDescriptor().getVersion()));
+                tool.assumptions().record(new AssumptionValidAssumption((OptimizedAssumption) getConstantFrameSlot().getFrameDescriptor().getVersion()));
             }
         }
     }
@@ -155,8 +155,8 @@
     @Override
     public Map<Object, Object> getDebugProperties(Map<Object, Object> map) {
         Map<Object, Object> properties = super.getDebugProperties(map);
-        if (isFrameSlotConstant()) {
-            properties.put("frameSlot", getFrameSlot().toString());
+        if (isConstantFrameSlot()) {
+            properties.put("frameSlot", getConstantFrameSlot().toString());
         }
         return properties;
     }
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/FrameGetNode.java	Wed Aug 07 16:44:54 2013 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/FrameGetNode.java	Wed Aug 07 16:45:23 2013 +0200
@@ -48,7 +48,7 @@
 
     @Override
     public void virtualize(VirtualizerTool tool) {
-        if (!isFrameSlotConstant()) {
+        if (!isConstantFrameSlot()) {
             return;
         }
         assert isValidAccessKind();
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/FrameSetNode.java	Wed Aug 07 16:44:54 2013 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/FrameSetNode.java	Wed Aug 07 16:45:23 2013 +0200
@@ -52,7 +52,7 @@
 
     @Override
     public void virtualize(VirtualizerTool tool) {
-        if (!isFrameSlotConstant()) {
+        if (!isConstantFrameSlot()) {
             return;
         }
         assert isValidAccessKind();
--- a/mx/commands.py	Wed Aug 07 16:44:54 2013 +0200
+++ b/mx/commands.py	Wed Aug 07 16:45:23 2013 +0200
@@ -809,7 +809,7 @@
 def unittest(args):
     """run the JUnit tests (all testcases){0}"""
 
-    _unittest(args, ['@Test', '@LongTest'])
+    _unittest(args, ['@Test', '@LongTest', '@Parameters'])
 
 def shortunittest(args):
     """run the JUnit tests (short testcases only){0}"""
@@ -819,7 +819,7 @@
 def longunittest(args):
     """run the JUnit tests (long testcases only){0}"""
 
-    _unittest(args, ['@LongTest'])
+    _unittest(args, ['@LongTest', '@Parameters'])
 
 def buildvms(args):
     """build one or more VMs in various configurations"""