[vmkit-commits] [vmkit] r58918 - in /vmkit/trunk/lib/JnJVM/VMCore: JavaClass.h JavaMetaJIT.cpp Jnjvm.cpp JnjvmModule.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Sat Nov 8 09:26:44 PST 2008


Author: geoffray
Date: Sat Nov  8 11:26:44 2008
New Revision: 58918

URL: http://llvm.org/viewvc/llvm-project?rev=58918&view=rev
Log:
Java functions do not take a Jnjvm object as parameter anymore.


Modified:
    vmkit/trunk/lib/JnJVM/VMCore/JavaClass.h
    vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp
    vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp
    vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp

Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaClass.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaClass.h?rev=58918&r1=58917&r2=58918&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaClass.h (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaClass.h Sat Nov  8 11:26:44 2008
@@ -885,6 +885,9 @@
     return static_cast<Ty*>(JInfo);
   }
   
+  #define JNI_NAME_PRE "Java_"
+  #define JNI_NAME_PRE_LEN 5
+  
 };
 
 /// JavaField - This class represents a Java field.
@@ -1003,8 +1006,6 @@
     return static_cast<Ty*>(JInfo);
   }
 
-  #define JNI_NAME_PRE "Java_"
-  #define JNI_NAME_PRE_LEN 5
 
 };
 

Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp?rev=58918&r1=58917&r2=58918&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaMetaJIT.cpp Sat Nov  8 11:26:44 2008
@@ -106,7 +106,7 @@
   void* _buf = (void*)buf; \
   readArgs(buf, sign, ap); \
   void* func = (((void***)obj)[0])[offset];\
-  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(vm, cl->getConstantPool(), func, obj, _buf);\
+  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, _buf);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##SpecialAP(Jnjvm* vm, UserClass* cl, JavaObject* obj, va_list ap) {\
@@ -121,7 +121,7 @@
   void* _buf = (void*)buf; \
   readArgs(buf, sign, ap); \
   void* func = this->compiledPtr();\
-  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(vm, cl->getConstantPool(), func, obj, _buf);\
+  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, _buf);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##StaticAP(Jnjvm* vm, UserClass* cl, va_list ap) {\
@@ -135,7 +135,7 @@
   void* _buf = (void*)buf; \
   readArgs(buf, sign, ap); \
   void* func = this->compiledPtr();\
-  return ((FUNC_TYPE_STATIC_BUF)sign->getStaticCallBuf())(vm, cl->getConstantPool(), func, _buf);\
+  return ((FUNC_TYPE_STATIC_BUF)sign->getStaticCallBuf())(cl->getConstantPool(), func, _buf);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##VirtualBuf(Jnjvm* vm, UserClass* cl, JavaObject* obj, void* buf) {\
@@ -148,7 +148,7 @@
   \
   Signdef* sign = getSignature(); \
   void* func = (((void***)obj)[0])[offset];\
-  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(vm, cl->getConstantPool(), func, obj, buf);\
+  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, buf);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##SpecialBuf(Jnjvm* vm, UserClass* cl, JavaObject* obj, void* buf) {\
@@ -160,7 +160,7 @@
   verifyNull(obj);\
   void* func = this->compiledPtr();\
   Signdef* sign = getSignature(); \
-  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(vm, cl->getConstantPool(), func, obj, buf);\
+  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, buf);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##StaticBuf(Jnjvm* vm, UserClass* cl, void* buf) {\
@@ -171,7 +171,7 @@
   \
   void* func = this->compiledPtr();\
   Signdef* sign = getSignature(); \
-  return ((FUNC_TYPE_STATIC_BUF)sign->getStaticCallBuf())(vm, cl->getConstantPool(), func, buf);\
+  return ((FUNC_TYPE_STATIC_BUF)sign->getStaticCallBuf())(cl->getConstantPool(), func, buf);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##Virtual(Jnjvm* vm, UserClass* cl, JavaObject* obj, ...) { \
@@ -211,7 +211,7 @@
   verifyNull(obj); \
   void* func = (((void***)obj)[0])[offset];\
   Signdef* sign = getSignature(); \
-  return ((FUNC_TYPE_VIRTUAL_AP)sign->getVirtualCallAP())(vm, cl->getConstantPool(), func, obj, ap);\
+  return ((FUNC_TYPE_VIRTUAL_AP)sign->getVirtualCallAP())(cl->getConstantPool(), func, obj, ap);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##SpecialAP(Jnjvm* vm, UserClass* cl, JavaObject* obj, va_list ap) {\
@@ -223,7 +223,7 @@
   verifyNull(obj);\
   void* func = this->compiledPtr();\
   Signdef* sign = getSignature(); \
