[vmkit-commits] [vmkit] r57294 - /vmkit/trunk/lib/JnJVM/Classpath/

Nicolas Geoffray nicolas.geoffray at lip6.fr
Wed Oct 8 06:01:26 PDT 2008


Author: geoffray
Date: Wed Oct  8 08:01:20 2008
New Revision: 57294

URL: http://llvm.org/viewvc/llvm-project?rev=57294&view=rev
Log:
Rename. LLVM Makefile style links the files even if they
are not used statically.


Added:
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp
      - copied, changed from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathField.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClassLoader.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClassLoader.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMObject.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMObject.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMRuntime.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMRuntime.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystem.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystem.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThrowable.cpp
      - copied unchanged from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThrowable.cpp.inc
Removed:
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClassLoader.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMObject.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMRuntime.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystem.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp.inc
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThrowable.cpp.inc
Modified:
    vmkit/trunk/lib/JnJVM/Classpath/Classpath.cpp

Modified: vmkit/trunk/lib/JnJVM/Classpath/Classpath.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/Classpath.cpp?rev=57294&r1=57293&r2=57294&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/Classpath.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/Classpath.cpp Wed Oct  8 08:01:20 2008
@@ -10,21 +10,9 @@
 
 
 #include "Classpath.h"
-
-#include "ClasspathConstructor.cpp.inc"
-#include "ClasspathMethod.cpp.inc"
-#include "ClasspathVMClass.cpp.inc"
-#include "ClasspathVMClassLoader.cpp.inc"
-#include "ClasspathVMField.cpp.inc"
-#include "ClasspathVMObject.cpp.inc"
-#include "ClasspathVMRuntime.cpp.inc"
-#include "ClasspathVMStackWalker.cpp.inc"
-#include "ClasspathVMSystem.cpp.inc"
-#include "ClasspathVMSystemProperties.cpp.inc"
-#include "ClasspathVMThread.cpp.inc"
-#include "ClasspathVMThrowable.cpp.inc"
-
 #include "JavaClass.h"
+#include "JavaThread.h"
+#include "JavaUpcalls.h"
 #include "Jnjvm.h"
 #include "NativeUtil.h"
 

