[vmkit-commits] [vmkit] r121147 - in /vmkit/branches/multi-vm: lib/J3/Compiler/JavaJITCompiler.cpp lib/J3/VMCore/Jnjvm.cpp lib/J3/VMCore/Jnjvm.h tools/j3/Main.cpp tools/vmjc/vmjc.cpp tools/vmkit/Launcher.cpp
Gael Thomas
gael.thomas at lip6.fr
Tue Dec 7 08:31:15 PST 2010
Author: gthomas
Date: Tue Dec 7 10:31:15 2010
New Revision: 121147
URL: http://llvm.org/viewvc/llvm-project?rev=121147&view=rev
Log:
allocate the jnjvm bootstrap class loadr in the constructor of jnjvm
Modified:
vmkit/branches/multi-vm/lib/J3/Compiler/JavaJITCompiler.cpp
vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.cpp
vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.h
vmkit/branches/multi-vm/tools/j3/Main.cpp
vmkit/branches/multi-vm/tools/vmjc/vmjc.cpp
vmkit/branches/multi-vm/tools/vmkit/Launcher.cpp
Modified: vmkit/branches/multi-vm/lib/J3/Compiler/JavaJITCompiler.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/lib/J3/Compiler/JavaJITCompiler.cpp?rev=121147&r1=121146&r2=121147&view=diff
==============================================================================
--- vmkit/branches/multi-vm/lib/J3/Compiler/JavaJITCompiler.cpp (original)
+++ vmkit/branches/multi-vm/lib/J3/Compiler/JavaJITCompiler.cpp Tue Dec 7 10:31:15 2010
@@ -414,9 +414,7 @@
newArgv[1] = mainClass;
JavaJITCompiler* Comp = JavaJITCompiler::CreateCompiler("JITModule");
- JnjvmBootstrapLoader* loader = new(Allocator, "Bootstrap loader")
- JnjvmBootstrapLoader(Allocator, Comp, true);
- Jnjvm* vm = new(Allocator, "VM") Jnjvm(Allocator, vmkit, loader);
+ Jnjvm* vm = new(Allocator, "VM") Jnjvm(Allocator, vmkit, Comp, true);
vm->runApplication(argc + 1, newArgv);
vm->waitForExit();
Modified: vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.cpp?rev=121147&r1=121146&r2=121147&view=diff
==============================================================================
--- vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.cpp (original)
+++ vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.cpp Tue Dec 7 10:31:15 2010
@@ -1339,11 +1339,12 @@
javaMainThread->mut->start((void (*)(mvm::Thread*))mainJavaStart);
}
-Jnjvm::Jnjvm(mvm::BumpPtrAllocator& Alloc, mvm::VMKit* vmkit, JnjvmBootstrapLoader* loader) :
+Jnjvm::Jnjvm(mvm::BumpPtrAllocator& Alloc, mvm::VMKit* vmkit, JavaCompiler* Comp, bool dlLoad) :
VirtualMachine(Alloc, vmkit),
lockSystem(Alloc) {
- loader->isolate = this;
+ bootstrapLoader = new(Alloc, "bootstrap loader") JnjvmBootstrapLoader(Alloc, Comp, dlLoad);
+ bootstrapLoader->isolate = this;
initialiseInternalVTs();
@@ -1354,12 +1355,11 @@
jniEnv = &JNI_JNIEnvTable;
javavmEnv = &JNI_JavaVMTable;
- bootstrapLoader = loader;
upcalls = bootstrapLoader->upcalls;
throwable = upcalls->newThrowable;
- StringList* end = loader->strings;
+ StringList* end = bootstrapLoader->strings;
while (end) {
for (uint32 i = 0; i < end->length; ++i) {
JavaString* obj = end->strings[i];
@@ -1466,9 +1466,8 @@
mvm::VMKit* vmkit = new(Allocator, "VMKit") mvm::VMKit(Allocator);
JavaCompiler* Comp = new JavaCompiler();
- JnjvmBootstrapLoader* loader = new(Allocator, "Bootstrap loader")
- JnjvmBootstrapLoader(Allocator, Comp, true);
- Jnjvm* vm = new(Allocator, "VM") Jnjvm(Allocator, vmkit, loader);
+
+ Jnjvm* vm = new(Allocator, "VM") Jnjvm(Allocator, vmkit, Comp, true);
mvm::ThreadAllocator thallocator;
char** newArgv = (char**)thallocator.Allocate((argc + 1) * sizeof(char*));
Modified: vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.h?rev=121147&r1=121146&r2=121147&view=diff
==============================================================================
--- vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.h (original)
+++ vmkit/branches/multi-vm/lib/J3/VMCore/Jnjvm.h Tue Dec 7 10:31:15 2010
@@ -330,7 +330,7 @@
/// Jnjvm - Allocates a new JVM.
///
- Jnjvm(mvm::BumpPtrAllocator& Alloc, mvm::VMKit* vmkit, JnjvmBootstrapLoader* loader);
+ Jnjvm(mvm::BumpPtrAllocator& Alloc, mvm::VMKit* vmkit, JavaCompiler* Comp, bool dlLoad);
/// runApplication - Runs the application with the given command line.
/// User-visible function, inherited by the VirtualMachine class.
Modified: vmkit/branches/multi-vm/tools/j3/Main.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/tools/j3/Main.cpp?rev=121147&r1=121146&r2=121147&view=diff
==============================================================================
--- vmkit/branches/multi-vm/tools/j3/Main.cpp (original)
+++ vmkit/branches/multi-vm/tools/j3/Main.cpp Tue Dec 7 10:31:15 2010
@@ -37,9 +37,7 @@
// Create the allocator that will allocate the bootstrap loader and the JVM.
JavaJITCompiler* Comp = JavaJITCompiler::CreateCompiler("JITModule");
- JnjvmBootstrapLoader* loader = new(Allocator, "Bootstrap loader")
- JnjvmBootstrapLoader(Allocator, Comp, true);
- Jnjvm* vm = new(Allocator, "VM") Jnjvm(Allocator, vmkit, loader);
+ Jnjvm* vm = new(Allocator, "VM") Jnjvm(Allocator, vmkit, Comp, true);
// Run the application.
vm->runApplication(argc, argv);
Modified: vmkit/branches/multi-vm/tools/vmjc/vmjc.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/tools/vmjc/vmjc.cpp?rev=121147&r1=121146&r2=121147&view=diff
==============================================================================
--- vmkit/branches/multi-vm/tools/vmjc/vmjc.cpp (original)
+++ vmkit/branches/multi-vm/tools/vmjc/vmjc.cpp Tue Dec 7 10:31:15 2010
@@ -177,15 +177,12 @@
JavaAOTCompiler* Comp = new JavaAOTCompiler("AOT");
- JnjvmBootstrapLoader* loader = new(allocator, "Bootstrap loader")
- JnjvmBootstrapLoader(allocator, Comp, false);
-
if (DisableExceptions) Comp->disableExceptions();
if (DisableStubs) Comp->generateStubs = false;
if (AssumeCompiled) Comp->assumeCompiled = true;
if (DisableCooperativeGC) Comp->disableCooperativeGC();
- Jnjvm* vm = new(allocator, "Bootstrap loader") Jnjvm(allocator, vmkit, loader);
+ Jnjvm* vm = new(allocator, "Bootstrap loader") Jnjvm(allocator, vmkit, Comp, false);
for (std::vector<std::string>::iterator i = Properties.begin(),
e = Properties.end(); i != e; ++i) {
Modified: vmkit/branches/multi-vm/tools/vmkit/Launcher.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/tools/vmkit/Launcher.cpp?rev=121147&r1=121146&r2=121147&view=diff
==============================================================================
--- vmkit/branches/multi-vm/tools/vmkit/Launcher.cpp (original)
+++ vmkit/branches/multi-vm/tools/vmkit/Launcher.cpp Tue Dec 7 10:31:15 2010
@@ -73,9 +73,7 @@
if (VMToRun == RunJava) {
JavaJITCompiler* Comp = JavaJITCompiler::CreateCompiler("JITModule");
- JnjvmBootstrapLoader* loader = new(Allocator, "Bootstrap loader")
- JnjvmBootstrapLoader(Allocator, Comp, true);
- Jnjvm* vm = new(Allocator, "VM") Jnjvm(Allocator, vmkit, loader);
+ Jnjvm* vm = new(Allocator, "VM") Jnjvm(Allocator, vmkit, Comp, true);
vm->runApplication(argc, argv);
vm->waitForExit();
}
More information about the vmkit-commits
mailing list