-  return ((FUNC_TYPE_VIRTUAL_AP)sign->getVirtualCallAP())(vm, cl->getConstantPool(), func, obj, ap);\
+  return ((FUNC_TYPE_VIRTUAL_AP)sign->getVirtualCallAP())(cl->getConstantPool(), func, obj, ap);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##StaticAP(Jnjvm* vm, UserClass* cl, va_list ap) {\
@@ -234,7 +234,7 @@
   \
   void* func = this->compiledPtr();\
   Signdef* sign = getSignature(); \
-  return ((FUNC_TYPE_STATIC_AP)sign->getStaticCallAP())(vm, cl->getConstantPool(), func, ap);\
+  return ((FUNC_TYPE_STATIC_AP)sign->getStaticCallAP())(cl->getConstantPool(), func, ap);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##VirtualBuf(Jnjvm* vm, UserClass* cl, JavaObject* obj, void* buf) {\
@@ -246,7 +246,7 @@
   verifyNull(obj);\
   void* func = (((void***)obj)[0])[offset];\
   Signdef* sign = getSignature(); \
-  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(vm, cl->getConstantPool(), func, obj, buf);\
+  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, buf);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##SpecialBuf(Jnjvm* vm, UserClass* cl, JavaObject* obj, void* buf) {\
@@ -258,7 +258,7 @@
   verifyNull(obj);\
   void* func = this->compiledPtr();\
   Signdef* sign = getSignature(); \
-  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(vm, cl->getConstantPool(), func, obj, buf);\
+  return ((FUNC_TYPE_VIRTUAL_BUF)sign->getVirtualCallBuf())(cl->getConstantPool(), func, obj, buf);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##StaticBuf(Jnjvm* vm, UserClass* cl, void* buf) {\
@@ -269,7 +269,7 @@
   \
   void* func = this->compiledPtr();\
   Signdef* sign = getSignature(); \
-  return ((FUNC_TYPE_STATIC_BUF)sign->getStaticCallBuf())(vm, cl->getConstantPool(), func, buf);\
+  return ((FUNC_TYPE_STATIC_BUF)sign->getStaticCallBuf())(cl->getConstantPool(), func, buf);\
 }\
 \
 TYPE JavaMethod::invoke##TYPE_NAME##Virtual(Jnjvm* vm, UserClass* cl, JavaObject* obj, ...) { \
@@ -298,29 +298,29 @@
 
 #endif
 
