Move context var initialization into BaseContext.
This commit is contained in:
parent
8c95919b32
commit
8cf3e227ea
@ -58,12 +58,18 @@ BaseContext::BaseContext(PluginRuntime *pRuntime)
|
|||||||
m_ctx.n_idx = SP_ERROR_NONE;
|
m_ctx.n_idx = SP_ERROR_NONE;
|
||||||
m_ctx.rp = 0;
|
m_ctx.rp = 0;
|
||||||
|
|
||||||
g_Jit.SetupContextVars(m_pRuntime, this, &m_ctx);
|
m_ctx.tracker = new tracker_t;
|
||||||
|
m_ctx.tracker->pBase = (ucell_t *)malloc(1024);
|
||||||
|
m_ctx.tracker->pCur = m_ctx.tracker->pBase;
|
||||||
|
m_ctx.tracker->size = 1024 / sizeof(cell_t);
|
||||||
|
m_ctx.basecx = this;
|
||||||
|
m_ctx.plugin = const_cast<sp_plugin_t *>(pRuntime->plugin());
|
||||||
}
|
}
|
||||||
|
|
||||||
BaseContext::~BaseContext()
|
BaseContext::~BaseContext()
|
||||||
{
|
{
|
||||||
g_Jit.FreeContextVars(&m_ctx);
|
free(m_ctx.tracker->pBase);
|
||||||
|
delete m_ctx.tracker;
|
||||||
}
|
}
|
||||||
|
|
||||||
IVirtualMachine *
|
IVirtualMachine *
|
||||||
|
@ -1934,17 +1934,6 @@ JITX86::CompileFunction(PluginRuntime *prt, cell_t pcode_offs, int *err)
|
|||||||
return fun;
|
return fun;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
JITX86::SetupContextVars(PluginRuntime *runtime, BaseContext *pCtx, sp_context_t *ctx)
|
|
||||||
{
|
|
||||||
ctx->tracker = new tracker_t;
|
|
||||||
ctx->tracker->pBase = (ucell_t *)malloc(1024);
|
|
||||||
ctx->tracker->pCur = ctx->tracker->pBase;
|
|
||||||
ctx->tracker->size = 1024 / sizeof(cell_t);
|
|
||||||
ctx->basecx = pCtx;
|
|
||||||
ctx->plugin = const_cast<sp_plugin_t *>(runtime->plugin());
|
|
||||||
}
|
|
||||||
|
|
||||||
SPVM_NATIVE_FUNC
|
SPVM_NATIVE_FUNC
|
||||||
JITX86::CreateFakeNative(SPVM_FAKENATIVE_FUNC callback, void *pData)
|
JITX86::CreateFakeNative(SPVM_FAKENATIVE_FUNC callback, void *pData)
|
||||||
{
|
{
|
||||||
@ -1996,13 +1985,6 @@ CompData::Abort()
|
|||||||
delete this;
|
delete this;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
JITX86::FreeContextVars(sp_context_t *ctx)
|
|
||||||
{
|
|
||||||
free(ctx->tracker->pBase);
|
|
||||||
delete ctx->tracker;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool
|
bool
|
||||||
CompData::SetOption(const char *key, const char *val)
|
CompData::SetOption(const char *key, const char *val)
|
||||||
{
|
{
|
||||||
|
@ -154,8 +154,6 @@ class JITX86
|
|||||||
void ShutdownJIT();
|
void ShutdownJIT();
|
||||||
ICompilation *StartCompilation(PluginRuntime *runtime);
|
ICompilation *StartCompilation(PluginRuntime *runtime);
|
||||||
ICompilation *StartCompilation();
|
ICompilation *StartCompilation();
|
||||||
void SetupContextVars(PluginRuntime *runtime, BaseContext *pCtx, sp_context_t *ctx);
|
|
||||||
void FreeContextVars(sp_context_t *ctx);
|
|
||||||
SPVM_NATIVE_FUNC CreateFakeNative(SPVM_FAKENATIVE_FUNC callback, void *pData);
|
SPVM_NATIVE_FUNC CreateFakeNative(SPVM_FAKENATIVE_FUNC callback, void *pData);
|
||||||
void DestroyFakeNative(SPVM_NATIVE_FUNC func);
|
void DestroyFakeNative(SPVM_NATIVE_FUNC func);
|
||||||
CompiledFunction *CompileFunction(PluginRuntime *runtime, cell_t pcode_offs, int *err);
|
CompiledFunction *CompileFunction(PluginRuntime *runtime, cell_t pcode_offs, int *err);
|
||||||
|
Loading…
Reference in New Issue
Block a user