[vmkit-commits] [vmkit] r170943 - in /vmkit/trunk/lib/j3/Compiler: JavaLLVMCompiler.cpp LLVMInfo.cpp
Nicolas Geoffray
nicolas.geoffray at gmail.com
Fri Dec 21 14:44:29 PST 2012
Author: geoffray
Date: Fri Dec 21 16:44:29 2012
New Revision: 170943
URL: http://llvm.org/viewvc/llvm-project?rev=170943&view=rev
Log:
Bugfix when a non-customized version was becoming a customized one. If the LLVMInfo does not know if the method is customizable, don't try to customize it.
Modified:
vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp
vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp
Modified: vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp?rev=170943&r1=170942&r2=170943&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp Fri Dec 21 16:44:29 2012
@@ -61,7 +61,7 @@
// We are jitting. Take the lock.
vmkit::VmkitModule::protectIR();
if (func->getLinkage() == GlobalValue::ExternalWeakLinkage) {
- JavaJIT jit(this, meth, func, customizeFor);
+ JavaJIT jit(this, meth, func, LMI->isCustomizable? customizeFor : NULL);
if (isNative(meth->access)) {
jit.nativeCompile();
vmkit::VmkitModule::runPasses(func, JavaNativeFunctionPasses);
@@ -75,11 +75,9 @@
if (!LMI->isCustomizable && jit.isCustomizable) {
// It's the first time we parsed the method and we just found
// out it can be customized.
+ // TODO(geoffray): return a customized version to this caller.
meth->isCustomizable = true;
LMI->isCustomizable = true;
- if (customizeFor != NULL) {
- LMI->setCustomizedVersion(customizeFor, func);
- }
}
}
vmkit::VmkitModule::unprotectIR();
Modified: vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp?rev=170943&r1=170942&r2=170943&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp Fri Dec 21 16:44:29 2012
@@ -209,17 +209,6 @@
return result;
}
-void LLVMMethodInfo::setCustomizedVersion(Class* cl, llvm::Function* F) {
- assert(customizedVersions.size() == 0);
- vmkit::ThreadAllocator allocator;
- if (Compiler->emitFunctionName()) {
- char* buf = GetMethodName(allocator, methodDef, cl);
- F->setName(buf);
- }
- methodFunction = NULL;
- customizedVersions[cl] = F;
-}
-
FunctionType* LLVMMethodInfo::getFunctionType() {
if (!functionType) {
Signdef* sign = methodDef->getSignature();
More information about the vmkit-commits
mailing list