Bug 211877

Summary: Do more speculation that a GetByVal/PutByVal will have an int32 index based on data from ArrayProfile
Product: WebKit Reporter: Saam Barati <saam>
Component: JavaScriptCoreAssignee: Saam Barati <saam>
Status: RESOLVED FIXED    
Severity: Normal CC: benjamin, fpizlo, ggaren, gskachkov, guijemont, keith_miller, mark.lam, msaboff, rmorisset, ross.kirsling, ticaiolima, tzagallo, webkit-bug-importer, ysuzuki
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 211935    
Bug Blocks:    
Attachments:
Description Flags
WIP
none
WIP
none
patch
none
patch
none
patch none

Description Saam Barati 2020-05-13 20:02:20 PDT
And we could do more to stay in Int52.

And we could perhaps detect if we always successfully can convert to int32, and speculate as such
Comment 1 Saam Barati 2020-05-13 20:03:02 PDT
Created attachment 399327 [details]
WIP
Comment 2 Saam Barati 2020-05-18 13:38:01 PDT
Created attachment 399671 [details]
WIP

~2.5x faster on microbenchmarks/get-and-put-by-val-double-index-dont-fall-off-a-cliff.js

Might hold off a bit until final tuning and landing of this.
Comment 3 Saam Barati 2020-05-18 15:32:21 PDT
Even simpler, and a 3.75x speedup
Comment 4 Saam Barati 2020-05-18 15:33:02 PDT
Created attachment 399678 [details]
patch
Comment 5 Saam Barati 2020-05-18 15:43:25 PDT
Created attachment 399679 [details]
patch

rebased
Comment 6 Saam Barati 2020-05-18 15:56:00 PDT
Created attachment 399680 [details]
patch
Comment 7 Yusuke Suzuki 2020-05-18 16:03:07 PDT
Comment on attachment 399680 [details]
patch

r=me
Comment 8 EWS 2020-05-18 18:17:53 PDT
Committed r261842: <https://trac.webkit.org/changeset/261842>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 399680 [details].
Comment 9 Radar WebKit Bug Importer 2020-05-18 18:18:18 PDT
<rdar://problem/63372806>