[vmkit-commits] [vmkit] r61868 - /vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Wed Jan 7 10:02:44 PST 2009


Author: geoffray
Date: Wed Jan  7 12:02:44 2009
New Revision: 61868

URL: http://llvm.org/viewvc/llvm-project?rev=61868&view=rev
Log:
Insert the code pointer in the vm map.


Modified:
    vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp

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

==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp Wed Jan  7 12:02:44 2009
@@ -1057,6 +1057,30 @@
     hashStr.insert(*i);
   }
 
+  ClassMap* classes = bootstrapLoader->getClasses();
+  for (ClassMap::iterator i = classes->map.begin(), e = classes->map.end();
+       i != e; ++i) {
+    CommonClass* cl = i->second;
+    if (cl->isClass()) {
+      Class* C = cl->asClass();
+      
+      for (uint32 i = 0; i < C->nbVirtualMethods; ++i) {
+        JavaMethod& meth = C->virtualMethods[i];
+        if (!isAbstract(meth.access) && meth.code) {
+          addMethodInFunctionMap(&meth, meth.code);
+        }
+      }
+      
+      for (uint32 i = 0; i < C->nbStaticMethods; ++i) {
+        JavaMethod& meth = C->staticMethods[i];
+        if (!isAbstract(meth.access) && meth.code) {
+          addMethodInFunctionMap(&meth, meth.code);
+        }
+      }
+    }
+  }
+  
+
 #ifdef ISOLATE
   IsolateLock.lock();
   for (uint32 i = 0; i < NR_ISOLATES; ++i) {





More information about the vmkit-commits mailing list