--- a/js/src/jit/CodeGenerator.cpp
+++ b/js/src/jit/CodeGenerator.cpp
@@ -1020,16 +1020,28 @@ CodeGenerator::visitOsrScopeChain(LOsrSc
const ptrdiff_t frameOffset = StackFrame::offsetOfScopeChain();
masm.loadPtr(Address(ToRegister(frame), frameOffset), ToRegister(object));
return true;
}
bool
+CodeGenerator::visitOsrArgumentsObject(LOsrArgumentsObject *lir)
+{
+ const LAllocation *frame = lir->getOperand(0);
+ const LDefinition *object = lir->getDef(0);
+
+ const ptrdiff_t frameOffset = StackFrame::offsetOfArgumentsObject();
+
+ masm.loadPtr(Address(ToRegister(frame), frameOffset), ToRegister(object));
+ return true;
+}
+
+bool
CodeGenerator::visitStackArgT(LStackArgT *lir)
{
const LAllocation *arg = lir->getArgument();
MIRType argType = lir->mir()->getArgument()->type();
uint32_t argslot = lir->argslot();
int32_t stack_offset = StackOffsetOfPassedArg(argslot);
Address dest(StackPointer, stack_offset);