1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-16 23:15:07 +00:00
serenity/Userland/Libraries/LibJS/Heap
Andrew Kaster 6aba64b60f LibJS: Instrument HeapBlock cell allocation for ASAN
Mark the entirety of a heap block's storage poisoned at construction.
Unpoison all of a Cell's memory before allocating it, and re-poison as
much as possible on deallocation. Unfortunately, the entirety of the
FreelistEntry must be kept unpoisoned in order for reallocation to work
correctly.

Decreasing the size of FreelistEntry or adding a larger redzone to Cells
would make the instrumentation even better.
2021-05-29 17:47:29 +01:00
..
BlockAllocator.cpp LibJS: Poison unused heap blocks until they are re-allocated 2021-05-28 07:59:41 +02:00
BlockAllocator.h LibJS: Add inline capacity to BlockAllocator's blocks Vector 2021-05-28 00:07:24 +01:00
Cell.h LibJS: Make Cell::Visitor::visit_impl() take a Cell& 2021-05-25 18:39:01 +02:00
CellAllocator.cpp LibJS: Rename Allocator => CellAllocator 2021-05-27 19:56:12 +02:00
CellAllocator.h LibJS: Rename Allocator => CellAllocator 2021-05-27 19:56:12 +02:00
DeferGC.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Handle.cpp LibJS: Move Cell.{cpp,h} from Runtime/ to Heap/ 2021-05-17 19:53:00 +02:00
Handle.h AK: Rename adopt() to adopt_ref() 2021-04-23 16:46:57 +02:00
Heap.cpp LibJS: Expose minimum possible cell size of JS::Heap 2021-05-29 17:47:29 +01:00
Heap.h LibJS: Rename Allocator => CellAllocator 2021-05-27 19:56:12 +02:00
HeapBlock.cpp LibJS: Instrument HeapBlock cell allocation for ASAN 2021-05-29 17:47:29 +01:00
HeapBlock.h LibJS: Instrument HeapBlock cell allocation for ASAN 2021-05-29 17:47:29 +01:00