Summary: | REGRESSION(215272): microbenchmark/seal-and-do-work and microbenchmark/freeze-and-do-work are 27x slower | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Caio Lima <ticaiolima> | ||||
Component: | JavaScriptCore | Assignee: | Michael Saboff <msaboff> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | fpizlo, gskachkov, keith_miller, mark.lam, msaboff, saam, webkit-bug-importer, ysuzuki | ||||
Priority: | P2 | Keywords: | InRadar | ||||
Version: | WebKit Nightly Build | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Attachments: |
|
Description
Caio Lima
2017-04-15 21:08:47 PDT
This is like change set r215272 <https://trac.webkit.org/changeset/215272>. I'll take a look at it. Created attachment 307319 [details]
Patch
Comment on attachment 307319 [details]
Patch
r=me
Comment on attachment 307319 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=307319&action=review > Source/JavaScriptCore/runtime/ObjectConstructor.cpp:614 > + if (isJSFinalObject(object) && !hasIndexedProperties(object->indexingType())) { > + object->seal(vm); > + return JSValue::encode(obj); > + } In r215272 <https://trac.webkit.org/changeset/215272>, you also eliminated the fast paths for objectConstructorIsSealed() and objectConstructorIsFrozen(). Should those be restored as well with the additional !hasIndexedProperties() check? (In reply to Mark Lam from comment #5) > Comment on attachment 307319 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=307319&action=review > > > Source/JavaScriptCore/runtime/ObjectConstructor.cpp:614 > > + if (isJSFinalObject(object) && !hasIndexedProperties(object->indexingType())) { > > + object->seal(vm); > > + return JSValue::encode(obj); > > + } > > In r215272 <https://trac.webkit.org/changeset/215272>, you also eliminated > the fast paths for objectConstructorIsSealed() and > objectConstructorIsFrozen(). Should those be restored as well with the > additional !hasIndexedProperties() check? Yes. I added those checks back in. Committed r215471: <http://trac.webkit.org/changeset/215471> |