Summary: | [JSC] Clean up callOperation APIs | ||
---|---|---|---|
Product: | WebKit | Reporter: | Yusuke Suzuki <ysuzuki> |
Component: | JavaScriptCore | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW --- | ||
Severity: | Normal | CC: | saam |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Description
Yusuke Suzuki
2016-10-06 21:18:11 PDT
(In reply to comment #0) > From Saam's idea. https://bugs.webkit.org/show_bug.cgi?id=162978#c3 > > class Call { > struct Argument { > Argument(GPRReg); > Argument(JSValueRegs); > Argument(immediate type: int32/int64/pointer); > } > Type m_resultType; > Vector<Arguments> m_arguments; > FunctionPtr m_function; > }; > > and then have a function like: > setupCallWithExecState(const Call& call); > > And API should correctly construct the frame according to Vector<Arguments>. Thinking about it more, we'd probably want to encode if the first argument is ExecState or not since we have some operations that don't take ExecState |