RESOLVED FIXED 224578
[JSC] DFG / FTL should inline switch_string
https://bugs.webkit.org/show_bug.cgi?id=224578
Summary [JSC] DFG / FTL should inline switch_string
Yusuke Suzuki
Reported 2021-04-14 14:48:01 PDT
After r275840, we no longer copy string table in CodeBlock! (mainly for memory saving). This unlocks ability to inline op_switch_string in DFG / FTL.
Attachments
Patch (35.98 KB, patch)
2021-04-21 22:43 PDT, Yusuke Suzuki
mark.lam: review+
Radar WebKit Bug Importer
Comment 1 2021-04-21 14:48:16 PDT
Yusuke Suzuki
Comment 2 2021-04-21 22:43:54 PDT
Mark Lam
Comment 3 2021-04-22 00:10:10 PDT
Comment on attachment 426776 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=426776&action=review r=me > Source/JavaScriptCore/ChangeLog:10 > + This allows DFG / FTL to inline CodeBlock which includes op_switch_string. We were not able I suggest "were previously not able". > Source/JavaScriptCore/ChangeLog:13 > + 1. We handle StringJumpTable / UnlinkedStringJumpTable in the same way to SimpleJumpTable / UnlinkedSimpleJumpTable. /same way to/same way as/. > Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:16748 > LValue branchOffset = vmCall( Can you rename this node to `branchIndex` to match `operationSwitchStringAndGetIndex`?
Yusuke Suzuki
Comment 4 2021-04-22 00:12:46 PDT
Comment on attachment 426776 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=426776&action=review >> Source/JavaScriptCore/ChangeLog:10 >> + This allows DFG / FTL to inline CodeBlock which includes op_switch_string. We were not able > > I suggest "were previously not able". Fixed. >> Source/JavaScriptCore/ChangeLog:13 >> + 1. We handle StringJumpTable / UnlinkedStringJumpTable in the same way to SimpleJumpTable / UnlinkedSimpleJumpTable. > > /same way to/same way as/. Fixed. >> Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:16748 >> LValue branchOffset = vmCall( > > Can you rename this node to `branchIndex` to match `operationSwitchStringAndGetIndex`? Oops, fixed.
Yusuke Suzuki
Comment 5 2021-04-22 01:27:53 PDT
Note You need to log in before you can comment on or make changes to this bug.