WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
147268
Avoid 2 times name iteration in Object.assign
https://bugs.webkit.org/show_bug.cgi?id=147268
Summary
Avoid 2 times name iteration in Object.assign
Yusuke Suzuki
Reported
2015-07-24 11:12:23 PDT
Object.assign calls Object.getOwnPropertyNames & Object.getOwnPropertySymbols to collect all the names. But exposing the private API that collects both at the same time makes the API efficient when the given Object has so many non-indexed properties. Since Object.assign is so generic API (some form of utility API), the form of the given Object is not expected. This is why I think this optimization is required.
Attachments
Patch
(11.96 KB, patch)
2015-07-24 13:00 PDT
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Yusuke Suzuki
Comment 1
2015-07-24 13:00:44 PDT
Created
attachment 257471
[details]
Patch
Geoffrey Garen
Comment 2
2015-07-24 13:10:21 PDT
Comment on
attachment 257471
[details]
Patch r=me It seems like we might want to add caching for these property name lists. We have caching for enumerable property names, but not for these other varieties.
Yusuke Suzuki
Comment 3
2015-07-24 13:57:29 PDT
Comment on
attachment 257471
[details]
Patch Thank you for your review. Your thought is right. (And actually, many `// FIXME: Use the enumeration cache.` exist in ObjectConstructor.cpp) We need to extend the existing caching system to use it in these enumeration APIs.
WebKit Commit Bot
Comment 4
2015-07-24 14:46:43 PDT
Comment on
attachment 257471
[details]
Patch Clearing flags on attachment: 257471 Committed
r187363
: <
http://trac.webkit.org/changeset/187363
>
WebKit Commit Bot
Comment 5
2015-07-24 14:46:47 PDT
All reviewed patches have been landed. Closing bug.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug