[vmkit-commits] [vmkit] r83250 - in /vmkit/trunk/lib/N3/VMCore: Assembly.cpp CLIJit.cpp LockedMap.cpp N3Initialise.cpp NativeUtil.cpp Opcodes.cpp VMClass.h VirtualTables.cpp
Gael Thomas
gael.thomas at lip6.fr
Fri Oct 2 10:53:15 PDT 2009
Author: gthomas
Date: Fri Oct 2 12:53:15 2009
New Revision: 83250
URL: http://llvm.org/viewvc/llvm-project?rev=83250&view=rev
Log:
Param, VMMethod, VMGenericMethod and VMField are also allocated with a BumpPtrAllocator
Modified:
vmkit/trunk/lib/N3/VMCore/Assembly.cpp
vmkit/trunk/lib/N3/VMCore/CLIJit.cpp
vmkit/trunk/lib/N3/VMCore/LockedMap.cpp
vmkit/trunk/lib/N3/VMCore/N3Initialise.cpp
vmkit/trunk/lib/N3/VMCore/NativeUtil.cpp
vmkit/trunk/lib/N3/VMCore/Opcodes.cpp
vmkit/trunk/lib/N3/VMCore/VMClass.h
vmkit/trunk/lib/N3/VMCore/VirtualTables.cpp
Modified: vmkit/trunk/lib/N3/VMCore/Assembly.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/Assembly.cpp?rev=83250&r1=83249&r2=83250&view=diff
==============================================================================
--- vmkit/trunk/lib/N3/VMCore/Assembly.cpp (original)
+++ vmkit/trunk/lib/N3/VMCore/Assembly.cpp Fri Oct 2 12:53:15 2009
@@ -387,7 +387,7 @@
}
static VMField* fieldDup(uint32& key, Assembly* ass) {
- VMField* field = gc_new(VMField)();
+ VMField* field = new(ass->allocator, "VMField") VMField();
field->token = key;
return field;
}
@@ -414,14 +414,14 @@
}
static VMMethod* methodDup(uint32& key, Assembly* ass) {
- VMMethod* meth = gc_new(VMMethod)();
+ VMMethod* meth = new(ass->allocator, "VMMethod") VMMethod();
meth->token = key;
meth->canBeInlined = false;
return meth;
}
static VMGenericMethod* genMethodDup(uint32& key, Assembly* ass) {
- VMGenericMethod* meth = gc_new(VMGenericMethod)();
+ VMGenericMethod* meth = new(ass->allocator, "VMGenericMethod") VMGenericMethod();
meth->token = key;
meth->canBeInlined = false;
return meth;
@@ -1415,7 +1415,7 @@
uint32 name = paramArray[CONSTANT_PARAM_NAME];
uint32 sequence = paramArray[CONSTANT_PARAM_SEQUENCE];
- Param* param = gc_new(Param)();
+ Param* param = new(allocator, "Param") Param();
param->flags = flags;
param->sequence = sequence;
param->name = readString(meth->classDef->vm, stringOffset + name);
@@ -1779,7 +1779,7 @@
} else {
type->resolveType(false, false, genMethod);
- VMMethod* meth = gc_new(VMMethod)() ;
+ VMMethod* meth = new(allocator, "VMMethod") VMMethod() ;
bool virt = extractMethodSignature(offset, type, args, genClass, genMethod);
bool structReturn = false;
const llvm::FunctionType* signature = VMMethod::resolveSignature(args,
Modified: vmkit/trunk/lib/N3/VMCore/CLIJit.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/CLIJit.cpp?rev=83250&r1=83249&r2=83250&view=diff
==============================================================================
--- vmkit/trunk/lib/N3/VMCore/CLIJit.cpp (original)
+++ vmkit/trunk/lib/N3/VMCore/CLIJit.cpp Fri Oct 2 12:53:15 2009
@@ -1472,7 +1472,7 @@
classDef->aquire();
if (methPtr == 0) {
methPtr = Function::Create(getSignature(genMethod), GlobalValue::GhostLinkage,
- printString(), classDef->vm->getLLVMModule());
+ mvm::PrintBuffer::objectToString(this), classDef->vm->getLLVMModule());
classDef->vm->functions->hash(methPtr, this);
}
classDef->release();
Modified: vmkit/trunk/lib/N3/VMCore/LockedMap.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/LockedMap.cpp?rev=83250&r1=83249&r2=83250&view=diff
==============================================================================
--- vmkit/trunk/lib/N3/VMCore/LockedMap.cpp (original)
+++ vmkit/trunk/lib/N3/VMCore/LockedMap.cpp Fri Oct 2 12:53:15 2009
@@ -75,7 +75,7 @@
}
if (res == 0) {
- UTF8* tmp = UTF8::acons(size, MSCorlib::arrayChar);
+ UTF8* tmp = (UTF8 *)UTF8::acons(size, MSCorlib::arrayChar);
for (sint32 i = 0; i < size; i++) {
tmp->setAt(i, asciiz[i]);
}
Modified: vmkit/trunk/lib/N3/VMCore/N3Initialise.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/N3Initialise.cpp?rev=83250&r1=83249&r2=83250&view=diff
==============================================================================
--- vmkit/trunk/lib/N3/VMCore/N3Initialise.cpp (original)
+++ vmkit/trunk/lib/N3/VMCore/N3Initialise.cpp Fri Oct 2 12:53:15 2009
@@ -178,7 +178,6 @@
#endif
INIT(Property);
- INIT(Param);
INIT(VMArray);
INIT(ArrayUInt8);
INIT(ArraySInt8);
@@ -191,9 +190,6 @@
INIT(ArrayDouble);
INIT(ArrayObject);
INIT(UTF8);
- INIT(VMMethod);
- INIT(VMGenericMethod);
- INIT(VMField);
INIT(VMCond);
INIT(LockObj);
INIT(VMObject);
Modified: vmkit/trunk/lib/N3/VMCore/NativeUtil.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/NativeUtil.cpp?rev=83250&r1=83249&r2=83250&view=diff
==============================================================================
--- vmkit/trunk/lib/N3/VMCore/NativeUtil.cpp (original)
+++ vmkit/trunk/lib/N3/VMCore/NativeUtil.cpp Fri Oct 2 12:53:15 2009
@@ -47,7 +47,7 @@
if (!res) {
VMThread::get()->vm->error("unable to find native method %s",
- meth->printString());
+ mvm::PrintBuffer::objectToString(meth));
}
return res;
Modified: vmkit/trunk/lib/N3/VMCore/Opcodes.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/Opcodes.cpp?rev=83250&r1=83249&r2=83250&view=diff
==============================================================================
--- vmkit/trunk/lib/N3/VMCore/Opcodes.cpp (original)
+++ vmkit/trunk/lib/N3/VMCore/Opcodes.cpp Fri Oct 2 12:53:15 2009
@@ -107,7 +107,7 @@
extern "C" void n3PrintExecution(char* opcode, VMMethod* meth) {
- fprintf(stderr, "executing %s %s\n", meth->printString(), opcode);
+ fprintf(stderr, "executing %s %s\n", mvm::PrintBuffer::objectToString(meth), opcode);
}
Modified: vmkit/trunk/lib/N3/VMCore/VMClass.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/VMClass.h?rev=83250&r1=83249&r2=83250&view=diff
==============================================================================
--- vmkit/trunk/lib/N3/VMCore/VMClass.h (original)
+++ vmkit/trunk/lib/N3/VMCore/VMClass.h Fri Oct 2 12:53:15 2009
@@ -193,9 +193,8 @@
void makeType();
};
-class VMMethod : public mvm::Object {
+class VMMethod : public mvm::PermanentObject {
public:
- static VirtualTable* VT;
virtual void print(mvm::PrintBuffer* buf) const;
virtual void TRACER;
@@ -239,16 +238,14 @@
// add flag to VMMethod instead
class VMGenericMethod : public VMMethod {
public:
- static VirtualTable* VT;
virtual void print(mvm::PrintBuffer* buf) const;
virtual void TRACER;
std::vector<VMCommonClass*> genericParams;
};
-class VMField : public mvm::Object {
+class VMField : public mvm::PermanentObject {
public:
- static VirtualTable* VT;
virtual void print(mvm::PrintBuffer* buf) const;
virtual void TRACER;
@@ -279,9 +276,8 @@
llvm::GlobalVariable* _llvmVar;
};
-class Param : public mvm::Object {
+class Param : public mvm::PermanentObject {
public:
- static VirtualTable* VT;
virtual void print(mvm::PrintBuffer* buf) const;
virtual void TRACER;
Modified: vmkit/trunk/lib/N3/VMCore/VirtualTables.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/VirtualTables.cpp?rev=83250&r1=83249&r2=83250&view=diff
==============================================================================
--- vmkit/trunk/lib/N3/VMCore/VirtualTables.cpp (original)
+++ vmkit/trunk/lib/N3/VMCore/VirtualTables.cpp Fri Oct 2 12:53:15 2009
@@ -38,9 +38,6 @@
INIT(ArrayDouble);
INIT(ArrayObject);
INIT(UTF8);
- INIT(VMMethod);
- INIT(VMGenericMethod);
- INIT(VMField);
INIT(VMCond);
INIT(LockObj);
INIT(VMObject);
@@ -48,7 +45,6 @@
INIT(ThreadSystem);
INIT(CLIString);
INIT(Property);
- INIT(Param);
INIT(CacheNode);
INIT(Enveloppe);
INIT(Opinfo);
@@ -61,7 +57,7 @@
}
void CLIJit::TRACER {
- compilingMethod->MARK_AND_TRACE;
+ compilingMethod->CALL_TRACER;
compilingClass->CALL_TRACER;
}
@@ -84,7 +80,7 @@
void Enveloppe::TRACER {
firstCache->MARK_AND_TRACE;
//cacheLock->MARK_AND_TRACE;
- originalMethod->MARK_AND_TRACE;
+ originalMethod->CALL_TRACER;
}
void VMArray::TRACER {
@@ -135,10 +131,10 @@
CALL_TRACER_VECTOR(VMClass*, interfaces, std::allocator);
//lockVar->MARK_AND_TRACE;
//condVar->MARK_AND_TRACE;
- TRACE_VECTOR(VMMethod*, virtualMethods, std::allocator);
- TRACE_VECTOR(VMMethod*, staticMethods, std::allocator);
- TRACE_VECTOR(VMField*, virtualFields, std::allocator);
- TRACE_VECTOR(VMField*, staticFields, std::allocator);
+ CALL_TRACER_VECTOR(VMMethod*, virtualMethods, std::allocator);
+ CALL_TRACER_VECTOR(VMMethod*, staticMethods, std::allocator);
+ CALL_TRACER_VECTOR(VMField*, virtualFields, std::allocator);
+ CALL_TRACER_VECTOR(VMField*, staticFields, std::allocator);
delegatee->MARK_AND_TRACE;
CALL_TRACER_VECTOR(VMCommonClass*, display, std::allocator);
vm->CALL_TRACER;
@@ -154,7 +150,7 @@
virtualInstance->MARK_AND_TRACE;
CALL_TRACER_VECTOR(VMClass*, innerClasses, std::allocator);
outerClass->CALL_TRACER;
- TRACE_VECTOR(VMMethod*, genericMethods, std::allocator);
+ CALL_TRACER_VECTOR(VMMethod*, genericMethods, std::allocator);
}
void VMGenericClass::TRACER {
@@ -177,7 +173,7 @@
delegatee->MARK_AND_TRACE;
//signature->MARK_AND_TRACE;
classDef->CALL_TRACER;
- TRACE_VECTOR(Param*, params, gc_allocator);
+ CALL_TRACER_VECTOR(Param*, params, gc_allocator);
TRACE_VECTOR(Enveloppe*, caches, gc_allocator);
name->MARK_AND_TRACE;
}
@@ -231,7 +227,7 @@
}
void Param::TRACER {
- method->MARK_AND_TRACE;
+ method->CALL_TRACER;
name->MARK_AND_TRACE;
}
More information about the vmkit-commits
mailing list