Part 3: Support JSOP_SETFUNNAME in Baseline and Ion

Issue #87
This commit is contained in:
janekptacijarabaci 2018-03-19 15:59:22 +01:00 committed by Roy Tam
commit 7bfe087f0c
12 changed files with 122 additions and 0 deletions

View file

@ -2122,6 +2122,9 @@ IonBuilder::inspectOpcode(JSOp op)
case JSOP_LAMBDA_ARROW:
return jsop_lambda_arrow(info().getFunction(pc));
case JSOP_SETFUNNAME:
return jsop_setfunname(GET_UINT8(pc));
case JSOP_ITER:
return jsop_iter(GET_INT8(pc));
@ -13339,6 +13342,21 @@ IonBuilder::jsop_lambda_arrow(JSFunction* fun)
return resumeAfter(ins);
}
bool
IonBuilder::jsop_setfunname(uint8_t prefixKind)
{
MDefinition* name = current->pop();
MDefinition* fun = current->pop();
MOZ_ASSERT(fun->type() == MIRType::Object);
MSetFunName* ins = MSetFunName::New(alloc(), fun, name, prefixKind);
current->add(ins);
current->push(fun);
return resumeAfter(ins);
}
bool
IonBuilder::jsop_setarg(uint32_t arg)
{