[vmkit-commits] [vmkit] r73696 - in /vmkit/trunk/lib/JnJVM/VMCore: Reader.cpp VirtualTables.cpp
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Thu Jun 18 06:55:41 PDT 2009
Author: geoffray
Date: Thu Jun 18 08:55:33 2009
New Revision: 73696
URL: http://llvm.org/viewvc/llvm-project?rev=73696&view=rev
Log:
Allocate arrays representing files with the GC instead of the bump pointer
allocator. This enables deletion of unused files.
Modified:
vmkit/trunk/lib/JnJVM/VMCore/Reader.cpp
vmkit/trunk/lib/JnJVM/VMCore/VirtualTables.cpp
Modified: vmkit/trunk/lib/JnJVM/VMCore/Reader.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/Reader.cpp?rev=73696&r1=73695&r2=73696&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/Reader.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/Reader.cpp Thu Jun 18 08:55:33 2009
@@ -33,7 +33,7 @@
long nbb = ftell(fp);
fseek(fp, 0, SeekSet);
UserClassArray* array = loader->upcalls->ArrayOfByte;
- res = (ArrayUInt8*)array->doNew((sint32)nbb, loader->allocator);
+ res = (ArrayUInt8*)array->doNew((sint32)nbb, 0);
fread(res->elements, nbb, 1, fp);
fclose(fp);
}
Modified: vmkit/trunk/lib/JnJVM/VMCore/VirtualTables.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/VirtualTables.cpp?rev=73696&r1=73695&r2=73696&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/VirtualTables.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/VirtualTables.cpp Thu Jun 18 08:55:33 2009
@@ -29,6 +29,7 @@
#include "Jnjvm.h"
#include "JnjvmClassLoader.h"
#include "LockedMap.h"
+#include "Zip.h"
using namespace jnjvm;
@@ -244,6 +245,11 @@
TRACE_DELEGATEE(upcalls->OfLong);
TRACE_DELEGATEE(upcalls->OfDouble);
#undef TRACE_DELEGATEE
+
+ for (std::vector<ZipArchive*>::iterator i = bootArchives.begin(),
+ e = bootArchives.end(); i!= e; ++i) {
+ (*i)->bytes->markAndTrace();
+ }
}
//===----------------------------------------------------------------------===//
More information about the vmkit-commits
mailing list