-typedef uint32 (*uint32_virtual_ap)(Jnjvm*, UserConstantPool*, void*, JavaObject*, va_list);
-typedef sint64 (*sint64_virtual_ap)(Jnjvm*, UserConstantPool*, void*, JavaObject*, va_list);
-typedef float  (*float_virtual_ap)(Jnjvm*, UserConstantPool*, void*, JavaObject*, va_list);
-typedef double (*double_virtual_ap)(Jnjvm*, UserConstantPool*, void*, JavaObject*, va_list);
-typedef JavaObject* (*object_virtual_ap)(Jnjvm*, UserConstantPool*, void*, JavaObject*, va_list);
-
-typedef uint32 (*uint32_static_ap)(Jnjvm*, UserConstantPool*, void*, va_list);
-typedef sint64 (*sint64_static_ap)(Jnjvm*, UserConstantPool*, void*, va_list);
-typedef float  (*float_static_ap)(Jnjvm*, UserConstantPool*, void*, va_list);
-typedef double (*double_static_ap)(Jnjvm*, UserConstantPool*, void*, va_list);
-typedef JavaObject* (*object_static_ap)(Jnjvm*, UserConstantPool*, void*, va_list);
-
-typedef uint32 (*uint32_virtual_buf)(Jnjvm*, UserConstantPool*, void*, JavaObject*, void*);
-typedef sint64 (*sint64_virtual_buf)(Jnjvm*, UserConstantPool*, void*, JavaObject*, void*);
-typedef float  (*float_virtual_buf)(Jnjvm*, UserConstantPool*, void*, JavaObject*, void*);
-typedef double (*double_virtual_buf)(Jnjvm*, UserConstantPool*, void*, JavaObject*, void*);
-typedef JavaObject* (*object_virtual_buf)(Jnjvm*, UserConstantPool*, void*, JavaObject*, void*);
-
-typedef uint32 (*uint32_static_buf)(Jnjvm*, UserConstantPool*, void*, void*);
-typedef sint64 (*sint64_static_buf)(Jnjvm*, UserConstantPool*, void*, void*);
-typedef float  (*float_static_buf)(Jnjvm*, UserConstantPool*, void*, void*);
-typedef double (*double_static_buf)(Jnjvm*, UserConstantPool*, void*, void*);
-typedef JavaObject* (*object_static_buf)(Jnjvm*, UserConstantPool*, void*, void*);
+typedef uint32 (*uint32_virtual_ap)(UserConstantPool*, void*, JavaObject*, va_list);
+typedef sint64 (*sint64_virtual_ap)(UserConstantPool*, void*, JavaObject*, va_list);
+typedef float  (*float_virtual_ap)(UserConstantPool*, void*, JavaObject*, va_list);
+typedef double (*double_virtual_ap)(UserConstantPool*, void*, JavaObject*, va_list);
+typedef JavaObject* (*object_virtual_ap)(UserConstantPool*, void*, JavaObject*, va_list);
+
+typedef uint32 (*uint32_static_ap)(UserConstantPool*, void*, va_list);
+typedef sint64 (*sint64_static_ap)(UserConstantPool*, void*, va_list);
+typedef float  (*float_static_ap)(UserConstantPool*, void*, va_list);
+typedef double (*double_static_ap)(UserConstantPool*, void*, va_list);
+typedef JavaObject* (*object_static_ap)(UserConstantPool*, void*, va_list);
+
+typedef uint32 (*uint32_virtual_buf)(UserConstantPool*, void*, JavaObject*, void*);
+typedef sint64 (*sint64_virtual_buf)(UserConstantPool*, void*, JavaObject*, void*);
+typedef float  (*float_virtual_buf)(UserConstantPool*, void*, JavaObject*, void*);
+typedef double (*double_virtual_buf)(UserConstantPool*, void*, JavaObject*, void*);
+typedef JavaObject* (*object_virtual_buf)(UserConstantPool*, void*, JavaObject*, void*);
+
+typedef uint32 (*uint32_static_buf)(UserConstantPool*, void*, void*);
+typedef sint64 (*sint64_static_buf)(UserConstantPool*, void*, void*);
+typedef float  (*float_static_buf)(UserConstantPool*, void*, void*);
+typedef double (*double_static_buf)(UserConstantPool*, void*, void*);
+typedef JavaObject* (*object_static_buf)(UserConstantPool*, void*, void*);
 
 INVOKE(uint32, Int, uint32_virtual_ap, uint32_static_ap, uint32_virtual_buf, uint32_static_buf)
 INVOKE(sint64, Long, sint64_virtual_ap, sint64_static_ap, sint64_virtual_buf, sint64_static_buf)

Modified: vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp?rev=58918&r1=58917&r2=58918&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp Sat Nov  8 11:26:44 2008
@@ -44,7 +44,7 @@
 const char* Jnjvm::envSeparator = ":";
 const unsigned int Jnjvm::Magic = 0xcafebabe;
 
-typedef void (*clinit_t)(Jnjvm* vm, UserConstantPool*);
+typedef void (*clinit_t)(UserConstantPool*);
 
 
 /// initialiseClass - Java class initialisation. Java specification §2.17.5.
@@ -185,7 +185,7 @@
     if (meth) {
       try{
         clinit_t pred = (clinit_t)(intptr_t)meth->compiledPtr();
-        pred(vm, cl->getConstantPool());
+        pred(cl->getConstantPool());
       } catch(...) {
         exc = JavaThread::getJavaException();
         assert(exc && "no exception?");
@@ -239,7 +239,8 @@
   }
 }
       
