[Webkit-unassigned] [Bug 180044] New: Re-enable the recursive tail call optimisation for closures

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Nov 27 10:40:01 PST 2017


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

            Bug ID: 180044
           Summary: Re-enable the recursive tail call optimisation for
                    closures
           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: rmorisset at apple.com

In https://bugs.webkit.org/show_bug.cgi?id=179835 I disabled recursive tail call optimisation on closures because it is wrong in general.
It is possible in theory to re-enable it with the following changes:
- Test that the callee cell itself is the same, and not just its executable.
- This in turns requires storing a pointer to the callee cell in the InlineStackEntry.
- If it is different, we do not want to OSR exit, as it may be a common case, we want to branch to a slow path in which we will compile the tail call in the normal fashion.

-- 
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/20171127/a491dcec/attachment.html>


More information about the webkit-unassigned mailing list