Copied: vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp (from r57293, vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp?p2=vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp&p1=vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc&r1=57293&r2=57294&rev=57294&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp Wed Oct  8 08:01:20 2008
@@ -26,7 +26,6 @@
 
 extern "C" {
 
-
 JNIEXPORT jobject JNICALL Java_java_lang_reflect_Constructor_getParameterTypes(
 #ifdef NATIVE_JNI
 JNIEnv *env,

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc (removed)
@@ -1,129 +0,0 @@
-//===- ClasspathConstructor.cpp -------------------------------------------===//
-//===----------- GNU classpath java/lang/reflect/Constructor --------------===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-
-#include "types.h"
-
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaObject.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "JavaUpcalls.h"
-#include "Jnjvm.h"
-#include "JnjvmClassLoader.h"
-#include "NativeUtil.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-
-JNIEXPORT jobject JNICALL Java_java_lang_reflect_Constructor_getParameterTypes(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject cons) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaMethod* meth = (JavaMethod*)(vm->upcalls->constructorSlot->getInt32Field((JavaObject*)cons));
-#ifdef ISOLATE_SHARING
-  jclass Cl = (jclass)vm->upcalls->constructorClass->getInt32Field((JavaObject*)cons);
-  UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
-  JnjvmClassLoader* loader = cl->classLoader;
-#else
-  JnjvmClassLoader* loader = meth->classDef->classLoader;
-#endif
-
-  return (jobject)(NativeUtil::getParameterTypes(loader, meth));
-}
-
-JNIEXPORT jint JNICALL Java_java_lang_reflect_Constructor_getModifiersInternal(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject cons) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaMethod* meth = (JavaMethod*)(vm->upcalls->constructorSlot->getInt32Field((JavaObject*)cons));
-  return meth->access;
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_reflect_Constructor_constructNative(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-                                                                             jobject _cons,
-                                                                             jobject _args, 
-                                                                             jclass Clazz, 
-                                                                             jint _meth) {
-  JavaMethod* meth = (JavaMethod*)_meth;
-  JavaArray* args = (JavaArray*)_args;
-  sint32 nbArgs = args ? args->size : 0;
-  sint32 size = meth->getSignature()->args.size();
-  Jnjvm* vm = JavaThread::get()->isolate;
-
-  void** buf = (void**)alloca(size * sizeof(uint64));
-  void* _buf = (void*)buf;
-  sint32 index = 0;
-  if (nbArgs == size) {
-    UserCommonClass* _cl = NativeUtil::resolvedImplClass(Clazz, false);
-    if (!_cl->isArray()) {
-      UserClass* cl = (UserClass*)_cl;
-      cl->initialiseClass(vm);
-
-      JavaObject* res = cl->doNew(vm);
-      JavaObject** ptr = (JavaObject**)(void*)(args->elements);
-      for (std::vector<Typedef*>::iterator i = meth->getSignature()->args.begin(),
-           e = meth->getSignature()->args.end(); i != e; ++i, ++index) {
-        NativeUtil::decapsulePrimitive(vm, buf, ptr[index], *i);
-      }
-      
-      JavaObject* excp = 0;
-      try {
-        meth->invokeIntSpecialBuf(vm, cl, res, _buf);
-      }catch(...) {
-        excp = JavaThread::getJavaException();
-        JavaThread::clearException();
-      }
-      if (excp) {
-        if (excp->classOf->isAssignableFrom(vm->upcalls->newException)) {
-          vm->invocationTargetException(excp);
-        } else {
-          JavaThread::throwException(excp);
-        }
-      }
-    
-      return (jobject)res;
-    }
-  }
-  vm->illegalArgumentExceptionForMethod(meth, 0, 0); 
-  return 0;
-}
-
-JNIEXPORT jobjectArray JNICALL Java_java_lang_reflect_Constructor_getExceptionTypes(
-#ifdef NATIVE_JNI
-JNIEnv *env, 
-#endif
-jobject cons) {
-  verifyNull(cons);
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaMethod* meth = (JavaMethod*)vm->upcalls->constructorSlot->getInt32Field((JavaObject*)cons);
-  UserClass* cl = 0;
-#ifdef ISOLATE_SHARING
-    jclass Cl = (jclass)vm->upcalls->methodClass->getInt32Field((JavaObject*)cons);
-    cl = (UserClass*)NativeUtil::resolvedImplClass(Cl, false);
-#else
-    cl = meth->classDef;
-#endif
-
-  return (jobjectArray)NativeUtil::getExceptionTypes(cl, meth);
-}
-
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc (removed)
@@ -1,226 +0,0 @@
-//===- ClasspathMethod.cpp ------------------------------------------------===//
-//===------------- GNU classpath java/lang/reflect/Method -----------------===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-
-#include "types.h"
-
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaObject.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "JavaUpcalls.h"
-#include "Jnjvm.h"
-#include "JnjvmClassLoader.h"
-#include "NativeUtil.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-JNIEXPORT jint JNICALL Java_java_lang_reflect_Method_getModifiersInternal(
-#ifdef NATIVE_JNI
-JNIEnv *env, 
-#endif
- jobject Meth) { 
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaMethod* meth = (JavaMethod*)vm->upcalls->methodSlot->getInt32Field((JavaObject*)Meth);
-  return meth->access;
-}
-
-JNIEXPORT jclass JNICALL Java_java_lang_reflect_Method_getReturnType(
-#ifdef NATIVE_JNI
-JNIEnv *env, 
-#endif
- jobject Meth) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaMethod* meth = (JavaMethod*)vm->upcalls->methodSlot->getInt32Field((JavaObject*)Meth);
-#ifdef ISOLATE_SHARING
-  jclass Cl = (jclass)vm->upcalls->methodClass->getInt32Field((JavaObject*)Meth);
-  UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
-  JnjvmClassLoader* loader = cl->classLoader;
-#else
-  JnjvmClassLoader* loader = meth->classDef->classLoader;
-#endif
-  return (jclass)NativeUtil::getClassType(loader, meth->getSignature()->ret);
-}
-
-
-JNIEXPORT jobject JNICALL Java_java_lang_reflect_Method_getParameterTypes(
-#ifdef NATIVE_JNI
-JNIEnv *env, 
-#endif
-
-                                                                          jobject Meth) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaMethod* meth = (JavaMethod*)vm->upcalls->methodSlot->getInt32Field((JavaObject*)Meth);
-#ifdef ISOLATE_SHARING
-  jclass Cl = (jclass)vm->upcalls->methodClass->getInt32Field((JavaObject*)Meth);
-  UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
-  JnjvmClassLoader* loader = cl->classLoader;
-#else
-  JnjvmClassLoader* loader = meth->classDef->classLoader;
-#endif
-  return (jobject)(NativeUtil::getParameterTypes(loader, meth));
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_reflect_Method_invokeNative(
-#ifdef NATIVE_JNI
-JNIEnv *env, 
-#endif
- jobject Meth, jobject _obj, jobject _args, jclass Cl, jint _meth) {
-
-  JavaMethod* meth = (JavaMethod*)_meth;
-  JavaArray* args = (JavaArray*)_args;
-  sint32 nbArgs = args ? args->size : 0;
-  sint32 size = meth->getSignature()->args.size();
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaObject* obj = (JavaObject*)_obj;
-
-  void** buf = (void**)alloca(size * sizeof(uint64)); 
-  void* _buf = (void*)buf;
-  sint32 index = 0;
-  if (nbArgs == size) {
-    UserCommonClass* _cl = NativeUtil::resolvedImplClass(Cl, false);
-    UserClass* cl = (UserClass*)_cl;
-    
-    if (isVirtual(meth->access)) {
-      verifyNull(obj);
-      if (!(obj->classOf->isAssignableFrom(cl))) {
-        vm->illegalArgumentExceptionForMethod(meth, cl, obj->classOf);
-      }
-#ifdef ISOLATE_SHARING
-      if (isInterface(cl->classDef->access)) {
-        cl = obj->classOf->lookupClassFromMethod(meth);
-      } else {
-        jclass Cl = (jclass)vm->upcalls->methodClass->getInt32Field((JavaObject*)Meth);
-        cl = (UserClass*)NativeUtil::resolvedImplClass(Cl, false);
-      }
-#endif
-
-    } else {
-      cl->initialiseClass(vm);
-    }
-
-    JavaObject** ptr = (JavaObject**)(void*)(args->elements);     
-    for (std::vector<Typedef*>::iterator i = meth->getSignature()->args.begin(),
-         e = meth->getSignature()->args.end(); i != e; ++i, ++index) {
-      NativeUtil::decapsulePrimitive(vm, buf, ptr[index], *i);
-    }
-    
-    JavaObject* exc = 0;
-
-#define RUN_METH(TYPE) \
-    try{ \
-      if (isVirtual(meth->access)) { \
-        if (isPublic(meth->access) && !isFinal(meth->access) && !isFinal(meth->classDef->access)) { \
-          val = meth->invoke##TYPE##VirtualBuf(vm, cl, obj, _buf); \
-        } else { \
-          val = meth->invoke##TYPE##SpecialBuf(vm, cl, obj, _buf); \
-        } \
-      } else { \
-        val = meth->invoke##TYPE##StaticBuf(vm, cl, _buf); \
-      } \
-    }catch(...) { \
-      exc = JavaThread::getJavaException(); \
-      assert(exc && "no exception?"); \
-      JavaThread::clearException(); \
-    } \
-    \
-    if (exc) { \
-      if (exc->classOf->isAssignableFrom(vm->upcalls->newException)) { \
-        JavaThread::get()->isolate->invocationTargetException(exc); \
-      } else { \
-        JavaThread::throwException(exc); \
-      } \
-    } \
-    
-    JavaObject* res = 0;
-    Typedef* retType = meth->getSignature()->ret;
-    if (retType->isPrimitive()) {
-      PrimitiveTypedef* prim = (PrimitiveTypedef*)retType;
-      if (prim->isVoid()) {
-        res = 0;
-        uint32 val = 0;
-        RUN_METH(Int);
-      } else if (prim->isBool()) {
-        uint32 val = 0;
-        RUN_METH(Int);
-        res = vm->upcalls->boolClass->doNew(vm);
-        vm->upcalls->boolValue->setInt8Field(res, val);
-      } else if (prim->isByte()) {
-        uint32 val = 0;
-        RUN_METH(Int);
-        res = vm->upcalls->byteClass->doNew(vm);
-        vm->upcalls->byteValue->setInt8Field(res, val);
-      } else if (prim->isChar()) {
-        uint32 val = 0;
-        RUN_METH(Int);
-        res = vm->upcalls->charClass->doNew(vm);
-        vm->upcalls->charValue->setInt16Field(res, val);
-      } else if (prim->isShort()) {
-        uint32 val = 0;
-        RUN_METH(Int);
-        res = vm->upcalls->shortClass->doNew(vm);
-        vm->upcalls->shortValue->setInt16Field(res, val);
-      } else if (prim->isInt()) {
-        uint32 val = 0;
-        RUN_METH(Int);
-        res = vm->upcalls->intClass->doNew(vm);
-        vm->upcalls->intValue->setInt32Field(res, val);
-      } else if (prim->isLong()) {
-        sint64 val = 0;
-        RUN_METH(Long);
-        res = vm->upcalls->longClass->doNew(vm);
-        vm->upcalls->longValue->setLongField(res, val);
-      } else if (prim->isFloat()) {
-        float val = 0;
-        RUN_METH(Float);
-        res = vm->upcalls->floatClass->doNew(vm);
-        vm->upcalls->floatValue->setFloatField(res, val);
-      } else if (prim->isDouble()) {
-        double val = 0;
-        RUN_METH(Double);
-        res = vm->upcalls->doubleClass->doNew(vm);
-        vm->upcalls->doubleValue->setDoubleField(res, val);
-      }
-    } else {
-      JavaObject* val = 0;
-      RUN_METH(JavaObject);
-      res = val;
-    } 
-    return (jobject)res;
-  }
-  vm->illegalArgumentExceptionForMethod(meth, 0, 0); 
-  return 0;
-}
-
-#undef RUN_METH
-
-JNIEXPORT jobjectArray JNICALL Java_java_lang_reflect_Method_getExceptionTypes(
-#ifdef NATIVE_JNI
-JNIEnv *env, 
-#endif
- jobject _meth) {
-  verifyNull(_meth);
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaMethod* meth = (JavaMethod*)vm->upcalls->methodSlot->getInt32Field((JavaObject*)_meth);
-  UserClass* cl = 0;
-#ifdef ISOLATE_SHARING
-  jclass Cl = (jclass)vm->upcalls->methodClass->getInt32Field((JavaObject*)_meth);
-  cl = (UserClass*)NativeUtil::resolvedImplClass(Cl, false);
-#else
-  cl = meth->classDef;
-#endif
-  return (jobjectArray)NativeUtil::getExceptionTypes(cl, meth);
-}
-
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClass.cpp.inc (removed)
@@ -1,386 +0,0 @@
-//===---- ClasspathVMClass.cpp - GNU classpath java/lang/VMClass ----------===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-
-#include "types.h"
-
-#include "JavaAccess.h"
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaConstantPool.h"
-#include "JavaObject.h"
-#include "JavaString.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "JavaUpcalls.h"
-#include "Jnjvm.h"
-#include "NativeUtil.h"
-#include "Reader.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-JNIEXPORT jboolean JNICALL Java_java_lang_VMClass_isArray(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-jobject klass) {
-
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl = 
-    (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField((JavaObject*)klass);
-
-  return cl->isArray();
-  
-}
-
-JNIEXPORT jclass JNICALL Java_java_lang_VMClass_forName(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-
-                                                        jobject str, 
-                                                        jboolean clinit, 
-                                                        jobject loader) {
-
-  Jnjvm* vm = JavaThread::get()->isolate; 
-  JnjvmClassLoader* JCL = JnjvmClassLoader::getJnjvmLoaderFromJavaObject((JavaObject*)loader, vm);
-  UserCommonClass* cl = JCL->lookupClassFromJavaString((JavaString*)str,
-                                                        true, false);
-  if (cl != 0) {
-    if (clinit) {
-      cl->initialiseClass(vm);
-    }
-    return (jclass)(cl->getClassDelegatee(vm));
-  } else {
-    vm->classNotFoundException((JavaString*)str);
-    return 0;
-  }
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMClass_getDeclaredConstructors(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                                         jclass clazz,
-#endif
-
-                                                                         jclass Cl, 
-                                                                         jboolean publicOnly) {
-
-  UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
-  Jnjvm* vm = JavaThread::get()->isolate;
-
-  if (cl->isArray() || cl->isInterface()) {
-    return (jobject)vm->upcalls->constructorArrayClass->doNew(0, vm);
-  } else {
-    std::vector<JavaMethod*> res;
-    cl->getDeclaredConstructors(res, publicOnly);
-    
-    ArrayObject* ret = 
-      (ArrayObject*)vm->upcalls->constructorArrayClass->doNew(res.size(), vm);
-    sint32 index = 0;
-    for (std::vector<JavaMethod*>::iterator i = res.begin(), e = res.end();
-          i != e; ++i, ++index) {
-      JavaMethod* meth = *i;
-      // TODO: check parameter types
-      UserClass* Cons = vm->upcalls->newConstructor;
-      JavaObject* tmp = Cons->doNew(vm);
-      vm->upcalls->initConstructor->invokeIntSpecial(vm, Cons, tmp, Cl, meth);
-      ret->elements[index] = tmp;
-    }
-    return (jobject)ret;
-  }
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMClass_getDeclaredMethods(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                                    jclass clazz,
-#endif
-
-                                                                    jclass Cl, 
-                                                                    jboolean publicOnly) {
-
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
-
-  if (cl->isArray()) {
-    return (jobject)vm->upcalls->methodArrayClass->doNew(0, vm);
-  } else {
-    std::vector<JavaMethod*> res;
-    cl->getDeclaredMethods(res, publicOnly);
-    
-    ArrayObject* ret = (ArrayObject*)vm->upcalls->methodArrayClass->doNew(res.size(), vm);
-    sint32 index = 0;
-    for (std::vector<JavaMethod*>::iterator i = res.begin(), e = res.end();
-          i != e; ++i, ++index) {
-      JavaMethod* meth = *i;
-      // TODO: check parameter types
-      UserClass* Meth = vm->upcalls->newMethod;
-      JavaObject* tmp = Meth->doNew(vm);
-      vm->upcalls->initMethod->invokeIntSpecial(vm, Meth, tmp, Cl,
-                                              vm->UTF8ToStr(meth->name), meth);
-      ret->elements[index] = tmp;
-    }
-    return (jobject)ret;
-  }
-}
-
-JNIEXPORT jint JNICALL Java_java_lang_VMClass_getModifiers(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                           jclass clazz,
-#endif
-                                                           jclass Cl, 
-                                                           jboolean ignore) {
-
-  UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
-  return cl->getAccess();
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMClass_getName(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                         jclass clazz, 
-#endif
-                                                         jobject Cl) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl = 
-    (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField((JavaObject*)Cl);
-  
-  const UTF8* iname = cl->getName();
-  const UTF8* res = iname->internalToJava(cl->classLoader->hashUTF8, 0, iname->size);
-
-  return (jobject)(vm->UTF8ToStr(res));
-}
-
-JNIEXPORT jboolean JNICALL Java_java_lang_VMClass_isPrimitive(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                              jclass clazz, 
-#endif
-                                                              jclass Cl) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl = 
-    (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField((JavaObject*)Cl);
-  
-  return cl->isPrimitive();
-}
-
-JNIEXPORT jboolean JNICALL Java_java_lang_VMClass_isInterface(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                              jclass clazz, 
-#endif
-                                                              jclass Cl) {
-  UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
-
-  return cl->isInterface();
-}
-
-JNIEXPORT jclass JNICALL Java_java_lang_VMClass_getComponentType(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                                 jclass clazz, 
-#endif
-                                                                 jclass Cl) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl = 
-    (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField((JavaObject*)Cl);
-
-  if (cl->isArray()) {
-    UserCommonClass* bc = ((UserClassArray*)cl)->baseClass();
-    return (jclass)(bc->getClassDelegatee(vm));
-  } else {
-    return 0;
-  }
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMClass_getClassLoader(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jclass Cl) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl = 
-    (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField((JavaObject*)Cl);
-  return (jobject)cl->classLoader->getJavaClassLoader();
-}
-
-JNIEXPORT jboolean JNICALL Java_java_lang_VMClass_isAssignableFrom(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jclass Cl1, jclass Cl2) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl1 = 
-    (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField((JavaObject*)Cl1);
-  UserCommonClass* cl2 = 
-    (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField((JavaObject*)Cl2);
-
-  cl2->resolveClass();
-  return cl2->isAssignableFrom(cl1);
-
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMClass_getSuperclass(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jclass Cl) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl = 
-    (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField((JavaObject*)Cl);
-  if (cl->isInterface())
-    return 0;
-  else {
-    cl->resolveClass();
-    if (cl->getSuper()) return (jobject)cl->getSuper()->getClassDelegatee(vm);
-    else return 0;
-  }
-}
-
-JNIEXPORT bool JNICALL Java_java_lang_VMClass_isInstance(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jclass Cl, jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl = 
-    (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField((JavaObject*)Cl);
-  return ((JavaObject*)obj)->instanceOf(cl);
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMClass_getDeclaredFields(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jclass Cl, jboolean publicOnly) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserClass* cl = NativeUtil::resolvedImplClass(Cl, false)->asClass();
-
-  if (!cl) {
-    return (jobject)vm->upcalls->fieldArrayClass->doNew(0, vm);
-  } else {
-    std::vector<JavaField*> res;
-    cl->getDeclaredFields(res, publicOnly);
-    
-    ArrayObject* ret = 
-      (ArrayObject*)vm->upcalls->fieldArrayClass->doNew(res.size(), vm);
-    sint32 index = 0;
-    for (std::vector<JavaField*>::iterator i = res.begin(), e = res.end();
-          i != e; ++i, ++index) {
-      JavaField* field = *i;
-      // TODO: check parameter types
-      UserClass* Field = vm->upcalls->newField;
-      JavaObject* tmp = Field->doNew(vm);
-      vm->upcalls->initField->invokeIntSpecial(vm, Field, tmp, Cl,
-                                             vm->UTF8ToStr(field->name), field);
-      ret->elements[index] = tmp;
-    }
-    return (jobject)ret;
-  }
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMClass_getInterfaces(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jclass Cl) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
-  std::vector<UserClass*> * interfaces = cl->getInterfaces();
-  ArrayObject* ret = 
-    (ArrayObject*)vm->upcalls->classArrayClass->doNew(interfaces->size(), vm);
-  sint32 index = 0;
-  for (std::vector<UserClass*>::iterator i = interfaces->begin(),
-       e = interfaces->end(); i != e; ++i, ++index) {
-    UserClass* klass = *i; 
-    ret->elements[index] = klass->getClassDelegatee(vm);
-  }
-  return (jobject)ret;
-}
-
-
-JNIEXPORT jclass JNICALL Java_java_lang_VMClass_getDeclaringClass(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jclass Cl) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserClass* cl = NativeUtil::resolvedImplClass(Cl, false)->asClass();
-  if (cl) {
-    cl->resolveInnerOuterClasses();
-    UserClass* outer = cl->getOuterClass();
-    if (outer) {
-      return (jclass)outer->getClassDelegatee(vm);
-    }
-  }
-
-  return 0;
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMClass_getDeclaredClasses(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jclass Cl, bool publicOnly) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserClass* cl = NativeUtil::resolvedImplClass(Cl, false)->asClass();
-  if (cl) {
-    cl->resolveInnerOuterClasses();
-    std::vector<UserClass*>* innerClasses = cl->getInnerClasses();
-    ArrayObject* res = 
-      (ArrayObject*)vm->upcalls->constructorArrayClass->doNew(innerClasses->size(), vm);
-    uint32 index = 0;
-    for (std::vector<UserClass*>::iterator i = innerClasses->begin(), 
-         e = innerClasses->end(); i!= e; i++) {
-      res->elements[index++] = (*i)->getClassDelegatee(vm); 
-    }
-    return (jobject)res;
-  }
-
-  return 0;
-
-}
-
-
-JNIEXPORT void JNICALL Java_java_lang_VMClass_throwException(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jobject throwable) {
-  JavaThread::throwException((JavaObject*)throwable);
-}
-
-JNIEXPORT jobjectArray Java_java_lang_VMClass_getDeclaredAnnotations(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-jclass Cl) {
-  // TODO implement me
-  Jnjvm* vm = JavaThread::get()->isolate;
-  ArrayObject* res = (ArrayObject*)vm->upcalls->constructorArrayAnnotation->doNew(0, vm);
-  return (jobjectArray)res;
-}
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClassLoader.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClassLoader.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClassLoader.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMClassLoader.cpp.inc (removed)
@@ -1,113 +0,0 @@
-//===- ClasspathVMClassLoader.cpp - GNU classpath java/lang/VMClassLoader -===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-
-#include "types.h"
-
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaObject.h"
-#include "JavaString.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "Jnjvm.h"
-#include "LockedMap.h"
-#include "NativeUtil.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMClassLoader_getPrimitiveClass(                                                     
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-jchar byteId) {
-  
-  Jnjvm* vm = JavaThread::get()->isolate;
-  UserClassPrimitive* prim = 
-    UserClassPrimitive::byteIdToPrimitive(byteId, vm->upcalls);
-  if (!prim)
-    vm->unknownError("unknown byte primitive %c", byteId);
-  
-  return (jobject)prim->getClassDelegatee(vm);
-  
-}
-
-JNIEXPORT jclass JNICALL Java_java_lang_VMClassLoader_findLoadedClass(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-                                                                      jobject loader, 
-                                                                      jobject _name) {
-
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaString* name = (JavaString*)_name;
-  const UTF8* utf8 = name->strToUTF8(vm);
-  JnjvmClassLoader* JCL = JnjvmClassLoader::getJnjvmLoaderFromJavaObject((JavaObject*)loader, vm);
-  UserCommonClass* cl = JCL->lookupClass(utf8);
-
-  if (cl) return (jclass)(cl->getClassDelegatee(vm));
-  else return 0;
-}
-
-JNIEXPORT jclass JNICALL Java_java_lang_VMClassLoader_loadClass(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-                                                                jobject _str, 
-                                                                jboolean doResolve) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaString* str = (JavaString*)_str;
-
-  JnjvmClassLoader* JCL = vm->bootstrapLoader;
-  UserCommonClass* cl = JCL->lookupClassFromJavaString(str, doResolve, false);
-
-  if (cl != 0) {
-    return (jclass)cl->getClassDelegatee(vm);
-  } else {
-    return 0;
-  }
-}
-
-JNIEXPORT jclass JNICALL Java_java_lang_VMClassLoader_defineClass(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-                                                                  jobject loader, 
-                                                                  jobject _str, 
-                                                                  jobject bytes, 
-                                                                  jint off, 
-                                                                  jint len, 
-                                                                  jobject pd) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JnjvmClassLoader* JCL = JnjvmClassLoader::getJnjvmLoaderFromJavaObject((JavaObject*)loader, vm);
-  JavaString* str = (JavaString*)_str;
-  const UTF8* name = str->value->javaToInternal(JCL->hashUTF8, str->offset, str->count);
-  UserClass* cl = JCL->constructClass(name, (ArrayUInt8*)bytes);
-
-  return (jclass)(cl->getClassDelegatee(vm, (JavaObject*)pd));
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMClassLoader_resolveClass(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-                                                                 jclass Cl) {
-  verifyNull(Cl);
-  NativeUtil::resolvedImplClass(Cl, false);
-}
-
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc (removed)
@@ -1,668 +0,0 @@
-//===- ClasspathVMField.cpp - GNU classpath java/lang/reflect/Field -------===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-
-#include "JavaClass.h"
-#include "JavaThread.h"
-#include "JavaTypes.h"
-#include "JavaUpcalls.h"
-#include "Jnjvm.h"
-#include "NativeUtil.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-
-static UserClass* internalGetClass(Jnjvm* vm, JavaField* field, jobject Field) {
-#ifdef ISOLATE_SHARING
-  jclass Cl = (jclass)vm->upcalls->fieldClass->getInt32Field((JavaObject*)Field);
-  UserClass* cl = (UserClass*)NativeUtil::resolvedImplClass(Cl, false);
-  return cl;
-#else
-  return field->classDef;
-#endif
-}
-
-JNIEXPORT jint JNICALL Java_java_lang_reflect_Field_getModifiersInternal(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)obj);
-  return field->access;
-}
-
-JNIEXPORT jclass JNICALL Java_java_lang_reflect_Field_getType(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)obj);
-  UserClass* fieldCl = internalGetClass(vm, field, obj);
-  JnjvmClassLoader* loader = fieldCl->classLoader;
-  UserCommonClass* cl = field->getSignature()->assocClass(loader);
-  return (jclass)cl->getClassDelegatee(vm);
-}
-
-JNIEXPORT jint JNICALL Java_java_lang_reflect_Field_getInt(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  const Typedef* type = field->getSignature();
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-
-    if (prim->isInt())
-      return (sint32)field->getInt32Field(Obj);
-    if (prim->isChar())
-      return (uint32)field->getInt16Field(Obj);
-    if (prim->isByte())
-      return (sint32)field->getInt8Field(Obj);
-    if (prim->isShort())
-      return (sint32)field->getInt16Field(Obj);
-  }
-  
-  JavaThread::get()->isolate->illegalArgumentException("");
-  return 0;
-  
-}
-
-JNIEXPORT jlong JNICALL Java_java_lang_reflect_Field_getLong(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    
-    if (prim->isInt())
-      return (sint64)field->getInt32Field(Obj);
-    if (prim->isChar())
-      return (uint64)field->getInt16Field(Obj);
-    if (prim->isByte())
-      return (sint64)field->getInt8Field(Obj);
-    if (prim->isShort())
-      return (sint64)field->getInt16Field(Obj);
-    if (prim->isLong())
-      return (sint64)field->getLongField(Obj);
-  }
-
-  JavaThread::get()->isolate->illegalArgumentException("");
-  return 0;
-}
-
-JNIEXPORT jboolean JNICALL Java_java_lang_reflect_Field_getBoolean(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isBool())  
-      return (uint8)field->getInt8Field(Obj);
-  }
-  
-  JavaThread::get()->isolate->illegalArgumentException("");
-
-  return 0;
-  
-}
-
-JNIEXPORT jfloat JNICALL Java_java_lang_reflect_Field_getFloat(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isByte())
-      return (jfloat)field->getInt8Field(Obj);
-    if (prim->isInt())
-      return (jfloat)field->getInt32Field((JavaObject*)obj);
-    if (prim->isShort())
-      return (jfloat)field->getInt16Field((JavaObject*)obj);
-    if (prim->isLong())
-      return (jfloat)field->getLongField((JavaObject*)obj);
-    if (prim->isChar())
-      return (jfloat)(uint32)field->getInt16Field((JavaObject*)obj);
-    if (prim->isFloat())
-      return (jfloat)field->getFloatField((JavaObject*)obj);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-  return 0.0;
-}
-
-JNIEXPORT jbyte JNICALL Java_java_lang_reflect_Field_getByte(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isByte())
-      return (sint8)field->getInt8Field(Obj);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-  
-  return 0;
-}
-
-JNIEXPORT jchar JNICALL Java_java_lang_reflect_Field_getChar(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isChar())
-      return (uint16)field->getInt16Field((JavaObject*)obj);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-  
-  return 0;
-  
-}
-
-JNIEXPORT jshort JNICALL Java_java_lang_reflect_Field_getShort(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isShort())
-      return (sint16)field->getInt16Field(Obj);
-    if (prim->isByte())
-      return (sint16)field->getInt8Field(Obj);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-  
-  return 0;
-}
-  
-JNIEXPORT jdouble JNICALL Java_java_lang_reflect_Field_getDouble(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isByte())
-      return (jdouble)(sint64)field->getInt8Field(Obj);
-    if (prim->isInt())
-      return (jdouble)(sint64)field->getInt32Field(Obj);
-    if (prim->isShort())
-      return (jdouble)(sint64)field->getInt16Field(Obj);
-    if (prim->isLong())
-      return (jdouble)(sint64)field->getLongField(Obj);
-    if (prim->isChar())
-      return (jdouble)(uint64)field->getInt16Field(Obj);
-    if (prim->isFloat())
-      return (jdouble)field->getFloatField(Obj);
-    if (prim->isDouble())
-      return (jdouble)field->getDoubleField(Obj);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-  return 0.0;
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_reflect_Field_get(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject _obj) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)_obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  JavaObject* res = 0;
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isBool()) {
-      uint8 val =  field->getInt8Field(Obj);
-      res = vm->upcalls->boolClass->doNew(vm);
-      vm->upcalls->boolValue->setInt8Field(res, val);
-    }
-    else if (prim->isByte()) {
-      sint8 val =  field->getInt8Field(Obj);
-      res = vm->upcalls->byteClass->doNew(vm);
-      vm->upcalls->byteValue->setInt8Field(res, val);
-    }
-    else if (prim->isChar()) {
-      uint16 val =  field->getInt16Field(Obj);
-      res = vm->upcalls->charClass->doNew(vm);
-      vm->upcalls->charValue->setInt16Field(res, val);
-    }
-    else if (prim->isShort()) {
-      sint16 val =  field->getInt16Field(Obj);
-      res = vm->upcalls->shortClass->doNew(vm);
-      vm->upcalls->shortValue->setInt16Field(res, val);
-    }
-    else if (prim->isInt()) {
-      sint32 val =  field->getInt32Field(Obj);
-      res = vm->upcalls->intClass->doNew(vm);
-      vm->upcalls->intValue->setInt32Field(res, val);
-    }
-    else if (prim->isLong()) {
-      sint64 val =  field->getLongField(Obj);
-      res = vm->upcalls->longClass->doNew(vm);
-      vm->upcalls->longValue->setLongField(res, val);
-    }
-    else if (prim->isFloat()) {
-      float val =  field->getFloatField(Obj);
-      res = vm->upcalls->floatClass->doNew(vm);
-      vm->upcalls->floatValue->setFloatField(res, val);
-    }
-    else if (prim->isDouble()) {
-      double val =  field->getDoubleField(Obj);
-      res = vm->upcalls->doubleClass->doNew(vm);
-      vm->upcalls->doubleValue->setDoubleField(res, val);
-    }
-  } else {
-    res =  field->getObjectField(Obj);
-  }
-  return (jobject)res;
-}
-
-JNIEXPORT void JNICALL Java_java_lang_reflect_Field_set(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj, jobject val) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  void** buf = (void**)alloca(sizeof(uint64));
-  void* _buf = (void*)buf;
-  NativeUtil::decapsulePrimitive(JavaThread::get()->isolate, buf, (JavaObject*)val, field->getSignature());
-
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isBool())
-      return field->setInt8Field(Obj, ((uint8*)_buf)[0]);
-    if (prim->isByte())
-      return field->setInt8Field(Obj, ((sint8*)_buf)[0]);
-    if (prim->isChar())
-      return field->setInt16Field(Obj, ((uint16*)_buf)[0]);
-    if (prim->isShort())
-      return field->setInt16Field(Obj, ((sint16*)_buf)[0]);
-    if (prim->isInt())
-      return field->setInt32Field(Obj, ((sint32*)_buf)[0]);
-    if (prim->isLong())
-      return field->setLongField(Obj, ((sint64*)_buf)[0]);
-    if (prim->isFloat())
-      return field->setFloatField(Obj, ((float*)_buf)[0]);
-    if (prim->isDouble())
-      return field->setDoubleField(Obj, ((double*)_buf)[0]);
-  } else {
-    return field->setObjectField(Obj, ((JavaObject**)_buf)[0]);
-  }
-}
-
-JNIEXPORT void JNICALL Java_java_lang_reflect_Field_setBoolean(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj, jboolean val) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
- 
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isBool())
-      return field->setInt8Field(Obj, (uint8)val);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-  
-}
-
-JNIEXPORT void JNICALL Java_java_lang_reflect_Field_setByte(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj, jbyte val) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isByte())
-      return field->setInt8Field(Obj, (sint8)val);
-    if (prim->isShort())
-      return field->setInt16Field(Obj, (sint16)val);
-    if (prim->isInt())
-      return field->setInt32Field(Obj, (sint32)val);
-    if (prim->isLong())
-      return field->setLongField(Obj, (sint64)val);
-    if (prim->isFloat())
-      return field->setFloatField(Obj, (float)val);
-    if (prim->isDouble())
-      return field->setDoubleField(Obj, (double)val);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-}
-
-JNIEXPORT void JNICALL Java_java_lang_reflect_Field_setChar(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj, jchar val) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isChar())
-      return field->setInt16Field(Obj, (uint16)val);
-    if (prim->isInt())
-      return field->setInt32Field(Obj, (uint32)val);
-    if (prim->isLong())
-      return field->setLongField(Obj, (uint64)val);
-    if (prim->isFloat())
-      return field->setFloatField(Obj, (float)(uint32)val);
-    if (prim->isDouble())
-      return field->setDoubleField(Obj, (double)(uint64)val);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-}
-
-JNIEXPORT void JNICALL Java_java_lang_reflect_Field_setShort(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj, jshort val) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isShort())
-      return field->setInt16Field(Obj, (sint16)val);
-    if (prim->isInt())
-      return field->setInt32Field(Obj, (sint32)val);
-    if (prim->isLong())
-      return field->setLongField(Obj, (sint64)val);
-    if (prim->isFloat())
-      return field->setFloatField(Obj, (float)val);
-    if (prim->isDouble())
-      return field->setDoubleField(Obj, (double)val);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-}
-
-JNIEXPORT void JNICALL Java_java_lang_reflect_Field_setInt(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj, jint val) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isInt())
-      return field->setInt32Field(Obj, (sint32)val);
-    if (prim->isLong())
-      return field->setLongField(Obj, (sint64)val);
-    if (prim->isFloat())
-      return field->setFloatField(Obj, (float)val);
-    if (prim->isDouble())
-      return field->setDoubleField(Obj, (double)val);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-}
-
-JNIEXPORT void JNICALL Java_java_lang_reflect_Field_setLong(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj, jlong val) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isLong())
-      return field->setLongField(Obj, (sint64)val);
-    if (prim->isFloat())
-      return field->setFloatField(Obj, (float)val);
-    if (prim->isDouble())
-      return field->setDoubleField(Obj, (double)val);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-}
-
-JNIEXPORT void JNICALL Java_java_lang_reflect_Field_setFloat(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj, jfloat val) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  JavaObject* Obj = (JavaObject*)obj;
-  
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isFloat())
-      return field->setFloatField(Obj, (float)val);
-    if (prim->isDouble())
-      return field->setDoubleField(Obj, (double)val);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-}
-
-JNIEXPORT void JNICALL Java_java_lang_reflect_Field_setDouble(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject Field, jobject obj, jdouble val) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  JavaObject* Obj = (JavaObject*)obj;
-
-  if (isStatic(field->access)) {
-    UserClass* cl = internalGetClass(vm, field, Field);
-    cl->initialiseClass(vm);
-    Obj = cl->getStaticInstance();
-  }
-  
-  const Typedef* type = field->getSignature();
-  if (type->isPrimitive()) {
-    const PrimitiveTypedef* prim = (PrimitiveTypedef*)type;
-    if (prim->isDouble())
-      return field->setDoubleField(Obj, (double)val);
-  }
-  JavaThread::get()->isolate->illegalArgumentException("");
-}
-
-JNIEXPORT jlong JNICALL Java_sun_misc_Unsafe_objectFieldOffset(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-JavaObject* Unsafe,
-JavaObject* Field) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)Field);
-  return (jlong)field->ptrOffset;
-}
-
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMObject.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMObject.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMObject.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMObject.cpp.inc (removed)
@@ -1,101 +0,0 @@
-//===------ ClasspathVMObject.cpp - GNU classpath java/lang/VMObject ------===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-
-#include "types.h"
-
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaObject.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "Jnjvm.h"
-#include "NativeUtil.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMObject_clone(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz, 
-#endif
-                                                        jobject _src) {
-  
-  JavaObject* src = (JavaObject*)_src;
-  UserCommonClass* cl = src->classOf;
-  uint64 size = 0;
-  if (cl->isArray()) {
-    size = sizeof(JavaArray) + ((JavaArray*)src)->size * 
-            ((UserClassArray*)cl)->baseClass()->getVirtualSize();
-  } else {
-    size = cl->getVirtualSize();
-  }
-  JavaObject* res = (JavaObject*)
-    JavaThread::get()->isolate->allocator.allocateObject(size, src->getVirtualTable());
-  memcpy(res, src, size);
-  res->lock = 0;
-  return (jobject)res;
-} 
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMObject_getClass(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-                                                           jobject _obj) {
-  
-  JavaObject* obj = (JavaObject*)_obj;
-  Jnjvm* vm = JavaThread::get()->isolate;
-  return (jobject)(obj->classOf->getClassDelegatee(vm)); 
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMObject_notifyAll(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-
-                                                         jobject _obj) {
-  JavaObject* obj = (JavaObject*)_obj;
-  obj->notifyAll();
-}
-
-
-JNIEXPORT void JNICALL Java_java_lang_VMObject_wait(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-jobject _object, jlong ms, jint ns) {
-  uint32 sec = (uint32) (ms / 1000);
-  uint32 usec = (ns / 1000) + 1000 * (ms % 1000);
-  JavaObject* obj = (JavaObject*)_object;
-  if (sec || usec) {
-    struct timeval t;
-    t.tv_sec = sec;
-    t.tv_usec = usec;
-    obj->timedWait(t);
-  } else {
-    obj->wait();
-  }
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMObject_notify(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-jobject obj) {
-  ((JavaObject*)obj)->notify();
-}
-
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMRuntime.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMRuntime.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMRuntime.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMRuntime.cpp.inc (removed)
@@ -1,183 +0,0 @@
-//===------ ClasspathVMRuntime.cpp - GNU classpath java/lang/VMRuntime ----===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <dlfcn.h>
-#include <string.h>
-
-#include "MvmGC.h"
-
-#include "types.h"
-
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaObject.h"
-#include "JavaString.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "Jnjvm.h"
-#include "NativeUtil.h"
-
-
-using namespace jnjvm;
-
-extern "C" {
-
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMRuntime_mapLibraryName(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                                  jclass clazz,
-#endif
-                                                                  jobject _strLib) {
-  JavaString* strLib = (JavaString*)_strLib;
-  Jnjvm* vm = JavaThread::get()->isolate;
-
-  const UTF8* utf8Lib = strLib->value;
-  uint32 stLib = strLib->offset;
-  sint32 lgLib = strLib->count;
-  sint32 lgPre = vm->prelib->size;
-  sint32 lgPost = vm->postlib->size;
-  
-  uint32 size = (uint32)(lgPre + lgLib + lgPost);
-  uint16* elements = (uint16*)alloca(size * sizeof(uint16));
-
-  memmove(elements, vm->prelib->elements, lgPre * sizeof(uint16));
-  memmove(&(elements[lgPre]), &(utf8Lib->elements[stLib]), lgLib * sizeof(uint16));
-  memmove(&(elements[lgPre + lgLib]), vm->postlib->elements, lgPost * sizeof(uint16));
-  
-  // TODO: find a better place to store the UTF8
-  const UTF8* res = vm->bootstrapLoader->readerConstructUTF8(elements, size);
-
-  return (jobject)(vm->UTF8ToStr(res));
-  
-}
-
-typedef int (*onLoad_t)(const void**, void*);
-
-JNIEXPORT jint JNICALL Java_java_lang_VMRuntime_nativeLoad(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-                                                           jobject _str,
-                                                           jobject _loader) {
-  JavaString* str = (JavaString*)_str;
-#ifndef SERVICE_VM
-  Jnjvm* vm = JavaThread::get()->isolate;
-#else
-  Jnjvm* vm = Jnjvm::bootstrapVM;
-#endif
-  
-  char* buf = str->strToAsciiz();
-  
-  void* res = dlopen(buf, RTLD_LAZY | RTLD_LOCAL);
-  if (res != 0) {
-    vm->nativeLibs.push_back(res);
-    onLoad_t onLoad = (onLoad_t)(intptr_t)dlsym(res, "JNI_OnLoad");
-    if (onLoad) onLoad(&vm->javavmEnv, 0);
-    return 1;
-  } else {
-    return 0;
-  }
-}
-
-
-JNIEXPORT void JNICALL Java_java_lang_VMRuntime_gc(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-) {
-#ifdef MULTIPLE_GC
-    mvm::Thread::get()->GC->collect();
-#else
-  Collector::collect();
-#endif
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMRuntime_runFinalization(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-) {
-  return;
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMRuntime_runFinalizationForExit(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-) {
-  return;
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMRuntime_exit(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-jint par1) {
-#if defined(ISOLATE) || defined(ISOLATE_SHARING)
-  // TODO: do a longjmp
-  exit(par1);
-#else
-  exit(par1);
-#endif
-}
-
-JNIEXPORT jlong Java_java_lang_VMRuntime_freeMemory(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-) {
-#ifdef MULTIPLE_GC
-  return (jlong)mvm::Thread::get()->GC->getFreeMemory();
-#else
-  return (jlong)Collector::getFreeMemory();
-#endif
-}
-
-JNIEXPORT jlong Java_java_lang_VMRuntime_totalMemory(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-) {
-#ifdef MULTIPLE_GC
-  return (jlong)mvm::Thread::get()->GC->getTotalMemory();
-#else
-  return (jlong)Collector::getTotalMemory();
-#endif
-}
-
-JNIEXPORT jlong Java_java_lang_VMRuntime_maxMemory(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-) {
-#ifdef MULTIPLE_GC
-  return (jlong)mvm::Thread::get()->GC->getMaxMemory();
-#else
-  return (jlong)Collector::getMaxMemory();
-#endif
-}
-
-JNIEXPORT jint Java_java_lang_VMRuntime_availableProcessors(){
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-  return 1;
-}
-}
-

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMStackWalker.cpp.inc (removed)
@@ -1,151 +0,0 @@
-//===- ClasspathVMStackWalker.cpp -----------------------------------------===//
-//===------------ GNU classpath gnu/classpath/VMStackWalker ---------------===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-
-#include "types.h"
-
-#include "mvm/JIT.h"
-
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaJIT.h"
-#include "JavaObject.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "JavaUpcalls.h"
-#include "Jnjvm.h"
-#include "NativeUtil.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-#ifdef ISOLATE_SHARING
-uint32 getPools(UserConstantPool** pools, uint32 size) {
-  unsigned int* top;
-  register unsigned int  **cur = ⊤
-  register unsigned int  **max = (unsigned int**)mvm::Thread::get()->baseSP;
-  
-  uint32 i = 0;
-  for(; cur<max && i < size; cur++) {
-    void* obj = (void*)(*cur);
-    obj = Collector::begOf(obj);
-    if (obj && ((mvm::Object*)obj)->getVirtualTable() == UserConstantPool::VT) {
-      UserConstantPool* ctp = (UserConstantPool*)obj;
-      pools[i++] = ctp;
-    }
-  }
-  return i;
-}
-#endif
-
-#ifdef ISOLATE_SHARING
-JavaObject* getClassInContext(Jnjvm* vm, Class* cl, UserConstantPool** ctps, uint32& ctpIndex) {
-  for (; ctpIndex < 100; ++ctpIndex) {
-    UserClass* newCl = ctps[ctpIndex]->getClass();
-    if (cl == newCl->classDef) return newCl->getClassDelegatee(vm);
-  }
-  return 0;
-}
-
-ArrayObject* recGetClassContext(Jnjvm* vm, int** stack, uint32 size, uint32 first, uint32 rec, UserConstantPool** ctps, uint32 ctpIndex) {
-  if (size != first) {
-    JavaMethod* meth = JavaJIT::IPToJavaMethod(stack[first]);
-    if (meth) {
-      JavaObject* obj = getClassInContext(vm, meth->classDef, ctps, ctpIndex);
-      ArrayObject* res = recGetClassContext(vm, stack, size, first + 1, rec + 1, ctps, ctpIndex); 
-      res->elements[rec] = obj;
-      assert(res->elements[rec] && "Did not found the user class");
-      return res;
-    } else {
-      return recGetClassContext(vm, stack, size, first + 1, rec, ctps, ctpIndex);
-    }   
-  } else {
-    return (ArrayObject*)vm->upcalls->classArrayClass->doNew(rec, vm);
-  }
-}
-#else
-ArrayObject* recGetClassContext(Jnjvm* vm, int** stack, uint32 size, uint32 first, uint32 rec) {
-  if (size != first) {
-    JavaMethod* meth = JavaJIT::IPToJavaMethod(stack[first]);
-    if (meth) {
-      ArrayObject* res = recGetClassContext(vm, stack, size, first + 1, rec + 1); 
-      res->elements[rec] = meth->classDef->getClassDelegatee(vm);
-      return res;
-    } else {
-      return recGetClassContext(vm, stack, size, first + 1, rec);
-    }   
-  } else {
-    return (ArrayObject*)vm->upcalls->classArrayClass->doNew(rec, vm);
-  }
-}
-#endif
-
-JNIEXPORT jobject JNICALL Java_gnu_classpath_VMStackWalker_getClassContext(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  int* ips[100];
-  int real_size = mvm::jit::getBacktrace((void**)(void*)ips, 100);
-#ifdef ISOLATE_SHARING
-  UserConstantPool* pools[100];
-  getPools(pools, 100);
-#endif
-
-  int i = 0;
-  int first = 0;
-  UserCommonClass* cl = vm->upcalls->vmStackWalker; 
-
-  while (i < real_size) {
-    JavaMethod* meth = JavaJIT::IPToJavaMethod(ips[i++]);
-#ifdef ISOLATE_SHARING
-    if (meth && meth->classDef == cl->classDef) {
-#else
-    if (meth && meth->classDef == cl) {
-#endif
-      first = i;
-      break;
-    }   
-  }
-
-#ifdef ISOLATE_SHARING
-  return (jobject)recGetClassContext(vm, ips, real_size, first, 0, pools, 0);
-#else
-  return (jobject)recGetClassContext(vm, ips, real_size, first, 0);
-#endif
-}
-
-JNIEXPORT jobject JNICALL Java_gnu_classpath_VMStackWalker_getClassLoader(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-jclass _Cl) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaObject* Cl = (JavaObject*)_Cl;
-  UserCommonClass* cl = (UserCommonClass*)vm->upcalls->vmdataClass->getObjectField(Cl);
-  return (jobject)cl->classLoader->getJavaClassLoader();
-}
-
-extern "C" JavaObject* getCallingClass() {
-  UserClass* cl = JavaJIT::getCallingClass();
-  if (cl) return cl->getClassDelegatee(JavaThread::get()->isolate);
-  return 0;
-}
-
-extern "C" JavaObject* getCallingClassLoader() {
-  return JavaJIT::getCallingClassLoader();
-}
-
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystem.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystem.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystem.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystem.cpp.inc (removed)
@@ -1,109 +0,0 @@
-//===-- ClasspathVMSystem.cpp - GNU classpath java/lang/VMSystem ----------===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-
-#include "types.h"
-
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaObject.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "Jnjvm.h"
-#include "NativeUtil.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-JNIEXPORT void JNICALL Java_java_lang_VMSystem_arraycopy(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                          jclass _cl,
-#endif
-                                                          jobject _src,
-                                                          jint sstart,
-                                                          jobject _dst,
-                                                          jint dstart,
-                                                          jint len) {
-  jnjvm::Jnjvm *vm = JavaThread::get()->isolate;
-  JavaArray* src = (JavaArray*)_src;
-  JavaArray* dst = (JavaArray*)_dst;
-
-  verifyNull(src);
-  verifyNull(dst);
-  
-  if (!(src->classOf->isArray() && dst->classOf->isArray())) {
-    vm->arrayStoreException();
-  }
-  
-  UserClassArray* ts = (UserClassArray*)src->classOf;
-  UserClassArray* td = (UserClassArray*)dst->classOf;
-  UserCommonClass* dstType = td->baseClass();
-  UserCommonClass* srcType = ts->baseClass();
-
-  if (len > src->size) {
-    vm->indexOutOfBounds(src, len);
-  } else if (len > dst->size) {
-    vm->indexOutOfBounds(dst, len);
-  } else if (len + sstart > src->size) {
-    vm->indexOutOfBounds(src, len + sstart);
-  } else if (len + dstart > dst->size) {
-    vm->indexOutOfBounds(dst, len + dstart);
-  } else if (dstart < 0) {
-    vm->indexOutOfBounds(dst, dstart);
-  } else if (sstart < 0) {
-    vm->indexOutOfBounds(src, sstart);
-  } else if (len < 0) {
-    vm->indexOutOfBounds(src, len);
-  } else if ((dstType->isPrimitive() || srcType->isPrimitive()) &&
-             srcType != dstType) {
-    vm->arrayStoreException();
-  }
-  
-  jint i = sstart;
-  bool doThrow = false;
-  if (!(dstType->isPrimitive())) {
-    while (i < sstart + len && !doThrow) {
-      JavaObject* cur = ((ArrayObject*)src)->elements[i];
-      if (cur) {
-        if (!(cur->classOf->isAssignableFrom(dstType))) {
-          doThrow = true;
-          len = i;
-        }
-      }
-      ++i;
-    }
-  }
-  
-  uint32 size = dstType->isPrimitive() ? 
-                      dstType->virtualSize : sizeof(JavaObject*);
-  
-  assert(size && "Size zero in a arraycopy");
-  void* ptrDst = (void*)((int64_t)(dst->elements) + size * dstart);
-  void* ptrSrc = (void*)((int64_t)(src->elements) + size * sstart);
-  memmove(ptrDst, ptrSrc, size * len);
-
-  if (doThrow)
-    vm->arrayStoreException();
-  
-
-}
-
-JNIEXPORT jint JNICALL Java_java_lang_VMSystem_identityHashCode(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-                                                                jclass clazz,
-#endif
-                                                                jobject obj) {
-  return (jint)(intptr_t)obj;
-}
-
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp.inc (removed)
@@ -1,131 +0,0 @@
-//===- ClasspathVMSystem/Properties.cpp -----------------------------------===//
-//===--------------------- GNU classpath gnu/classpath/VMSystemProperties -===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-#include <sys/utsname.h>
-
-#include "types.h"
-
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaObject.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "JavaUpcalls.h"
-#include "Jnjvm.h"
-#include "NativeUtil.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-static void setProperty(Jnjvm* vm, JavaObject* prop, const char* key,
-                        const char* val) {
-  vm->upcalls->setProperty->invokeIntSpecial(vm, (UserClass*)prop->classOf,
-                                             prop,
-                                             vm->asciizToStr(key),
-                                             vm->asciizToStr(val));
-}
-
-static void setUnameProp(Jnjvm* vm, JavaObject* prop) {
-  struct utsname infos;
-  uname(&infos);
-  setProperty(vm, prop, "os.name", infos.sysname);
-  setProperty(vm, prop, "os.arch", infos.machine);
-  setProperty(vm, prop, "os.version", infos.release);
-  if (!strcmp(infos.machine, "ppc")) {
-    setProperty(vm, prop, "gnu.cpu.endian","big");
-  } else {
-    setProperty(vm, prop, "gnu.cpu.endian","little");
-  }
-}
-
-JNIEXPORT void JNICALL Java_gnu_classpath_VMSystemProperties_preInit(
-                                    
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-jobject _prop) {
-
-  JavaObject* prop = (JavaObject*)_prop;
-  Jnjvm* vm = JavaThread::get()->isolate;
-  const char* tmp;
-  setProperty(vm, prop, "java.vm.specification.version", "1.0");
-  setProperty(vm, prop, "java.vm.specification.vendor", "Sun Microsystems, Inc");
-  setProperty(vm, prop, "java.vm.specification.name", "Java Virtual Machine Specification");
-  setProperty(vm, prop, "java.specification.version", "1.5");
-  setProperty(vm, prop, "java.specification.vendor", "Sun Microsystems, Inc");
-  setProperty(vm, prop, "java.specification.name", "Java Platform API Specification");
-  setProperty(vm, prop, "java.version", "1.5");
-  setProperty(vm, prop, "java.runtime.version", "1.5");
-  setProperty(vm, prop, "java.vendor", "VVM Project");
-  setProperty(vm, prop, "java.vendor.url", "http://vvm.lip6.fr");
-  
-  tmp = getenv("JAVA_HOME");
-  if (!tmp) tmp = "";
-  setProperty(vm, prop, "java.home", tmp);
-  
-  JnjvmBootstrapLoader* JCL = vm->bootstrapLoader;
-  setProperty(vm, prop, "java.class.version", "49.0");
-  setProperty(vm, prop, "java.class.path", vm->classpath);
-  setProperty(vm, prop, "java.boot.class.path", JCL->bootClasspathEnv);
-  setProperty(vm, prop, "sun.boot.class.path", JCL->bootClasspathEnv);
-  setProperty(vm, prop, "java.vm.version", "2.0");
-  setProperty(vm, prop, "java.vm.vendor", "VVM Project");
-  setProperty(vm, prop, "java.vm.name", "JnJVM");
-  setProperty(vm, prop, "java.specification.version", "1.5");
-  setProperty(vm, prop, "java.library.path", JCL->libClasspathEnv);
-  setProperty(vm, prop, "java.io.tmpdir", "/tmp");
-  
-  tmp = getenv("JAVA_COMPILER");
-  if (!tmp) tmp = "gcj";
-  setProperty(vm, prop, "java.compiler", tmp);
-  
-  setProperty(vm, prop, "build.compiler", "gcj");
-  setProperty(vm, prop, "gcj.class.path", JCL->bootClasspathEnv);
-  
-  setUnameProp(vm, prop);
-  
-  setProperty(vm, prop, "file.separator", vm->dirSeparator);
-  setProperty(vm, prop, "path.separator", vm->envSeparator);
-  setProperty(vm, prop, "line.separator", "\n");
-  
-  tmp = getenv("USERNAME");
-  if (!tmp) tmp = getenv("LOGNAME");
-  else if (!tmp) tmp = getenv("NAME");
-  else if (!tmp) tmp = "";
-  setProperty(vm, prop, "user.name", tmp);
-  
-  tmp  = getenv("HOME");
-  if (!tmp) tmp = "";
-  setProperty(vm, prop, "user.home", tmp);
-  
-  tmp = getenv("PWD");
-  if (!tmp) tmp = "";
-  setProperty(vm, prop, "user.dir", tmp);
-  
-  //setProperty(vm, prop, "gnu.classpath.nio.charset.provider.iconv", "true")
-  
-  setProperty(vm, prop, "file.encoding", "ISO8859_1");
-  setProperty(vm, prop, "gnu.java.util.zoneinfo.dir", "/usr/share/zoneinfo");
-
-
-}
-
-extern "C" void propertiesPostInit(JavaObject* prop) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  for (std::vector<std::pair<char*, char*> >::iterator i = vm->postProperties.begin(), 
-            e = vm->postProperties.end(); i!= e; i++) {
-    setProperty(vm, prop, i->first, i->second);
-  }
-}
-
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThread.cpp.inc (removed)
@@ -1,200 +0,0 @@
-//===- ClasspathVMThread.cpp - GNU classpath java/lang/VMThread -----------===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-
-#include "types.h"
-
-#include "mvm/Threads/Thread.h"
-
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaJIT.h"
-#include "JavaObject.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "JavaUpcalls.h"
-#include "Jnjvm.h"
-#include "NativeUtil.h"
-
-#ifdef SERVICE_VM
-#include "ServiceDomain.h"
-#endif
-
-using namespace jnjvm;
-
-extern "C" {
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMThread_currentThread(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz
-#endif
-) {
-  return (jobject)(JavaThread::currentThread());
-}
-
-typedef struct arg_thread_t {
-  JavaObject* vmThread;
-  JavaThread* intern;
-}arg_thread_t;
-
-static void start(arg_thread_t* arg) {
-  int argc;
-  JavaObject* vmThread = arg->vmThread;
-  JavaThread* intern = arg->intern;
-  free(arg);
-  mvm::Thread::set(intern);
-#ifdef MULTIPLE_GC
-  intern->GC->inject_my_thread(&argc);
-#else
-  Collector::inject_my_thread(&argc);
-#endif
-  UserClass* vmthClass = (UserClass*)vmThread->classOf;
-  Jnjvm* isolate = intern->isolate;
-  JavaObject* thread = isolate->upcalls->assocThread->getObjectField(vmThread);
-  ThreadSystem* ts = isolate->threadSystem;
-  bool isDaemon = isolate->upcalls->daemon->getInt8Field(thread);
-  intern->threadID = (mvm::Thread::self() << 8) & 0x7FFFFF00;
-
-
-  if (!isDaemon) {
-    ts->nonDaemonLock->lock();
-    ts->nonDaemonThreads++;
-    ts->nonDaemonLock->unlock();
-  }
-  
-#ifdef SERVICE_VM
-  ServiceDomain* vm = (ServiceDomain*)isolate;
-  vm->startExecution();
-  vm->lock->lock();
-  vm->numThreads++;
-  vm->lock->unlock();
-#endif
-  
-  isolate->upcalls->runVMThread->invokeIntSpecial(isolate, vmthClass, vmThread);
-  
-  if (!isDaemon) {
-    ts->nonDaemonLock->lock();
-    ts->nonDaemonThreads--;
-    if (ts->nonDaemonThreads == 0)
-      ts->nonDaemonVar->signal();
-    ts->nonDaemonLock->unlock();
-  }
-
-#ifdef SERVICE_VM
-  vm->lock->lock();
-  vm->numThreads--;
-  vm->lock->unlock();
-#endif
-
-#ifdef MULTIPLE_GC
-  intern->GC->remove_my_thread();
-#else
-  Collector::remove_my_thread();
-#endif
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMThread_start(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject _vmThread, sint64 stackSize) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaObject* vmThread = (JavaObject*)_vmThread;
-  JavaObject* javaThread = vm->upcalls->assocThread->getObjectField(vmThread);
-  assert(javaThread);
-
-  JavaThread* th = allocator_new(vm->allocator, JavaThread)();
-  th->initialise(javaThread, vm);
-  vm->upcalls->vmdataVMThread->setObjectField(vmThread, (JavaObject*)th);
-  int tid = 0;
-  arg_thread_t* arg = (arg_thread_t*)malloc(sizeof(arg_thread_t));
-  arg->intern = th;
-  arg->vmThread = vmThread;
-#ifdef MULTIPLE_GC
-  th->GC = mvm::Thread::get()->GC;
-#endif
-
-  mvm::Thread::start(&tid, (int (*)(void *))start, (void*)arg);
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMThread_interrupt(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject _vmthread) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaObject* vmthread = (JavaObject*)_vmthread;
-
-  while (vm->upcalls->vmdataVMThread->getObjectField(vmthread) == 0)
-    mvm::Thread::yield();
-
-  JavaThread* th = (JavaThread*)vm->upcalls->vmdataVMThread->getObjectField(vmthread);
-  th->lock->lock();
-  th->interruptFlag = 1;
-
-  // here we could also raise a signal for interrupting I/O
-  if (th->state == JavaThread::StateWaiting) {
-    th->state = JavaThread::StateInterrupted;
-    th->varcond->signal();
-  }
-  
-  th->lock->unlock();
-}
-
-JNIEXPORT jboolean JNICALL Java_java_lang_VMThread_interrupted(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-) {
-  JavaThread* th = JavaThread::get();
-  uint32 interrupt = th->interruptFlag;
-  th->interruptFlag = 0;
-  return (jboolean)interrupt;
-}
-
-JNIEXPORT jboolean JNICALL Java_java_lang_VMThread_isInterrupted(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject _vmthread) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaObject* vmthread = (JavaObject*)_vmthread;
-  JavaThread* th = (JavaThread*)vm->upcalls->vmdataVMThread->getObjectField(vmthread);
-  return (jboolean)th->interruptFlag;
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMThread_nativeSetPriority(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject vmthread, jint prio) {
-  // Currently not implemented
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMThread_nativeStop(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject vmthread, jobject exc) {
-  // Currently not implemented
-}
-
-JNIEXPORT void JNICALL Java_java_lang_VMThread_yield(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-) {
-  mvm::Thread::yield();
-}
-
-}

Removed: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThrowable.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThrowable.cpp.inc?rev=57293&view=auto

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThrowable.cpp.inc (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMThrowable.cpp.inc (removed)
@@ -1,119 +0,0 @@
-//===- ClasspathVMClassLoader.cpp - GNU classpath java/lang/VMClassLoader -===//
-//
-//                              JnJVM
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <string.h>
-
-#include "types.h"
-
-#include "mvm/JIT.h"
-
-#include "JavaAccess.h"
-#include "JavaArray.h"
-#include "JavaClass.h"
-#include "JavaConstantPool.h"
-#include "JavaJIT.h"
-#include "JavaObject.h"
-#include "JavaString.h"
-#include "JavaTypes.h"
-#include "JavaThread.h"
-#include "JavaUpcalls.h"
-#include "Jnjvm.h"
-#include "NativeUtil.h"
-#include "Reader.h"
-
-using namespace jnjvm;
-
-extern "C" {
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMThrowable_fillInStackTrace(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-jclass clazz,
-#endif
-                                                                      jobject throwable) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  int** stack = (int**)malloc(sizeof(int*) * 100);
-  int real_size = mvm::jit::getBacktrace((void**)stack, 100);
-  stack[real_size] = 0;
-  JavaObject* vmThrowable = vm->upcalls->newVMThrowable->doNew(vm);
-  ((JavaObject**)((uint64)vmThrowable + vm->upcalls->vmDataVMThrowable->ptrOffset))[0] = (JavaObject*)stack;
-  return (jobject)vmThrowable;
-}
-
-
-JavaObject* consStackElement(JavaMethod* meth, int* ip) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  JavaObject* methodName = vm->UTF8ToStr(meth->name);
-  Class* cl = meth->classDef;
-  JavaObject* className = vm->UTF8ToStr(cl->name->internalToJava(cl->classLoader->hashUTF8, 0, cl->name->size));
-  JavaObject* sourceName = 0;
-  
-  Attribut* sourceAtt = cl->lookupAttribut(Attribut::sourceFileAttribut);
-  
-  if (sourceAtt) {
-    Reader reader(sourceAtt, cl->getBytes());
-    uint16 index = reader.readU2();
-    sourceName = vm->UTF8ToStr(cl->getConstantPool()->UTF8At(index));
-  }
-
-  bool native = isNative(meth->access);
-
-  UserClass* newS = vm->upcalls->newStackTraceElement;
-  JavaObject* res = newS->doNew(vm);
-  vm->upcalls->initStackTraceElement->invokeIntSpecial(vm, newS, res,
-                                                       sourceName,
-                                                       (uint32)ip, className,
-                                                       methodName, native);
-  return res;
-}
-
-ArrayObject* recGetStackTrace(int** stack, uint32 first, uint32 rec) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  if (stack[first] != 0) {
-    JavaMethod* meth = JavaJIT::IPToJavaMethod(stack[first]);
-    if (meth) {
-      ArrayObject* res = recGetStackTrace(stack, first + 1, rec + 1);
-      res->elements[rec] = consStackElement(meth, stack[first]);
-      return res;
-    } else {
-      return recGetStackTrace(stack, first + 1, rec);
-    }
-  } else {
-    return (ArrayObject*)vm->upcalls->stackTraceArray->doNew(rec, vm);
-  }
-}
-
-JNIEXPORT jobject JNICALL Java_java_lang_VMThrowable_getStackTrace(
-#ifdef NATIVE_JNI
-JNIEnv *env,
-#endif
-jobject vmthrow, jobject throwable) {
-  Jnjvm* vm = JavaThread::get()->isolate;
-  int** stack = (int**)vm->upcalls->vmDataVMThrowable->getObjectField((JavaObject*)vmthrow);
-  uint32 first = 0;
-  sint32 i = 0;
-  
-  while (stack[i] != 0) {
-    JavaMethod* meth = JavaJIT::IPToJavaMethod(stack[i++]);
-#ifdef ISOLATE_SHARING
-    if (meth) {
-#else
-    if (meth && !meth->classDef->subclassOf(vm->upcalls->newThrowable)) {
-#endif
-      first = i - 1;
-      break;
-    }
-  }
-  jobject res = (jobject)recGetStackTrace((int**)(uint32**)stack, first, 0);
-  free(stack);
-  return res;
-}
-
-}
-





More information about the vmkit-commits mailing list