diff src/share/vm/c1x/c1x_VMExits.hpp @ 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/src/share/vm/c1x/c1x_VMExits.hpp	Mon Aug 02 15:44:38 2010 -0700
+++ b/src/share/vm/c1x/c1x_VMExits.hpp	Mon Aug 16 18:59:36 2010 -0700
@@ -21,49 +21,57 @@
  * have any questions.
  *
  */
-/*
-class OopCache : public AllStatic {
 
-private:
-  static Handle* handles;
-  static Handle* mirrors;
-  static int capacity;
-  static int used;
-
-public:
-  static void initialize();
-  static Handle mirror(oop internal_object);
-  static Handle resolve(oop mirror);
-
-};
-*/
 class VMExits : public AllStatic {
 
 private:
-
   static KlassHandle _vmExitsKlass;
   static Handle _vmExitsObject;
-
-public:
+  static jobject _vmExitsPermObject;
 
   static KlassHandle& vmExitsKlass();
   static Handle& instance();
 
+public:
 
-  static void compileMethod(methodOop method, int entry_bci);
+  // public abstract void compileMethod(HotSpotProxy method, String name, int entry_bci);
+  static void compileMethod(jlong vmId, Handle name, int entry_bci);
+
+  // public abstract RiMethod createRiMethod(HotSpotProxy method, String name);
+  static oop createRiMethod(jlong vmId, Handle name, TRAPS);
+
+  // public abstract RiField createRiField(RiType holder, String name, RiType type, int offset);
+  static oop createRiField(Handle holder, Handle name, Handle type, int index, TRAPS);
+
+  // public abstract RiType createRiType(HotSpotProxy klassOop, String name);
+  static oop createRiType(jlong vmId, Handle name, TRAPS);
+
+  // public abstract RiConstantPool createRiConstantPool(HotSpotProxy constantPool);
+  static oop createRiConstantPool(jlong vmId, TRAPS);
+
+  // public abstract RiType createRiTypeUnresolved(String name, HotSpotProxy accessingKlass);
+  static oop createRiTypeUnresolved(Handle name, jlong accessingClassVmId, TRAPS);
 
-  static oop createRiMethod(methodOop method, TRAPS);
-  static oop createRiField(oop field_holder, symbolOop field_name, oop field_type, int index, TRAPS);
-  static oop createRiType(klassOop k, TRAPS);
-  static oop createRiConstantPool(constantPoolOop cp, TRAPS);
-  static oop createRiTypeUnresolved(symbolOop name, klassOop accessor, TRAPS);
-  static oop createRiSignature(symbolOop name, TRAPS);
+  // public abstract RiType createRiTypePrimitive(int basicType);
+  static oop createRiTypePrimitive(int basicType, TRAPS);
+
+  // public abstract RiSignature createRiSignature(String signature);
+  static oop createRiSignature(Handle name, TRAPS);
+
+  // public abstract CiConstant createCiConstantInt(int value);
   static oop createCiConstantInt(jint value, TRAPS);
+
+  // public abstract CiConstant createCiConstantLong(long value);
   static oop createCiConstantLong(jlong value, TRAPS);
+
+  // public abstract CiConstant createCiConstantFloat(float value);
   static oop createCiConstantFloat(jfloat value, TRAPS);
+
+  // public abstract CiConstant createCiConstantDouble(double value);
   static oop createCiConstantDouble(jdouble value, TRAPS);
-  static oop createCiConstantObject(oop value, TRAPS);
-  static oop createRiTypePrimitive(int basic_type, TRAPS);
+
+  // public abstract CiConstant createCiConstantObject(HotSpotProxy value);
+  static oop createCiConstantObject(jlong vmId, TRAPS);
 };
 
 inline void check_pending_exception(const char* message) {