[llvm-commits] [vmkit] r50264 - in /vmkit/trunk/lib/JnJVM: Classpath/ClasspathVMSystemProperties.cpp VMCore/JavaIsolate.cpp VMCore/JavaUpcalls.cpp
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Fri Apr 25 09:08:20 PDT 2008
Author: geoffray
Date: Fri Apr 25 11:08:20 2008
New Revision: 50264
URL: http://llvm.org/viewvc/llvm-project?rev=50264&view=rev
Log:
Implement Java post-properties.
Modified:
vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp
vmkit/trunk/lib/JnJVM/VMCore/JavaIsolate.cpp
vmkit/trunk/lib/JnJVM/VMCore/JavaUpcalls.cpp
Modified: vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp?rev=50264&r1=50263&r2=50264&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathVMSystemProperties.cpp Fri Apr 25 11:08:20 2008
@@ -118,6 +118,12 @@
}
-
+extern "C" void propertiesPostInit(JavaObject* prop) {
+ Jnjvm* vm = JavaThread::get()->isolate;
+ for (std::vector<std::pair<char*, char*> >::iterator i = vm->postProperties.begin(),
+ e = vm->postProperties.end(); i!= e; i++) {
+ setProperty(vm, prop, i->first, i->second);
+ }
+}
}
Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaIsolate.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaIsolate.cpp?rev=50264&r1=50263&r2=50264&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaIsolate.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaIsolate.cpp Fri Apr 25 11:08:20 2008
@@ -198,7 +198,7 @@
else vm->setClasspath(argv[i]);
} else if (!(strcmp(cur, "-debug"))) {
nyi();
- } else if (!(strcmp(cur, "-D"))) {
+ } else if (!(strncmp(cur, "-D", 2))) {
uint32 len = strlen(cur);
if (len == 2) {
printInformation();
Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaUpcalls.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaUpcalls.cpp?rev=50264&r1=50263&r2=50264&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaUpcalls.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaUpcalls.cpp Fri Apr 25 11:08:20 2008
@@ -253,6 +253,12 @@
getCallingClassLoader->llvmFunction->setName("getCallingClassLoader");
getCallingClassLoader->llvmFunction->setLinkage(llvm::GlobalValue::ExternalLinkage);
}
+
+ JavaMethod* postProperties = UPCALL_METHOD(vm, "gnu/classpath/VMSystemProperties", "postInit", "(Ljava/util/Properties;)V", ACC_STATIC);
+ {
+ postProperties->llvmFunction->setName("propertiesPostInit");
+ postProperties->llvmFunction->setLinkage(llvm::GlobalValue::ExternalLinkage);
+ }
}
extern "C" JavaString* internString(JavaString* obj) {
More information about the llvm-commits
mailing list