[webkit-reviews] review granted: [Bug 204536] Use LLInt profiling to rule out generating an IC for get_by_val : [Attachment 384216] patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Nov 22 17:49:40 PST 2019
Yusuke Suzuki <ysuzuki at apple.com> has granted Saam Barati <sbarati at apple.com>'s
request for review:
Bug 204536: Use LLInt profiling to rule out generating an IC for get_by_val
https://bugs.webkit.org/show_bug.cgi?id=204536
Attachment 384216: patch
https://bugs.webkit.org/attachment.cgi?id=384216&action=review
--- Comment #2 from Yusuke Suzuki <ysuzuki at apple.com> ---
Comment on attachment 384216
--> https://bugs.webkit.org/attachment.cgi?id=384216
patch
View in context: https://bugs.webkit.org/attachment.cgi?id=384216&action=review
r=me
> Source/JavaScriptCore/bytecode/BytecodeList.rb:537
> + seenIdentifiers: uint64_t, # Top 8 bits are the seen identifier
count. Lower 56 bits are a bloom filter of seen UniquedStringImpl*.
I recommend introducing a class like GetByValHistory etc. not to use uint64_t
directly.
> Source/JavaScriptCore/jit/JITPropertyAccess.cpp:97
> + if (m_fastGetByVals.contains(currentInstruction)) {
You can count # of slowcase jumps by using `iter` (see
JIT::linkAllSlowCasesForBytecodeIndex code, which iterates all slowcase jumps),
and we can omit this code generation when slowcase count is 0, instead of
tracking it by m_fastGetByVals.
More information about the webkit-reviews
mailing list