Custom stack for IVM. 2-3x faster.

This commit is contained in:
Ben Vanik
2014-01-06 23:11:10 -08:00
parent 2ed6f478c1
commit 698eaeeb88
6 changed files with 155 additions and 9 deletions

View File

@@ -10,6 +10,7 @@
#include <alloy/backend/ivm/ivm_backend.h>
#include <alloy/backend/ivm/ivm_assembler.h>
#include <alloy/backend/ivm/ivm_stack.h>
#include <alloy/backend/ivm/tracing.h>
using namespace alloy;
@@ -39,6 +40,15 @@ int IVMBackend::Initialize() {
return result;
}
void* IVMBackend::AllocThreadData() {
return new IVMStack();
}
void IVMBackend::FreeThreadData(void* thread_data) {
auto stack = (IVMStack*)thread_data;
delete stack;
}
Assembler* IVMBackend::CreateAssembler() {
return new IVMAssembler(this);
}