Files
ladybird/Libraries/LibWeb/HTML
Andreas Kling b5babda288 LibWeb: Cache UniversalGlobalScopeMixin pointer on ESO
Avoid expensive cross-hierarchy dynamic_cast from JS::Object to
UniversalGlobalScopeMixin on every microtask checkpoint.

Since UniversalGlobalScopeMixin is not in the JS::Object
inheritance chain, as<UniversalGlobalScopeMixin>(JS::Object&)
falls through to dynamic_cast, which is very costly. Profiling
showed this taking ~14% of total CPU time.

Add EnvironmentSettingsObject::universal_global_scope() backed
by a pointer cached eagerly during initialization.
2026-03-24 08:28:47 +01:00
..
2025-08-23 16:04:36 -06:00
2026-01-11 00:01:24 +01:00
2026-01-11 00:01:24 +01:00
2024-11-25 21:13:53 +01:00
2026-02-18 08:02:45 -05:00
2026-02-18 08:02:45 -05:00
2026-02-11 16:32:20 +00:00
2026-02-11 16:32:20 +00:00
2025-08-08 10:23:17 +02:00