[vmkit-commits] [vmkit] r61823 - in /vmkit/trunk/lib/JnJVM/VMCore: Jnjvm.cpp LockedMap.cpp LockedMap.h
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Tue Jan 6 13:22:23 PST 2009
Author: geoffray
Date: Tue Jan 6 15:22:22 2009
New Revision: 61823
URL: http://llvm.org/viewvc/llvm-project?rev=61823&view=rev
Log:
Add the bootstrap strings to the virtual machine when the vm is created.
Modified:
vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp
vmkit/trunk/lib/JnJVM/VMCore/LockedMap.cpp
vmkit/trunk/lib/JnJVM/VMCore/LockedMap.h
Modified: vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp?rev=61823&r1=61822&r2=61823&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp Tue Jan 6 15:22:22 2009
@@ -1051,7 +1051,12 @@
upcalls = bootstrapLoader->upcalls;
throwable = upcalls->newThrowable;
-
+
+ for (std::vector<JavaString*>::iterator i = loader->strings.begin(),
+ e = loader->strings.end(); i != e; ++i) {
+ hashStr.insert(*i);
+ }
+
#ifdef ISOLATE
IsolateLock.lock();
for (uint32 i = 0; i < NR_ISOLATES; ++i) {
Modified: vmkit/trunk/lib/JnJVM/VMCore/LockedMap.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/LockedMap.cpp?rev=61823&r1=61822&r2=61823&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/LockedMap.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/LockedMap.cpp Tue Jan 6 15:22:22 2009
@@ -170,3 +170,7 @@
void UTF8Map::insert(const UTF8* val) {
map.insert(std::make_pair(readerHasher(val->elements, val->size), val));
}
+
+void StringMap::insert(JavaString* str) {
+ map.insert(std::make_pair(str->value, str));
+}
Modified: vmkit/trunk/lib/JnJVM/VMCore/LockedMap.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/LockedMap.h?rev=61823&r1=61822&r2=61823&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/LockedMap.h (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/LockedMap.h Tue Jan 6 15:22:22 2009
@@ -144,6 +144,10 @@
class StringMap :
public LockedMap<const UTF8*, JavaString*, ltutf8, Jnjvm*> {
+
+public:
+ void insert(JavaString* str);
+
};
class TypeMap : public mvm::PermanentObject {
More information about the vmkit-commits
mailing list