void Interpreter::loadCtxDouble() { FunctionContext* ctx = topContext(); uint16_t ctxId = getNext2Bytes(); uint16_t id = getNext2Bytes(); pushDouble(ctx->readDouble(ctxId, id)); }
void Interpreter::storeCtxInt() { FunctionContext* ctx = topContext(); uint16_t ctxId = getNext2Bytes(); uint16_t id = getNext2Bytes(); StackVar var = _stack.top(); popVar(); ctx->storeInt(ctxId, id, var.i); }
void image::processDRI() { unsigned short int length; length = getNext2Bytes(); restartInterval = getNext2Bytes(); if(restartInterval > 0) restartEnabled = true; printInfo(1,"\ninfo : found DRI marker\n"); printInfo(1,"\n********************** DRI HEADER ******************************\n"); printInfo(1,"\nlength : %u\n", length); printInfo(1,"\nrestart interval : %u \n", restartInterval); printInfo((restartEnabled == true),"\nrestart is enabled\n"); printInfo((restartEnabled == false),"\nrestart is not enabled\n"); printInfo(1,"\n****************************************************************\n"); }
void Interpreter::call() { uint16_t funId = getNext2Bytes(); pushContext(funId); loadFunParamsInCtx(funId); stackTrace.push(CallInfo(_bc, _insPtr)); _bc = ((BytecodeFunction*)_code->functionById(funId))->bytecode(); _insPtr = 0; // popContext(); }
void Interpreter::loadString() { StackVar var; var.strId = getNext2Bytes(); pushVar(VT_STRING, var); }