(2014/03/29 12:27), Boris Zbarsky wrote:
On 3/28/14 6:42 PM, Neil wrote:
Boris Zbarsky wrote:
But "slow" here is a relative term.  Last I measured, something like a
basic property get in Ion code went from 2-3 instructions to 20-30
instructions when we deoptimize.
...

What about calls from xpconnect (the original object was a component
exposed as a chrome javascript global property)?

Calls from JS into C++ via XPConnect (so XPCWrappedNative and company)
take about 1500-3000 instructions last I measured.  Calls from C++ into
JS (via XPCWrappedJS) are in the 300-500 instruction range last I measured.

If you're going through XPConnect, then property access deoptimizations
due to [[Prototype]] sets are the least of your performance problems.

-Boris


I posted the original question.

It seems there are a few approaches, but given the information above,
they don't really make a difference, will they.

I will be monitoring Bug 939072, and Bug 984146 and
if some consensus emerges, try to reflect that into
TB C-C source code.

To be honest, I have no idea what kind of slow down is experienced (well not that there is a version without this "slow down" for easy comparison).

TIA




_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to