[Webkit-unassigned] [Bug 162124] Unite op_get_by_id_with_this with op_get_by_id

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Sep 20 11:34:46 PDT 2016


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

--- Comment #13 from Geoffrey Garen <ggaren at apple.com> ---
Comment on attachment 289377
  --> https://bugs.webkit.org/attachment.cgi?id=289377
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=289377&action=review

> Source/JavaScriptCore/ChangeLog:11
> +        This patch is merging the op_get_by_id_with_this with op_get_by_id and
> +        this way we enable get_by_id optimizations such as Monomorphic/Polymorphic Inline
> +        Cache on JIT layers for super member access. These optimizations is improving access
> +        of super members in ~20%.

Fully unoptimized property access is 10X slower than fully optimized property access. Therefore, it's surprising that this patch is not a bigger win on super-get-by-id-with-this-monomorphic. It looks like super-get-by-id-with-this-monomorphic is a getter/setter benchmark. Can you verify that the FTL successfully inlines the getter and setter for value()? Perhaps the win on this benchmark is not bigger because the benchmark includes an intermediate "calc" function, which is pretty expensive. Can you report the speedup on this benchmark if you remove the call to calc?

> Source/JavaScriptCore/bytecode/PolymorphicAccess.cpp:1096
> -            GPRReg baseForCustomValue = m_type == CustomValueGetter || m_type == CustomValueSetter ? baseForAccessGPR : baseForGetGPR;
> +            GPRReg baseForCustomValue = m_type == CustomValueGetter || m_type == CustomValueSetter ? baseForAccessGPR : baseForCustomGetGPR;

Isn't the answer always thisGPR? Under what conditions do I want to invoke a getter or setter without the specified this?

-- 
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/20160920/574f13a5/attachment.html>


More information about the webkit-unassigned mailing list