[vmkit-commits] [vmkit] r65691 - /vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Sat Feb 28 03:12:18 PST 2009


Author: geoffray
Date: Sat Feb 28 05:12:08 2009
New Revision: 65691

URL: http://llvm.org/viewvc/llvm-project?rev=65691&view=rev
Log:
Disable virtual->special call on final fields optimization for now.


Modified:
    vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp

Modified: vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp?rev=65691&r1=65690&r2=65691&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp Sat Feb 28 05:12:08 2009
@@ -88,14 +88,16 @@
   if (meth && isInterface(meth->classDef->access)) {
     return invokeInterface(index, true);
   }
-  
+ 
   const UTF8* name = 0;
   Signdef* signature = ctpInfo->infoOfInterfaceOrVirtualMethod(index, name);
+#if 0	
   Value* obj = stack[signature->nbArguments].first;
   JavaObject* source = module->getFinalObject(obj);
   if (source) {
     return invokeSpecial(index, source->getClass());
   }
+#endif
  
 #if !defined(WITHOUT_VTABLE)
   Typedef* retTypedef = signature->getReturnType();
@@ -1684,7 +1686,7 @@
       }
     }
   }
-  
+
   if (!final) push(new LoadInst(ptr, "", currentBlock), sign->isUnsigned());
   if (type == Type::Int64Ty || type == Type::DoubleTy) {
     push(module->constantZero, false);
@@ -1756,7 +1758,7 @@
       push(CallInst::Create(F, ptr, "", currentBlock), sign->isUnsigned());
     }
   }
-
+ 
   if (!final) push(new LoadInst(ptr, "", currentBlock), sign->isUnsigned());
   if (type == Type::Int64Ty || type == Type::DoubleTy) {
     push(module->constantZero, false);





More information about the vmkit-commits mailing list