diff c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/VMExits.java @ 1423:760213a60e8b

* rewrite of the code installation * partial support for safepoints * macro-based CiTargetMethod interface * code stub support
author Lukas Stadler <lukas.stadler@oracle.com>
date Mon, 16 Aug 2010 18:59:36 -0700
parents 3483ec571caf
children abc670a709dc
line wrap: on
line diff
--- a/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/VMExits.java	Mon Aug 02 15:44:38 2010 -0700
+++ b/c1x4hotspotsrc/HotSpotVM/src/com/sun/hotspot/c1x/VMExits.java	Mon Aug 16 18:59:36 2010 -0700
@@ -1,27 +1,48 @@
-package com.sun.hotspot.c1x;
+/*
+ * Copyright (c) 2009-2010 Sun Microsystems, Inc. All rights reserved.
+ *
+ * Sun Microsystems, Inc. has intellectual property rights relating to technology embodied in the product that is
+ * described in this document. In particular, and without limitation, these intellectual property rights may include one
+ * or more of the U.S. patents listed at http://www.sun.com/patents and one or more additional patents or pending patent
+ * applications in the U.S. and in other countries.
+ *
+ * U.S. Government Rights - Commercial software. Government users are subject to the Sun Microsystems, Inc. standard
+ * license agreement and applicable provisions of the FAR and its supplements.
+ *
+ * Use is subject to license terms. Sun, Sun Microsystems, the Sun logo, Java and Solaris are trademarks or registered
+ * trademarks of Sun Microsystems, Inc. in the U.S. and other countries. All SPARC trademarks are used under license and
+ * are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries.
+ *
+ * UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd.
+ */
 
-import java.lang.reflect.*;
+package com.sun.hotspot.c1x;
 
 import com.sun.cri.ci.*;
 import com.sun.cri.ri.*;
 
+/**
+ * Exits from the HotSpot VM into Java code.
+ *
+ * @author Thomas Wuerthinger, Lukas Stadler
+ */
 public interface VMExits {
 
-    public abstract void compileMethod(Method method, int entry_bci);
+    public abstract void compileMethod(long methodVmId, String name, int entry_bci);
 
-    public abstract RiMethod createRiMethod(Method methodOop);
+    public abstract RiMethod createRiMethod(long vmId, String name);
 
     public abstract RiSignature createRiSignature(String signature);
 
     public abstract RiField createRiField(RiType holder, String name, RiType type, int offset);
 
-    public abstract RiType createRiType(Class<?> klassOop);
+    public abstract RiType createRiType(long vmId, String name);
 
     public abstract RiType createRiTypePrimitive(int basicType);
 
-    public abstract RiType createRiTypeUnresolved(String name, Class<?> accessingKlassOop);
+    public abstract RiType createRiTypeUnresolved(String name, long accessingClassVmId);
 
-    public abstract RiConstantPool createRiConstantPool(Class<?> constantPoolOop);
+    public abstract RiConstantPool createRiConstantPool(long vmId);
 
     public abstract CiConstant createCiConstantInt(int value);
 
@@ -31,6 +52,6 @@
 
     public abstract CiConstant createCiConstantDouble(double value);
 
-    public abstract CiConstant createCiConstantObject(Object value);
+    public abstract CiConstant createCiConstantObject(long vmId);
 
 }
\ No newline at end of file