[Webkit-unassigned] [Bug 253481] New: Fold CallFrameClosure into CachedCall.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Mar 6 19:00:12 PST 2023


https://bugs.webkit.org/show_bug.cgi?id=253481

            Bug ID: 253481
           Summary: Fold CallFrameClosure into CachedCall.
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: mark.lam at apple.com

CallFrameClosure is always embedded into and used with a CachedCall.  This patch makes the following changes:
1. By folding it into CachedCall, we can remove many redundancies e.g. a protoCallFrame pointer, a JSFunction pointer, a VM pointer, and argumentCountIncludingThis.
2. CallFrameClosure::parameterCountIncludingThis was also never used.  So, remove it.
3. Remove CachedCall::m_interpreter because it is always as an offset from CachedCall::m_vm.
4. Added an optimization to compute VM& from Interpreter*.  This eliminates the need to pass globalObject to a few Interpreter::executeXXX functions where the sole purpose of the globalObject is for computing VM&.
5. Add an optimization in Interpreter::executeCachedCall where we can skip the call to ScriptExecutable::prepareForExecution if the addressForCall is unchanged.
6. Remove the now unneeded CallFrameClosure.
7. Rename Interpreter::prepareForRepeatCall to prepareForCachedCall to match what it's actually preparing for.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20230307/dc631565/attachment.htm>


More information about the webkit-unassigned mailing list