On Tue, Dec 22, 2015 at 5:11 AM, Luke Wagner <lwag...@mozilla.com> wrote:

> I think there was also a performance reason: IIUC, the non-zero-cost
> exception handling strategy is baked into the Win32 ABI
> (https://www.microsoft.com/msj/0197/exception/exception.aspx) and thus
> enabling EH has a runtime cost for frames containing auto objects with
> destructors (which in modern SM is very common).  I vaguely remember
> seeing a platform email thread about using EH a while back (>6 years)
> that measured the then-overhead in Gecko to be ~10%; I can't find the
> thread now.  I talked to an engineer who worked on EH optimizations in
> MSVC and he said that there have been some 32-bit EH optimizations
> more recently but there is still runtime cost to having auto objects
> with destructors, so probably this is worth measuring again.  Assuming
> we're able to move a large percentage of FF users to Win64 builds over
> the next year, then it seems like we'd care about this even less.
>

As I recall, there was a significant performance hit just enabling RTTI,
which is a prerequisite for exception handling. I think it was a space
problem. Mike Hommey would know more.

Rob
-- 
lbir ye,ea yer.tnietoehr  rdn rdsme,anea lurpr  edna e hnysnenh hhe uresyf
toD
selthor  stor  edna  siewaoeodm  or v sstvr  esBa  kbvted,t
rdsme,aoreseoouoto
o l euetiuruewFa  kbn e hnystoivateweh uresyf tulsa rehr  rdm  or rnea
lurpr
.a war hsrer holsa rodvted,t  nenh hneireseoouot.tniesiewaoeivatewt sstvr
esn
_______________________________________________
dev-tech-js-engine-internals mailing list
dev-tech-js-engine-internals@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-tech-js-engine-internals

Reply via email to