In the past 'throw' statements have caused a deopt for the enclosing function in v8 and spidermonkey. I think they still do in some scenarios. I would assume that if a statement is able to throw the enclosing function must have unwind logic and it could potentially suppress inlining as well depending on how smart the VM is?
On 25 February 2015 at 17:49, Mark S. Miller <[email protected]> wrote: > Again, I don't understand this. Why would it make the normal case more > expensive. The underlying detachment test must be there regardless, and the > only difference in behavior is what happens after that test fails. > > On Wed, Feb 25, 2015 at 5:05 PM, Jeff Walden <[email protected]> wrote: >> >> And expanding scope slightly: IntegerIndexedElementGet -- get -- throws a >> TypeError if the relevant typed array is detached, rather than just >> returning |undefined| as the computed value. I understand there are also >> significant complaints about this, for similar reasons. >> >> Jeff >> _______________________________________________ >> es-discuss mailing list >> [email protected] >> https://mail.mozilla.org/listinfo/es-discuss > > > > > -- > Cheers, > --MarkM > > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss > _______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

