Bug 202299 - [JSC] DFG recursive-tail-call optimization should not emit jump to call-frame with varargs
Summary: [JSC] DFG recursive-tail-call optimization should not emit jump to call-frame...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Yusuke Suzuki
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-09-26 20:39 PDT by Yusuke Suzuki
Modified: 2019-09-27 10:58 PDT (History)
7 users (show)

See Also:


Attachments
Patch (6.29 KB, patch)
2019-09-26 20:57 PDT, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (7.32 KB, patch)
2019-09-26 20:59 PDT, Yusuke Suzuki
saam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Yusuke Suzuki 2019-09-26 20:39:43 PDT
[JSC] DFG recursive-tail-call optimization should not emit jump to call-frame with varargs
Comment 1 Yusuke Suzuki 2019-09-26 20:57:58 PDT
Created attachment 379709 [details]
Patch
Comment 2 Yusuke Suzuki 2019-09-26 20:59:00 PDT
Created attachment 379710 [details]
Patch
Comment 3 Yusuke Suzuki 2019-09-26 20:59:38 PDT
<rdar://problem/52669116>
Comment 4 Saam Barati 2019-09-26 23:57:45 PDT
Comment on attachment 379710 [details]
Patch

Nice. r=me
Comment 5 Saam Barati 2019-09-27 00:03:11 PDT
Can you open a bug to reinvestigate this in the future? I think requirements would be:
- static argument count needs to be stored into stack
- static argument count >= minimum
- the arguments numbered >= minimum can’t use SetLocal, but need to use something like WriteStack which is not modeled by SSA lowering
Comment 6 Yusuke Suzuki 2019-09-27 09:57:03 PDT
Committed r250430: <https://trac.webkit.org/changeset/250430>
Comment 7 Yusuke Suzuki 2019-09-27 10:58:24 PDT
(In reply to Saam Barati from comment #5)
> Can you open a bug to reinvestigate this in the future? I think requirements
> would be:
> - static argument count needs to be stored into stack
> - static argument count >= minimum
> - the arguments numbered >= minimum can’t use SetLocal, but need to use
> something like WriteStack which is not modeled by SSA lowering

Yeah! I added FIXME comment with URL :)