Bug 202299

Summary: [JSC] DFG recursive-tail-call optimization should not emit jump to call-frame with varargs
Product: WebKit Reporter: Yusuke Suzuki <ysuzuki>
Component: New BugsAssignee: Yusuke Suzuki <ysuzuki>
Status: RESOLVED FIXED    
Severity: Normal CC: ews-watchlist, keith_miller, mark.lam, msaboff, saam, tzagallo, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch saam: review+

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 :)