[vmkit-commits] [vmkit] r135869 - in /vmkit/trunk/lib/J3: Classpath/ClasspathReflect.cpp Classpath/ClasspathReflect.h VMCore/JavaArray.cpp VMCore/JavaArray.h VMCore/JavaClass.cpp VMCore/JavaClass.h

Nicolas Geoffray nicolas.geoffray at lip6.fr
Sun Jul 24 05:57:25 PDT 2011


Author: geoffray
Date: Sun Jul 24 07:57:25 2011
New Revision: 135869

URL: http://llvm.org/viewvc/llvm-project?rev=135869&view=rev
Log:
Move code around (.h ->.cpp) to remove ld errors when compiling with -g and -pg.


Added:
    vmkit/trunk/lib/J3/Classpath/ClasspathReflect.cpp
Modified:
    vmkit/trunk/lib/J3/Classpath/ClasspathReflect.h
    vmkit/trunk/lib/J3/VMCore/JavaArray.cpp
    vmkit/trunk/lib/J3/VMCore/JavaArray.h
    vmkit/trunk/lib/J3/VMCore/JavaClass.cpp
    vmkit/trunk/lib/J3/VMCore/JavaClass.h

Added: vmkit/trunk/lib/J3/Classpath/ClasspathReflect.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Classpath/ClasspathReflect.cpp?rev=135869&view=auto
==============================================================================
--- vmkit/trunk/lib/J3/Classpath/ClasspathReflect.cpp (added)
+++ vmkit/trunk/lib/J3/Classpath/ClasspathReflect.cpp Sun Jul 24 07:57:25 2011
@@ -0,0 +1,30 @@
+//===- ClasspathReflect.cpp - Internal representation of core system classes -//
+//
+//                            The VMKit project
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "ClasspathReflect.h"
+#include "JavaClass.h"
+#include "JavaObject.h"
+#include "JavaThread.h"
+
+namespace j3 {
+
+JavaMethod* JavaObjectConstructor::getInternalMethod(JavaObjectConstructor* self) {
+  llvm_gcroot(self, 0);
+  UserCommonClass* cls = JavaObjectClass::getClass(self->declaringClass); 
+  return &(cls->asClass()->virtualMethods[self->slot]);
+}
+
+
+JavaMethod* JavaObjectMethod::getInternalMethod(JavaObjectMethod* self) {
+  llvm_gcroot(self, 0);
+  UserCommonClass* cls = JavaObjectClass::getClass(self->declaringClass); 
+  return &(cls->asClass()->virtualMethods[self->slot]);
+}
+
+}

Modified: vmkit/trunk/lib/J3/Classpath/ClasspathReflect.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Classpath/ClasspathReflect.h?rev=135869&r1=135868&r2=135869&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/Classpath/ClasspathReflect.h (original)
+++ vmkit/trunk/lib/J3/Classpath/ClasspathReflect.h Sun Jul 24 07:57:25 2011
@@ -104,11 +104,7 @@
     mvm::Collector::markAndTrace(obj, &obj->declaringClass, closure);
   }
   
-  static JavaMethod* getInternalMethod(JavaObjectMethod* self) {
-    llvm_gcroot(self, 0);
-    UserCommonClass* cls = JavaObjectClass::getClass(self->declaringClass); 
-    return &(cls->asClass()->virtualMethods[self->slot]);
-  }
+  static JavaMethod* getInternalMethod(JavaObjectMethod* self);
   
   static UserClass* getClass(JavaObjectMethod* self) {
     llvm_gcroot(self, 0);
@@ -129,11 +125,7 @@
     mvm::Collector::markAndTrace(obj, &obj->declaringClass, closure);
   }
   
