зеркало из https://github.com/mozilla/pjs.git
Bug 469927 - TM: much slower than interpreter with short loop with |let| (r=mrbkap, a=sayrer).
This commit is contained in:
Родитель
133445f5b2
Коммит
89ad60579e
|
@ -8286,13 +8286,21 @@ TraceRecorder::record_JSOP_TYPEOFEXPR()
|
|||
JS_REQUIRES_STACK bool
|
||||
TraceRecorder::record_JSOP_ENTERBLOCK()
|
||||
{
|
||||
return false;
|
||||
JSScript* script = cx->fp->script;
|
||||
JSFrameRegs& regs = *cx->fp->regs;
|
||||
JSObject* obj;
|
||||
JS_GET_SCRIPT_OBJECT(script, GET_FULL_INDEX(0), obj);
|
||||
|
||||
LIns* void_ins = INS_CONST(JSVAL_TO_BOOLEAN(JSVAL_VOID));
|
||||
for (int i = 0, n = OBJ_BLOCK_COUNT(cx, obj); i < n; i++)
|
||||
stack(i, void_ins);
|
||||
return true;
|
||||
}
|
||||
|
||||
JS_REQUIRES_STACK bool
|
||||
TraceRecorder::record_JSOP_LEAVEBLOCK()
|
||||
{
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
JS_REQUIRES_STACK bool
|
||||
|
@ -8345,7 +8353,10 @@ TraceRecorder::record_JSOP_ENUMCONSTELEM()
|
|||
JS_REQUIRES_STACK bool
|
||||
TraceRecorder::record_JSOP_LEAVEBLOCKEXPR()
|
||||
{
|
||||
return false;
|
||||
LIns* v_ins = stack(-1);
|
||||
int n = -1 - GET_UINT16(cx->fp->regs->pc);
|
||||
stack(n, v_ins);
|
||||
return true;
|
||||
}
|
||||
|
||||
JS_REQUIRES_STACK bool
|
||||
|
|
Загрузка…
Ссылка в новой задаче