mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
[JAEGER] Implement JSOP_ARGSUB.
This commit is contained in:
parent
a08f6aa8cd
commit
b1196df5af
@ -1127,6 +1127,13 @@ mjit::Compiler::generateMethod()
|
||||
}
|
||||
END_CASE(JSOP_CALLDSLOT)
|
||||
|
||||
BEGIN_CASE(JSOP_ARGSUB)
|
||||
prepareStubCall();
|
||||
masm.move(Imm32(GET_ARGNO(PC)), Registers::ArgReg1);
|
||||
stubCall(stubs::ArgSub, Uses(0), Defs(1));
|
||||
frame.pushSynced();
|
||||
END_CASE(JSOP_ARGSUB)
|
||||
|
||||
BEGIN_CASE(JSOP_ARGCNT)
|
||||
prepareStubCall();
|
||||
stubCall(stubs::ArgCnt, Uses(0), Defs(1));
|
||||
|
@ -2482,3 +2482,13 @@ stubs::Pos(VMFrame &f)
|
||||
THROW();
|
||||
}
|
||||
|
||||
void JS_FASTCALL
|
||||
stubs::ArgSub(VMFrame &f, uint32 n)
|
||||
{
|
||||
jsid id = INT_TO_JSID(n);
|
||||
Value rval;
|
||||
if (!js_GetArgsProperty(f.cx, f.fp, id, &rval))
|
||||
THROW();
|
||||
f.regs.sp[0] = rval;
|
||||
}
|
||||
|
||||
|
@ -110,6 +110,7 @@ JSObject * JS_FASTCALL RegExp(VMFrame &f, JSObject *regex);
|
||||
JSObject * JS_FASTCALL Lambda(VMFrame &f, JSFunction *fun);
|
||||
JSObject * JS_FASTCALL FlatLambda(VMFrame &f, JSFunction *fun);
|
||||
void JS_FASTCALL Arguments(VMFrame &f);
|
||||
void JS_FASTCALL ArgSub(VMFrame &f, uint32 n);
|
||||
void JS_FASTCALL EnterBlock(VMFrame &f, JSObject *obj);
|
||||
void JS_FASTCALL LeaveBlock(VMFrame &f);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user