[Webkit-unassigned] [Bug 147480] New: Introduce get_by_id like IC into get_by_val when the given name is Symbol

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jul 30 19:25:36 PDT 2015


https://bugs.webkit.org/show_bug.cgi?id=147480

            Bug ID: 147480
           Summary: Introduce get_by_id like IC into get_by_val when the
                    given name is Symbol
    Classification: Unclassified
           Product: WebKit
           Version: 528+ (Nightly build)
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: utatane.tea at gmail.com

Current get_by_val only considers the indexed keys, it profiles ArrayMode (or checks whether the base is String), and generates vector access code in baseline JIT.
And this profiled array mode information is leveraged in DFG layer to produce the faster code.

But after ES6 symbols are used, this IC miss the optimization chance since users will use the indexed access form `object[symbol]` with non-indexed (symbol) value.

Code generated by the IC will become the following,

if (subscript != seenSymbol)
    bailout;
... normal load by IC code (checking Structures and load the value with the offset)

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20150731/3110b366/attachment-0001.html>


More information about the webkit-unassigned mailing list