1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 02:37:42 +00:00
serenity/Userland/Libraries/LibWeb
Andreas Kling bfd354492e LibWeb: Put most LibWeb GC objects in type-specific heap blocks
With this change, we now have ~1200 CellAllocators across both LibJS and
LibWeb in a normal WebContent instance.

This gives us a minimum heap size of 4.7 MiB in the scenario where we
only have one cell allocated per type. Of course, in practice there will
be many more of each type, so the effective overhead is quite a bit
smaller than that in practice.

I left a few types unconverted to this mechanism because I got tired of
doing this. :^)
2023-11-19 22:00:48 +01:00
..
Animations LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
ARIA LibWeb: Port Element interface from DeprecatedString 2023-10-06 08:25:40 +02:00
Bindings LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
Clipboard LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
Cookie LibWeb: Make Document::set_cookie take a StringView 2023-09-13 07:26:35 +02:00
Crypto LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
CSS LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
DOM LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
DOMParsing LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
Encoding LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
Fetch LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
FileAPI LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
Geometry LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
HighResolutionTime LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
HTML LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
Infra LibJS: Make PrimitiveString::utf8_string() infallible 2023-08-09 17:09:16 +02:00
Internals LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
IntersectionObserver LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
Layout LibWeb: Do not compensate padding for abspos boxes with static position 2023-11-15 23:44:05 +01:00
Loader LibWeb: Remove unused ResourceLoader::load(URL) overload 2023-11-15 12:56:33 +01:00
MathML LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
MimeSniff LibWeb: Have MimeType::create() match its foward declaration 2023-11-14 10:14:09 +01:00
NavigationTiming LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
Page LibWeb: Remove navigate() in EventHandler::handle_mouseup() 2023-11-18 15:27:10 +01:00
Painting LibWeb: Don't encode painting limitations in RecordingPainter API 2023-11-18 19:32:31 +01:00
PerformanceTimeline LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
PermissionsPolicy LibWeb+LibWebView+WebContent: Add APIs to manage an autoplay allowlist 2023-04-18 16:30:02 +02:00
Platform LibWeb: Output audio in stereo regardless of the encoded channel count 2023-11-12 07:57:03 +01:00
ReferrerPolicy AK: Port URL username/password from DeprecatedString to String 2023-08-13 15:03:53 -06:00
RequestIdleCallback LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
ResizeObserver LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
SecureContexts AK: Serialize URL hosts with 'concept-host-serializer' 2023-07-31 05:18:51 +02:00
Selection LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
SRI LibWeb: Implement integrity-metadata part of fetch algorithm 2023-04-21 20:44:47 +01:00
Streams LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
SVG LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
UIEvents LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
URL LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
UserTiming LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
WebAssembly LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
WebAudio LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
WebDriver Everywhere: Work around Clang trunk bug with templated lambda + Variant 2023-11-05 13:41:13 -07:00
WebGL LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
WebIDL LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
WebSockets LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
Worker LibWeb+WebWorker: Move worker execution into a new WebWorker process 2023-11-15 12:56:33 +01:00
XHR LibWeb: Put most LibWeb GC objects in type-specific heap blocks 2023-11-19 22:00:48 +01:00
XLink LibWeb: Add Web::XLink::AttributeNames 2023-11-05 11:16:16 +00:00
XML LibWeb: Port Element::set_attribute_value from DeprecatedString 2023-11-06 11:37:08 +01:00
CMakeLists.txt LibWeb+WebWorker: Move worker execution into a new WebWorker process 2023-11-15 12:56:33 +01:00
Dump.cpp AK+Everywhere: Remove the null state of DeprecatedString 2023-10-13 18:33:21 +03:30
Dump.h LibWeb+WebContent: Add option to dump session history of a traversable 2023-09-16 16:53:32 +02:00
FontCache.cpp LibWeb: Remove some unused DeprecatedFlyString includes 2023-10-08 08:11:48 -04:00
FontCache.h AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
Forward.h LibWeb: Add ReadIntoRequest to forwarding header 2023-11-19 18:53:17 +01:00
idl_files.cmake LibWeb: Add KeyframeEffect IDL objects 2023-11-14 10:12:02 +01:00
Namespace.cpp LibWeb: Make Web::Namespace::Foo strings be FlyString 2023-11-04 21:28:30 +01:00
Namespace.h LibWeb: Make Web::Namespace::Foo strings be FlyString 2023-11-04 21:28:30 +01:00
PixelUnits.cpp LibWeb: Inline and constexpr most PixelUnits methods 2023-08-05 20:03:09 +02:00
PixelUnits.h AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
TreeNode.h LibWeb: Remove all the unused functions from TreeNode 2023-08-20 05:02:59 +02:00