changeset 1479:71cd4b9610eb

Two fixes for DaCapo / SpecJVM2008 runs.
author Thomas Wuerthinger <wuerthinger@ssw.jku.at>
date Sat, 27 Nov 2010 14:30:07 +0100
parents 5571b97fc1ec
children 2fe369533fed
files c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotTypePrimitive.java c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotTypeResolved.java c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotTypeUnresolved.java c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/VMExitsNative.java src/share/vm/c1x/c1x_VMEntries.cpp
diffstat 5 files changed, 10 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotTypePrimitive.java	Fri Nov 26 19:45:05 2010 +0100
+++ b/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotTypePrimitive.java	Sat Nov 27 14:30:07 2010 +0100
@@ -55,8 +55,7 @@
 
     @Override
     public RiType exactType() {
-        // TODO Auto-generated method stub
-        return null;
+        return this;
     }
 
     @Override
--- a/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotTypeResolved.java	Fri Nov 26 19:45:05 2010 +0100
+++ b/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotTypeResolved.java	Sat Nov 27 14:30:07 2010 +0100
@@ -66,7 +66,6 @@
 
     @Override
     public RiType exactType() {
-        // TODO is this correct? what's this exactType good for?
         if (Modifier.isFinal(accessFlags)) {
             return this;
         }
--- a/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotTypeUnresolved.java	Fri Nov 26 19:45:05 2010 +0100
+++ b/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/HotSpotTypeUnresolved.java	Sat Nov 27 14:30:07 2010 +0100
@@ -44,6 +44,7 @@
     }
 
     public HotSpotTypeUnresolved(String name, int dimensions, long accessingClassVmId) {
+        assert dimensions >= 0;
         this.name = name;
         this.dimensions = dimensions;
         this.accessingClassVmId = accessingClassVmId;
@@ -126,8 +127,8 @@
 
     @Override
     public RiType componentType() {
-        // TODO: Implement
-        throw new UnsupportedOperationException();
+        assert dimensions > 0;
+        return new HotSpotTypeUnresolved(name, dimensions - 1, accessingClassVmId);
     }
 
     @Override
--- a/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/VMExitsNative.java	Fri Nov 26 19:45:05 2010 +0100
+++ b/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/VMExitsNative.java	Sat Nov 27 14:30:07 2010 +0100
@@ -26,6 +26,7 @@
 import java.util.*;
 
 import com.sun.c1x.*;
+import com.sun.c1x.debug.*;
 import com.sun.cri.ci.*;
 import com.sun.cri.ri.*;
 import com.sun.hotspot.c1x.logging.*;
@@ -138,7 +139,7 @@
                 StringWriter out = new StringWriter();
                 result.bailout().printStackTrace(new PrintWriter(out));
                 Throwable cause = result.bailout().getCause();
-                Logger.info("Bailout:\n" + out.toString());
+                TTY.println("Bailout:\n" + out.toString());
                 if (cause != null) {
                     Logger.info("Trace for cause: ");
                     for (StackTraceElement e : cause.getStackTrace()) {
@@ -157,7 +158,7 @@
         } catch (Throwable t) {
             StringWriter out = new StringWriter();
             t.printStackTrace(new PrintWriter(out));
-            Logger.info("Compilation interrupted:\n" + out.toString());
+            TTY.println("Compilation interrupted:\n" + out.toString());
             throw t;
         }
     }
--- a/src/share/vm/c1x/c1x_VMEntries.cpp	Fri Nov 26 19:45:05 2010 +0100
+++ b/src/share/vm/c1x/c1x_VMEntries.cpp	Sat Nov 27 14:30:07 2010 +0100
@@ -272,6 +272,9 @@
       case T_DOUBLE:
         constant_object = VMExits::createCiConstantDouble(constant.as_double(), CHECK_0);
         break;
+      case T_FLOAT:
+        constant_object = VMExits::createCiConstantFloat(constant.as_float(), CHECK_0);
+        break;
       case T_LONG:
         constant_object = VMExits::createCiConstant(CiKind::Long(), constant.as_long(), CHECK_0);
         break;