[llvm-commits] [vmkit] r50346 - /vmkit/trunk/lib/JnJVM/VMCore/JavaInitialise.cpp
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Mon Apr 28 02:01:56 PDT 2008
Author: geoffray
Date: Mon Apr 28 04:01:56 2008
New Revision: 50346
URL: http://llvm.org/viewvc/llvm-project?rev=50346&view=rev
Log:
At startup of a service environment, allocate a bootstrap service that
will bootstrap the JVM.
Modified:
vmkit/trunk/lib/JnJVM/VMCore/JavaInitialise.cpp
Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaInitialise.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaInitialise.cpp?rev=50346&r1=50345&r2=50346&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaInitialise.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaInitialise.cpp Mon Apr 28 04:01:56 2008
@@ -30,6 +30,10 @@
#include "LockedMap.h"
#include "Zip.h"
+#ifdef SERVICE_VM
+#include "ServiceDomain.h"
+#endif
+
using namespace jnjvm;
static void initialiseVT() {
@@ -69,6 +73,9 @@
INIT(JavaString);
INIT(CacheNode);
INIT(Enveloppe);
+#ifdef SERVICE_VM
+ INIT(ServiceDomain);
+#endif
#undef INIT
#define INIT(X) { \
@@ -204,7 +211,6 @@
void handler(int val, siginfo_t* info, void* addr) {
printf("Crash in JnJVM at %p\n", addr);
- JavaJIT::printBacktrace();
assert(0);
}
@@ -237,11 +243,16 @@
}
extern "C" int start_app(int argc, char** argv) {
-#if defined(SERVICE_VM) || !defined(MULTIPLE_VM)
+#if !defined(MULTIPLE_VM)
JavaIsolate* vm = (JavaIsolate*)JavaIsolate::bootstrapVM;
#else
+#ifdef SERVICE_VM
+ ServiceDomain* vm = ServiceDomain::allocateService((JavaIsolate*)Jnjvm::bootstrapVM);
+ JavaThread::get()->isolate = vm;
+#else
JavaIsolate* vm = JavaIsolate::allocateIsolate(JavaIsolate::bootstrapVM);
#endif
+#endif
vm->runMain(argc, argv);
return 0;
}
More information about the llvm-commits
mailing list