Bug 234538 - [WebIDL] Eagerly allocate element wrappers onto a butterfly storage of a static NodeList
Summary: [WebIDL] Eagerly allocate element wrappers onto a butterfly storage of a stat...
Status: REOPENED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Bindings (show other bugs)
Version: WebKit Nightly Build
Hardware: All All
: P2 Normal
Assignee: Alexey Shvayka
URL:
Keywords: InRadar
Depends on: 218849 244444 245151
Blocks:
  Show dependency treegraph
 
Reported: 2021-12-20 17:38 PST by Alexey Shvayka
Modified: 2022-10-15 15:58 PDT (History)
13 users (show)

See Also:


Attachments
WIP (13.44 KB, patch)
2022-01-06 11:53 PST, Alexey Shvayka
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Shvayka 2021-12-20 17:38:50 PST
Preliminary microbenchmark results suggest 65% speed-up if a static NodeList is iterated at least once.
Comment 1 Radar WebKit Bug Importer 2021-12-27 17:39:27 PST
<rdar://problem/86946513>
Comment 2 Alexey Shvayka 2022-01-06 11:53:01 PST
Created attachment 448520 [details]
WIP
Comment 3 Geoffrey Garen 2022-01-06 12:23:13 PST
Comment on attachment 448520 [details]
WIP

View in context: https://bugs.webkit.org/attachment.cgi?id=448520&action=review

> Source/JavaScriptCore/runtime/JSTypeInfo.h:113
> +    bool getOwnPropertySlotByIndexIsWrongAboutReadOnly() const { return isSetOnFlags2<GetOwnPropertySlotByIndexIsWrongAboutReadOnly>(); }

I'd suggest a name that describes what is true rather than what is false. Maybe something like "IndexedPropertiesAreReadOnly" or "PutByIndexOverrideWillProhibitWrites" or something like that.
Comment 4 Alexey Shvayka 2022-08-01 13:34:33 PDT
Pull request: https://github.com/WebKit/WebKit/pull/2915
Comment 5 EWS 2022-08-26 12:53:50 PDT
Committed 253834@main (e0c79898e6c5): <https://commits.webkit.org/253834@main>

Reviewed commits have been landed. Closing PR #2915 and removing active labels.
Comment 6 WebKit Commit Bot 2022-08-27 22:15:56 PDT
Re-opened since this is blocked by bug 244444
Comment 7 Alexey Shvayka 2022-08-29 15:30:56 PDT
Pull request: https://github.com/WebKit/WebKit/pull/3786
Comment 8 EWS 2022-08-30 08:41:34 PDT
Committed 253946@main (9d5bc2bbab71): <https://commits.webkit.org/253946@main>

Reviewed commits have been landed. Closing PR #3786 and removing active labels.
Comment 9 Alexey Shvayka 2022-08-31 19:26:45 PDT
Re-opening for pull request https://github.com/WebKit/WebKit/pull/3902
Comment 10 EWS 2022-09-01 03:05:34 PDT
Committed 254036@main (de4790b17831): <https://commits.webkit.org/254036@main>

Reviewed commits have been landed. Closing PR #3902 and removing active labels.
Comment 11 WebKit Commit Bot 2022-09-13 10:56:04 PDT
Re-opened since this is blocked by bug 245151
Comment 12 Darin Adler 2022-10-15 15:58:32 PDT
Before re-landing this check to make sure we don’t reintroduce bug 244900.