<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - LLInt should support other types of prototype GetById caching."
href="https://bugs.webkit.org/show_bug.cgi?id=158083#c54">Comment # 54</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - LLInt should support other types of prototype GetById caching."
href="https://bugs.webkit.org/show_bug.cgi?id=158083">bug 158083</a>
from <span class="vcard"><a class="email" href="mailto:ticaiolima@gmail.com" title="Caio Lima <ticaiolima@gmail.com>"> <span class="fn">Caio Lima</span></a>
</span></b>
<pre>Hi Guys.
It is not the final patch (It is not ready yet and it is breaking).
I need some help from you. I am running my implementation of CustomAccessor prototype inline, however I think I am missing some important information.
I created a slowPath version to make debug easier and evaluate the performance gain without inlining it to assembly.
The problem that I am facing is because some customGetters are failing because the slot.slotBase() is not the correct parameter to them. In PropertySlot.cpp I found this code:
JSValue PropertySlot::customGetter(ExecState* exec, PropertyName propertyName) const
{
// FIXME: Remove this differences in custom values and custom accessors.
// <a class="bz_bug_link
bz_status_NEW "
title="NEW - [JSC][DOM] Always pass receiver and slotBase to custom (value/accessor) getter"
href="show_bug.cgi?id=158014">https://bugs.webkit.org/show_bug.cgi?id=158014</a>
JSValue thisValue = m_attributes & CustomAccessor ? m_thisValue : JSValue(slotBase());
return JSValue::decode(m_data.custom.getValue(exec, JSValue::encode(thisValue), propertyName));
}
The biggest problem I am facing is because m_thisValue.getObject() is not a valid pointer when called by the inlined version and I am not able to store EncodedJSValue to pc[6]. I spent yesterday night and today night trying to figure out what can I do.
Saam, about store the UniquedStringImpl into a pc slot, it is not possible because all slot are in use.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>