RESOLVED FIXED 195653
[JSC] OSR entry should respect abstract values in addition to flush formats
https://bugs.webkit.org/show_bug.cgi?id=195653
Summary [JSC] OSR entry should respect abstract values in addition to flush formats
Yusuke Suzuki
Reported 2019-03-12 17:17:25 PDT
[JSC] OSR entry should respect abstract values in addition to flush formats
Attachments
Patch (7.13 KB, patch)
2019-03-12 18:13 PDT, Yusuke Suzuki
no flags
Patch (7.14 KB, patch)
2019-03-12 18:25 PDT, Yusuke Suzuki
no flags
Yusuke Suzuki
Comment 1 2019-03-12 18:13:19 PDT
EWS Watchlist
Comment 2 2019-03-12 18:14:21 PDT
Attachment 364490 [details] did not pass style-queue: ERROR: Source/JavaScriptCore/ChangeLog:14: Line contains tab character. [whitespace/tab] [5] ERROR: Source/JavaScriptCore/ChangeLog:15: Line contains tab character. [whitespace/tab] [5] ERROR: Source/JavaScriptCore/ChangeLog:16: Line contains tab character. [whitespace/tab] [5] Total errors found: 3 in 4 files If any of these errors are false positives, please file a bug against check-webkit-style.
Yusuke Suzuki
Comment 3 2019-03-12 18:25:57 PDT
Mark Lam
Comment 4 2019-03-12 18:38:54 PDT
Comment on attachment 364491 [details] Patch r=me
WebKit Commit Bot
Comment 5 2019-03-12 19:34:34 PDT
Comment on attachment 364491 [details] Patch Clearing flags on attachment: 364491 Committed r242841: <https://trac.webkit.org/changeset/242841>
WebKit Commit Bot
Comment 6 2019-03-12 19:34:35 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 7 2019-03-12 19:35:17 PDT
Mark Lam
Comment 8 2019-03-12 19:58:13 PDT
Saam Barati
Comment 9 2019-03-13 18:09:11 PDT
Comment on attachment 364491 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=364491&action=review > Source/JavaScriptCore/dfg/DFGOSREntry.cpp:228 > + if (!value) { how is this the right check?
Saam Barati
Comment 10 2019-03-13 18:11:05 PDT
Comment on attachment 364491 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=364491&action=review > Source/JavaScriptCore/dfg/DFGOSREntry.cpp:215 > + if (!entry->m_expectedValues.local(local).validate(value)) { > + if (Options::verboseOSR()) { > + dataLog( > + " OSR failed because variable ", VirtualRegister(localOffset), " is ", > + value, ", expected ", > + entry->m_expectedValues.local(local), ".\n"); > + } > + return 0; > + } Why are any below checks needed if this is done?
Yusuke Suzuki
Comment 11 2019-03-14 13:16:18 PDT
Comment on attachment 364491 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=364491&action=review >> Source/JavaScriptCore/dfg/DFGOSREntry.cpp:215 >> + } > > Why are any below checks needed if this is done? Yes, and I found that this patch is conservative for AnyInt and Double cases. I've created the follow-up patch. https://bugs.webkit.org/show_bug.cgi?id=195752 >> Source/JavaScriptCore/dfg/DFGOSREntry.cpp:228 >> + if (!value) { > > how is this the right check? Ooooops, fixed in the follow-up patch.
Note You need to log in before you can comment on or make changes to this bug.