-  static JavaMethod* getInternalMethod(JavaObjectConstructor* self) {
-    llvm_gcroot(self, 0);
-    UserCommonClass* cls = JavaObjectClass::getClass(self->declaringClass); 
-    return &(cls->asClass()->virtualMethods[self->slot]);
-  }
+  static JavaMethod* getInternalMethod(JavaObjectConstructor* self);
   
   static UserClass* getClass(JavaObjectConstructor* self) {
     llvm_gcroot(self, 0);

Modified: vmkit/trunk/lib/J3/VMCore/JavaArray.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/VMCore/JavaArray.cpp?rev=135869&r1=135868&r2=135869&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/VMCore/JavaArray.cpp (original)
+++ vmkit/trunk/lib/J3/VMCore/JavaArray.cpp Sun Jul 24 07:57:25 2011
@@ -34,3 +34,11 @@
 const unsigned int JavaArray::T_SHORT = 9;
 const unsigned int JavaArray::T_INT = 10;
 const unsigned int JavaArray::T_LONG = 11;
+
+void ArrayObject::setElement(ArrayObject* self, JavaObject* value, uint32_t i) {
+  llvm_gcroot(self, 0);
+  llvm_gcroot(value, 0);
+  if (value != NULL) assert(value->getVirtualTable());
+  mvm::Collector::objectReferenceArrayWriteBarrier(
+      (gc*)self, (gc**)&(self->elements[i]), (gc*)value);
+}

Modified: vmkit/trunk/lib/J3/VMCore/JavaArray.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/VMCore/JavaArray.h?rev=135869&r1=135868&r2=135869&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/VMCore/JavaArray.h (original)
+++ vmkit/trunk/lib/J3/VMCore/JavaArray.h Sun Jul 24 07:57:25 2011
@@ -95,13 +95,7 @@
     return self->elements[i];
   }
 
-  static void setElement(ArrayObject* self, JavaObject* value, uint32_t i) {
-    llvm_gcroot(self, 0);
-    llvm_gcroot(value, 0);
-    if (value != NULL) assert(value->getVirtualTable());
-    mvm::Collector::objectReferenceArrayWriteBarrier(
-        (gc*)self, (gc**)&(self->elements[i]), (gc*)value);
-  }
+  static void setElement(ArrayObject* self, JavaObject* value, uint32_t i);
 
   static JavaObject** getElements(ArrayObject* self) {
     llvm_gcroot(self, 0);

Modified: vmkit/trunk/lib/J3/VMCore/JavaClass.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/VMCore/JavaClass.cpp?rev=135869&r1=135868&r2=135869&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/VMCore/JavaClass.cpp (original)
+++ vmkit/trunk/lib/J3/VMCore/JavaClass.cpp Sun Jul 24 07:57:25 2011
@@ -1790,3 +1790,11 @@
   JavaObject** ptr = (JavaObject**)((uint64)obj + ptrOffset);
   mvm::Collector::objectReferenceWriteBarrier((gc*)obj, (gc**)ptr, (gc*)val);
 }
+
+void JavaField::setStaticObjectField(JavaObject* val) {
+  llvm_gcroot(val, 0);
+  if (val != NULL) assert(val->getVirtualTable());
+  assert(classDef->isResolved());
+  JavaObject** ptr = (JavaObject**)((uint64)classDef->getStaticInstance() + ptrOffset);
+  mvm::Collector::objectReferenceNonHeapWriteBarrier((gc**)ptr, (gc*)val);
+}

Modified: vmkit/trunk/lib/J3/VMCore/JavaClass.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/VMCore/JavaClass.h?rev=135869&r1=135868&r2=135869&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/VMCore/JavaClass.h (original)
+++ vmkit/trunk/lib/J3/VMCore/JavaClass.h Sun Jul 24 07:57:25 2011
@@ -1246,13 +1246,7 @@
     return ((JavaObject**)ptr)[0];
   }
 
-  void setStaticObjectField(JavaObject* val) {
-    llvm_gcroot(val, 0);
-    if (val != NULL) assert(val->getVirtualTable());
-    assert(classDef->isResolved());
-    JavaObject** ptr = (JavaObject**)((uint64)classDef->getStaticInstance() + ptrOffset);
-    mvm::Collector::objectReferenceNonHeapWriteBarrier((gc**)ptr, (gc*)val);
-  }
+  void setStaticObjectField(JavaObject* val);
 
   JavaObject* getInstanceObjectField(JavaObject* obj) {
     llvm_gcroot(obj, 0);





More information about the vmkit-commits mailing list