Bug 1342553 - Part 0.2: Support JSOP_CHECKISCALLABLE in JIT

Issue #74
This commit is contained in:
janekptacijarabaci 2018-03-25 17:00:47 +02:00 committed by Roy Tam
commit 5bf58e6044
14 changed files with 189 additions and 43 deletions

View file

@ -2183,6 +2183,9 @@ IonBuilder::inspectOpcode(JSOp op)
case JSOP_CHECKISOBJ:
return jsop_checkisobj(GET_UINT8(pc));
case JSOP_CHECKISCALLABLE:
return jsop_checkiscallable(GET_UINT8(pc));
case JSOP_CHECKOBJCOERCIBLE:
return jsop_checkobjcoercible();
@ -10899,6 +10902,15 @@ IonBuilder::jsop_checkisobj(uint8_t kind)
return true;
}
bool
IonBuilder::jsop_checkiscallable(uint8_t kind)
{
MCheckIsCallable* check = MCheckIsCallable::New(alloc(), current->pop(), kind);
current->add(check);
current->push(check);
return true;
}
bool
IonBuilder::jsop_checkobjcoercible()
{