Bug 163622 - SpeculativeJIT::compileTryGetById needs to pass in NeedsToSpill along both the cell speculation and untyped speculation path
Summary: SpeculativeJIT::compileTryGetById needs to pass in NeedsToSpill along both th...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Saam Barati
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-10-18 14:50 PDT by Saam Barati
Modified: 2016-10-21 15:41 PDT (History)
12 users (show)

See Also:


Attachments
patch (3.01 KB, patch)
2016-10-20 15:16 PDT, Saam Barati
ysuzuki: review+
Details | Formatted Diff | Diff
patch for landing (3.00 KB, patch)
2016-10-21 14:21 PDT, Saam Barati
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Saam Barati 2016-10-18 14:50:54 PDT
...
Comment 1 Saam Barati 2016-10-20 15:16:35 PDT
Created attachment 292268 [details]
patch
Comment 2 JF Bastien 2016-10-20 15:21:44 PDT
Comment on attachment 292268 [details]
patch

Looks good!
Comment 3 Yusuke Suzuki 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!
Comment 4 Geoffrey Garen 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?
Comment 5 Saam Barati 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.
Comment 6 Saam Barati 2016-10-21 14:21:40 PDT
Created attachment 292403 [details]
patch for landing
Comment 7 WebKit Commit Bot 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>
Comment 8 WebKit Commit Bot 2016-10-21 15:41:12 PDT
All reviewed patches have been landed.  Closing bug.