[vmkit-commits] [vmkit] r86482 - in /vmkit/trunk: include/jnjvm/JnjvmModule.h include/mvm/JIT.h lib/JnJVM/Compiler/JavaJIT.cpp lib/JnJVM/Compiler/JavaJITOpcodes.cpp lib/JnJVM/Compiler/JnjvmModule.cpp lib/JnJVM/Compiler/LowerConstantCalls.cpp lib/JnJVM/LLVMRuntime/runtime-default.ll lib/Mvm/Compiler/JIT.cpp lib/Mvm/Compiler/LLVMRuntime.ll
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Sun Nov 8 13:19:06 PST 2009
Author: geoffray
Date: Sun Nov 8 15:19:06 2009
New Revision: 86482
URL: http://llvm.org/viewvc/llvm-project?rev=86482&view=rev
Log:
Move the gcmalloc function to VMKit, not J3.
Modified:
vmkit/trunk/include/jnjvm/JnjvmModule.h
vmkit/trunk/include/mvm/JIT.h
vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp
vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp
vmkit/trunk/lib/JnJVM/Compiler/JnjvmModule.cpp
vmkit/trunk/lib/JnJVM/Compiler/LowerConstantCalls.cpp
vmkit/trunk/lib/JnJVM/LLVMRuntime/runtime-default.ll
vmkit/trunk/lib/Mvm/Compiler/JIT.cpp
vmkit/trunk/lib/Mvm/Compiler/LLVMRuntime.ll
Modified: vmkit/trunk/include/jnjvm/JnjvmModule.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/jnjvm/JnjvmModule.h?rev=86482&r1=86481&r2=86482&view=diff
==============================================================================
--- vmkit/trunk/include/jnjvm/JnjvmModule.h (original)
+++ vmkit/trunk/include/jnjvm/JnjvmModule.h Sun Nov 8 15:19:06 2009
@@ -301,7 +301,6 @@
llvm::Function* ArrayLengthFunction;
llvm::Function* GetVTFunction;
llvm::Function* GetClassFunction;
- llvm::Function* JavaObjectAllocateFunction;
llvm::Function* GetVTFromClassFunction;
llvm::Function* GetVTFromClassArrayFunction;
llvm::Function* GetVTFromCommonClassFunction;
Modified: vmkit/trunk/include/mvm/JIT.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/mvm/JIT.h?rev=86482&r1=86481&r2=86482&view=diff
==============================================================================
--- vmkit/trunk/include/mvm/JIT.h (original)
+++ vmkit/trunk/include/mvm/JIT.h Sun Nov 8 15:19:06 2009
@@ -123,6 +123,7 @@
llvm::Function* conditionalSafePoint;
llvm::Function* unconditionalSafePoint;
+ llvm::Function* AllocateFunction;
llvm::Constant* constantInt8Zero;
llvm::Constant* constantZero;
Modified: vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp?rev=86482&r1=86481&r2=86482&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Compiler/JavaJIT.cpp Sun Nov 8 15:19:06 2009
@@ -1870,9 +1870,10 @@
"", currentBlock);
}
- Value* val = invoke(module->JavaObjectAllocateFunction, Size, VT, "",
+ Value* val = invoke(module->AllocateFunction, Size, VT, "",
currentBlock);
-
+
+ val = new BitCastInst(val, module->JavaObjectType, "", currentBlock);
push(val, false);
}
Modified: vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp?rev=86482&r1=86481&r2=86482&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp Sun Nov 8 15:19:06 2009
@@ -2023,7 +2023,7 @@
Value* size =
BinaryOperator::CreateAdd(module->JavaArraySizeConstant, mult,
"", currentBlock);
- Value* res = invoke(module->JavaObjectAllocateFunction, size, TheVT, "",
+ Value* res = invoke(module->AllocateFunction, size, TheVT, "",
currentBlock);
Value* cast = new BitCastInst(res, module->JavaArrayType, "",
currentBlock);
@@ -2036,7 +2036,8 @@
arg1 = new IntToPtrInst(arg1, module->ptrType, "", currentBlock);
new StoreInst(arg1, GEP, currentBlock);
-
+
+ res = new BitCastInst(res, module->JavaObjectType, "", currentBlock);
push(res, false);
break;
Modified: vmkit/trunk/lib/JnJVM/Compiler/JnjvmModule.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Compiler/JnjvmModule.cpp?rev=86482&r1=86481&r2=86482&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Compiler/JnjvmModule.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Compiler/JnjvmModule.cpp Sun Nov 8 15:19:06 2009
@@ -293,8 +293,6 @@
ArrayStoreExceptionFunction = module->getFunction("jnjvmArrayStoreException");
ArithmeticExceptionFunction = module->getFunction("jnjvmArithmeticException");
- JavaObjectAllocateFunction = module->getFunction("gcmalloc");
-
PrintExecutionFunction = module->getFunction("jnjvmPrintExecution");
PrintMethodStartFunction = module->getFunction("jnjvmPrintMethodStart");
PrintMethodEndFunction = module->getFunction("jnjvmPrintMethodEnd");
Modified: vmkit/trunk/lib/JnJVM/Compiler/LowerConstantCalls.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Compiler/LowerConstantCalls.cpp?rev=86482&r1=86481&r2=86482&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Compiler/LowerConstantCalls.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Compiler/LowerConstantCalls.cpp Sun Nov 8 15:19:06 2009
@@ -146,7 +146,7 @@
CallSite Ca = CallSite::get(Arg);
Instruction* CI = Ca.getInstruction();
- if (CI && Ca.getCalledValue() == module->JavaObjectAllocateFunction) {
+ if (CI && Ca.getCalledValue() == module->AllocateFunction) {
Changed = true;
Cmp->replaceAllUsesWith(ConstantInt::getFalse(*Context));
Cmp->eraseFromParent();
Modified: vmkit/trunk/lib/JnJVM/LLVMRuntime/runtime-default.ll
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/LLVMRuntime/runtime-default.ll?rev=86482&r1=86481&r2=86482&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/LLVMRuntime/runtime-default.ll (original)
+++ vmkit/trunk/lib/JnJVM/LLVMRuntime/runtime-default.ll Sun Nov 8 15:19:06 2009
@@ -224,11 +224,3 @@
declare void @jnjvmPrintExecution(i32, i32, %JavaMethod*)
declare void @jnjvmPrintMethodStart(%JavaMethod*)
declare void @jnjvmPrintMethodEnd(%JavaMethod*)
-
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; GC methods ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-
-declare %JavaObject* @gcmalloc(i32, %VT*)
Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/JIT.cpp?rev=86482&r1=86481&r2=86482&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/Compiler/JIT.cpp (original)
+++ vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Sun Nov 8 15:19:06 2009
@@ -425,6 +425,7 @@
unconditionalSafePoint = module->getFunction("unconditionalSafePoint");
conditionalSafePoint = module->getFunction("conditionalSafePoint");
+ AllocateFunction = module->getFunction("gcmalloc");
}
Modified: vmkit/trunk/lib/Mvm/Compiler/LLVMRuntime.ll
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/LLVMRuntime.ll?rev=86482&r1=86481&r2=86482&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/Compiler/LLVMRuntime.ll (original)
+++ vmkit/trunk/lib/Mvm/Compiler/LLVMRuntime.ll Sun Nov 8 15:19:06 2009
@@ -82,3 +82,4 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
declare void @llvm.gcroot(i8**, i8*)
+declare i8* @gcmalloc(i32, %VT*)
More information about the vmkit-commits
mailing list