Bug 163622

Summary: SpeculativeJIT::compileTryGetById needs to pass in NeedsToSpill along both the cell speculation and untyped speculation path
Product: WebKit Reporter: Saam Barati <saam>
Component: JavaScriptCoreAssignee: Saam Barati <saam>
Status: RESOLVED FIXED    
Severity: Normal CC: benjamin, commit-queue, fpizlo, ggaren, gskachkov, jfbastien, keith_miller, mark.lam, msaboff, oliver, ticaiolima, ysuzuki
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
patch
ysuzuki: review+
patch for landing none

Saam Barati
Reported 2016-10-18 14:50:54 PDT
...
Attachments
patch (3.01 KB, patch)
2016-10-20 15:16 PDT, Saam Barati
ysuzuki: review+
patch for landing (3.00 KB, patch)
2016-10-21 14:21 PDT, Saam Barati
no flags
Saam Barati
Comment 1 2016-10-20 15:16:35 PDT
JF Bastien
Comment 2 2016-10-20 15:21:44 PDT
Comment on attachment 292268 [details] patch Looks good!
Yusuke Suzuki
Comment 3 2016-10-20 15:22:50 PDT
Comment on attachment 292268 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=292268&action=review r=me > Source/JavaScriptCore/ChangeLog:11 > + that it allocated for it after the TryGetById node executed. Yeah, if base's use count remains, we still should keep this in that register!
Geoffrey Garen
Comment 4 2016-10-20 15:39:42 PDT
Comment on attachment 292268 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=292268&action=review > JSTests/stress/try-get-by-id-should-spill-registers-dfg.js:10 > +let f = createBuiltin(`(function (arg) { > + let r = @tryGetById(arg, "prototype"); > + if (arg !== true) throw new @Error("Bad clobber of arg"); > + return r; > + })`); > +noInline(f); > + > +for (let i = 0; i < 10000; i++) { > + f(true); > +} Looks like you used tabs instead of spaces?
Saam Barati
Comment 5 2016-10-20 15:41:18 PDT
Comment on attachment 292268 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=292268&action=review >> JSTests/stress/try-get-by-id-should-spill-registers-dfg.js:10 >> +} > > Looks like you used tabs instead of spaces? I don't think I did but my indentation is a bit off. I'll fix before landing.
Saam Barati
Comment 6 2016-10-21 14:21:40 PDT
Created attachment 292403 [details] patch for landing
WebKit Commit Bot
Comment 7 2016-10-21 15:41:07 PDT
Comment on attachment 292403 [details] patch for landing Clearing flags on attachment: 292403 Committed r207697: <http://trac.webkit.org/changeset/207697>
WebKit Commit Bot
Comment 8 2016-10-21 15:41:12 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.