[JAEGER] Added JSOP_LOCALINC,LOCALDEC,INCLOCAL,DECLOCAL.

This commit is contained in:
David Anderson
2010-06-10 20:08:17 -07:00
parent 775b247a09
commit 86d93f4f14
7 changed files with 109 additions and 5 deletions

View File

@@ -909,6 +909,24 @@ mjit::Compiler::generateMethod()
stubCall(stubs::ForName, Uses(0), Defs(0));
END_CASE(JSOP_FORNAME)
BEGIN_CASE(JSOP_INCLOCAL)
BEGIN_CASE(JSOP_DECLOCAL)
BEGIN_CASE(JSOP_LOCALINC)
BEGIN_CASE(JSOP_LOCALDEC)
{
jsbytecode *next = &PC[JSOP_LOCALINC_LENGTH];
bool popped = false;
if (JSOp(*next) == JSOP_POP && !analysis[next].nincoming)
popped = true;
/* These manually advance the PC. */
jsop_localinc(op, GET_SLOTNO(PC), popped);
PC += JSOP_LOCALINC_LENGTH;
if (popped)
PC += JSOP_POP_LENGTH;
break;
}
END_CASE(JSOP_LOCALDEC)
BEGIN_CASE(JSOP_BINDNAME)
jsop_bindname(fullAtomIndex(PC));
END_CASE(JSOP_BINDNAME)