-void Jnjvm::errorWithExcp(UserClass* cl, JavaMethod* init, const JavaObject* excp) {
+void Jnjvm::errorWithExcp(UserClass* cl, JavaMethod* init,
+                          const JavaObject* excp) {
   JavaObject* obj = cl->doNew(this);
   init->invokeIntSpecial(this, cl, obj, excp);
   JavaThread::throwException(obj);
@@ -505,7 +506,8 @@
       ArrayUInt8* res = (ArrayUInt8*)array->doNew(file->ucsize, vm);
       int ok = archive.readFile(res, file);
       if (ok) {
-        char* mainClass = findInformation(vm, res, MAIN_CLASS, LENGTH_MAIN_CLASS);
+        char* mainClass = findInformation(vm, res, MAIN_CLASS,
+                                          LENGTH_MAIN_CLASS);
         if (mainClass) {
           className = mainClass;
         } else {
@@ -572,7 +574,7 @@
     "-agentpath:<pathname>[=<options>]\n"
     "              load native agent library by full pathname\n"
     "-javaagent:<jarpath>[=<options>]\n"
-    "              load Java programming language agent, see java.lang.instrument\n");
+    "       load Java programming language agent, see java.lang.instrument\n");
 }
 
 void ClArgumentsInfo::readArgs(Jnjvm* vm) {
@@ -855,7 +857,7 @@
 #endif
   
   ClArgumentsInfo& info = vm->argumentsInfo;
-#if 0
+  
   if (info.agents.size()) {
     assert(0 && "implement me");
     JavaObject* instrumenter = 0;//createInstrumenter();
@@ -866,7 +868,6 @@
       vm->executePremain(i->first, args, instrumenter);
     }
   }
-#endif
     
   UserClassArray* array = vm->bootstrapLoader->upcalls->ArrayOfString;
   ArrayObject* args = (ArrayObject*)array->doNew(info.argc - 2, vm);

Modified: vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp?rev=58918&r1=58917&r2=58918&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp Sat Nov  8 11:26:44 2008
@@ -635,7 +635,6 @@
     }
 
 #if defined(ISOLATE_SHARING)
-    llvmArgs.push_back(JnjvmModule::JnjvmType); // vm
     llvmArgs.push_back(JnjvmModule::ConstantPoolType); // cached constant pool
 #endif
 
@@ -659,7 +658,6 @@
     }
 
 #if defined(ISOLATE_SHARING)
-    llvmArgs.push_back(JnjvmModule::JnjvmType); // vm
     llvmArgs.push_back(JnjvmModule::ConstantPoolType); // cached constant pool
 #endif
 
@@ -686,7 +684,6 @@
     }
 
 #if defined(ISOLATE_SHARING)
-    llvmArgs.push_back(JnjvmModule::JnjvmType); // vm
     llvmArgs.push_back(JnjvmModule::ConstantPoolType); // cached constant pool
 #endif
 
@@ -712,10 +709,6 @@
   Function::arg_iterator i = res->arg_begin();
   Value *obj, *ptr, *func;
 #if defined(ISOLATE_SHARING)
-  Value* vm = i;
-#endif
-  ++i;
-#if defined(ISOLATE_SHARING)
   Value* ctp = i;
 #endif
   ++i;
@@ -745,7 +738,6 @@
   }
 
 #if defined(ISOLATE_SHARING)
-  Args.push_back(vm);
   Args.push_back(ctp);
 #endif
 
@@ -773,10 +765,6 @@
   Function::arg_iterator i = res->arg_begin();
   Value *obj, *ap, *func;
 #if defined(ISOLATE_SHARING)
-  Value* vm = i;
-#endif
-  ++i;
-#if defined(ISOLATE_SHARING)
   Value* ctp = i;
 #endif
   ++i;
@@ -796,7 +784,6 @@
   }
 
 #if defined(ISOLATE_SHARING)
-  Args.push_back(vm);
   Args.push_back(ctp);
 #endif
 
@@ -837,7 +824,6 @@
     // Lock here because we are called by arbitrary code
     llvm::MutexGuard locked(mvm::MvmModule::executionEngine->lock);
     std::vector<const llvm::Type*> Args2;
-    Args2.push_back(JnjvmModule::JnjvmType); // vm
     Args2.push_back(JnjvmModule::ConstantPoolType); // ctp
     Args2.push_back(getVirtualPtrType());
     Args2.push_back(JnjvmModule::JavaObjectType);
@@ -853,7 +839,6 @@
     // Lock here because we are called by arbitrary code
     llvm::MutexGuard locked(mvm::MvmModule::executionEngine->lock);
     std::vector<const llvm::Type*> Args;
-    Args.push_back(JnjvmModule::JnjvmType); // vm
     Args.push_back(JnjvmModule::ConstantPoolType); // ctp
     Args.push_back(getStaticPtrType());
     Args.push_back(PointerType::getUnqual(Type::Int32Ty));





More information about the vmkit-commits mailing list