WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
144525
DFG::LICMPhase should attempt to hoist edge type checks if hoisting the whole node fails
https://bugs.webkit.org/show_bug.cgi?id=144525
Summary
DFG::LICMPhase should attempt to hoist edge type checks if hoisting the whole...
Filip Pizlo
Reported
2015-05-02 10:26:52 PDT
This usually isn't super necessary because the CPS type check hoisting - done in FixupPhase by putting checks on SetLocals - does a pretty good job. But it only covers the super common types and sometimes it will not do anything if the VariableAccessData looks sketchy. So, LICMPhase does have an opportunity here for some small additional speed-up.
Attachments
WIP
(12.17 KB, patch)
2018-05-20 23:05 PDT
,
Saam Barati
no flags
Details
Formatted Diff
Diff
patch
(14.73 KB, patch)
2018-05-21 00:56 PDT
,
Saam Barati
saam
: review-
Details
Formatted Diff
Diff
patch
(15.51 KB, patch)
2018-05-21 11:21 PDT
,
Saam Barati
no flags
Details
Formatted Diff
Diff
Archive of layout-test-results from ews201 for win-future
(12.75 MB, application/zip)
2018-05-21 22:05 PDT
,
EWS Watchlist
no flags
Details
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Saam Barati
Comment 1
2018-05-20 22:47:13 PDT
***
Bug 185795
has been marked as a duplicate of this bug. ***
Saam Barati
Comment 2
2018-05-20 23:05:06 PDT
Created
attachment 340829
[details]
WIP Seems to hoist some stuff in Octane. Need to clean some things up before actually putting it up for review.
Saam Barati
Comment 3
2018-05-21 00:56:03 PDT
Created
attachment 340832
[details]
patch Will run some benchmarks tomorrow before landing. I've verified via logging that various checks do get hoisted in Octane.
Saam Barati
Comment 4
2018-05-21 11:10:56 PDT
Comment on
attachment 340832
[details]
patch This doesn't do check hoisting on nodes that write. That's wrong...
Saam Barati
Comment 5
2018-05-21 11:21:17 PDT
Created
attachment 340865
[details]
patch
Saam Barati
Comment 6
2018-05-21 11:47:16 PDT
Benchmarks seem neutral. It may be a speedup in one or two subtests in Octane. Going to run them again to verify.
Saam Barati
Comment 7
2018-05-21 12:01:17 PDT
(In reply to Saam Barati from
comment #6
)
> Benchmarks seem neutral. It may be a speedup in one or two subtests in > Octane. Going to run them again to verify.
Seems like a 3-4% speedup on Octane/regexp. Seems neutral on most other things, with some maybe 1% speedups sprinkled about. I think the bots will be the best source of truth for this change.
EWS Watchlist
Comment 8
2018-05-21 22:05:01 PDT
Comment on
attachment 340865
[details]
patch
Attachment 340865
[details]
did not pass win-ews (win): Output:
http://webkit-queues.webkit.org/results/7761006
New failing tests: http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-audio.html
EWS Watchlist
Comment 9
2018-05-21 22:05:12 PDT
Created
attachment 340953
[details]
Archive of layout-test-results from ews201 for win-future The attached test failures were seen while running run-webkit-tests on the win-ews. Bot: ews201 Port: win-future Platform: CYGWIN_NT-6.1-2.9.0-0.318-5-3-x86_64-64bit
Filip Pizlo
Comment 10
2018-05-22 10:07:23 PDT
Comment on
attachment 340865
[details]
patch View in context:
https://bugs.webkit.org/attachment.cgi?id=340865&action=review
> Source/JavaScriptCore/dfg/DFGUseKind.h:310 > + case Int32Use: > + case KnownInt32Use: > + case AnyIntUse: > + case NumberUse:
Why do we say that these crash when the input is empty? Int32 check will only pass if the input is non-empty. Probably ditto for a lot of these.
Saam Barati
Comment 11
2018-05-22 12:20:39 PDT
Comment on
attachment 340865
[details]
patch View in context:
https://bugs.webkit.org/attachment.cgi?id=340865&action=review
>> Source/JavaScriptCore/dfg/DFGUseKind.h:310 >> + case NumberUse: > > Why do we say that these crash when the input is empty? > > Int32 check will only pass if the input is non-empty. Probably ditto for a lot of these.
We're returning false here, so the opposite of crashing :-)
WebKit Commit Bot
Comment 12
2018-05-22 12:47:45 PDT
Comment on
attachment 340865
[details]
patch Clearing flags on attachment: 340865 Committed
r232075
: <
https://trac.webkit.org/changeset/232075
>
WebKit Commit Bot
Comment 13
2018-05-22 12:47:47 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 14
2018-05-22 12:49:10 PDT
<
rdar://problem/40460830
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug