[vmkit-commits] [vmkit] r137031 - in /vmkit/trunk: include/j3/LLVMInfo.h lib/J3/Compiler/JavaAOTCompiler.cpp lib/J3/VMCore/JavaTypes.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Sun Aug 7 02:17:09 PDT 2011


Author: geoffray
Date: Sun Aug  7 04:17:09 2011
New Revision: 137031

URL: http://llvm.org/viewvc/llvm-project?rev=137031&view=rev
Log:
- Create less stubs while precompiling.
- Rename stubs when precompiling, so that they don't share the same names.


Modified:
    vmkit/trunk/include/j3/LLVMInfo.h
    vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp
    vmkit/trunk/lib/J3/VMCore/JavaTypes.cpp

Modified: vmkit/trunk/include/j3/LLVMInfo.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/j3/LLVMInfo.h?rev=137031&r1=137030&r2=137031&view=diff
==============================================================================
--- vmkit/trunk/include/j3/LLVMInfo.h (original)
+++ vmkit/trunk/include/j3/LLVMInfo.h Sun Aug  7 04:17:09 2011
@@ -105,6 +105,8 @@
     functionType = 0;
     DbgSubprogram = 0;
   }
+
+  friend class JavaAOTCompiler;
 };
 
 

Modified: vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp?rev=137031&r1=137030&r2=137031&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp (original)
+++ vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp Sun Aug  7 04:17:09 2011
@@ -1569,8 +1569,9 @@
 
 Function* JavaAOTCompiler::getMethodOrStub(JavaMethod* meth) {
   assert(!isStatic(meth->access));
-  // TODO: check if llvm Function is populated instead of checking code is NULL
-  if (precompile && (meth->code == NULL)) {
+  if (precompile
+      && (meth->code == NULL)
+      && (getMethodInfo(meth)->methodFunction == NULL)) {
     LLVMSignatureInfo* LSI = getSignatureInfo(meth->getSignature());
     return LSI->getVirtualStub();
   } else {

Modified: vmkit/trunk/lib/J3/VMCore/JavaTypes.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/VMCore/JavaTypes.cpp?rev=137031&r1=137030&r2=137031&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/VMCore/JavaTypes.cpp (original)
+++ vmkit/trunk/lib/J3/VMCore/JavaTypes.cpp Sun Aug  7 04:17:09 2011
@@ -193,7 +193,9 @@
       ptr[1] = '3';
       ptr += 2;
     } else if (c == I_PARD) {
-      break;
+      ptr[0] = '_';
+      ptr[1] = '_';
+      ptr += 2;
     } else {
       ptr[0] = c;
       ++ptr;





More information about the vmkit-commits mailing list