ladybird/Libraries/LibJS/Heap
Andreas Kling 1745e503aa LibJS: Use a HashTable to identify potential cell pointers in GC scan
Previously we would iterate over all the live HeapBlocks in order to
learn if an arbitrary pointer-sized value was a pointer into a live
HeapBlock. This was quite time-consuming.

Instead of that, just put all the live HeapBlock*'s in a HashTable
and identify pointers by doing a bit-masked lookup into the table.
2020-11-10 20:28:53 +01:00
..
Allocator.cpp LibJS: Use IntrusiveList for Allocator's block lists 2020-10-07 14:07:31 +02:00
Allocator.h LibJS: Use IntrusiveList for Allocator's block lists 2020-10-07 14:07:31 +02:00
DeferGC.h
Handle.cpp
Handle.h Meta+LibHTTP through LibWeb: Make clang-format-10 clean 2020-09-25 21:18:17 +02:00
Heap.cpp LibJS: Use a HashTable to identify potential cell pointers in GC scan 2020-11-10 20:28:53 +01:00
Heap.h LibJS: Use a HashTable to identify potential cell pointers in GC scan 2020-11-10 20:28:53 +01:00
HeapBlock.cpp LibJS: Always inline HeapBlock::allocate() 2020-10-04 19:25:49 +02:00
HeapBlock.h LibJS: Use IntrusiveList for Allocator's block lists 2020-10-07 14:07:31 +02:00