v8/test/unittests
Nikolaos Papaspyrou 36610bbdd7 heap: Recalculate the object start bitmap if needed
This CL adds to the existing experimental implementation of the
object start bitmap, that is evaluated as a mechanism for resolving
inner pointers (behind the flag v8_enable_conservative_stack_scanning).

It fixes method ObjectStartBitmap::FindBasePtr to ensure that the
correct base pointer is returned, even if the bitmap is not fully
populated (e.g., with object evacuation or inline object allocation).
This method now recalculates the part of the bitmap that is
required for returning the correct result, by iterating through
objects of the page. A special constructor has been introduced to the
PagedSpaceObjectIterator for this purpose.

It also moves the existing inline methods of ObjectStartBitmap to a
new -inl.h header file, to avoid circular dependencies.

Bug: v8:12851
Change-Id: Iabd0df020bee3bb63ef9d4888591b25d24d79dd9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3641179
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org>
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#80538}
2022-05-16 08:48:56 +00:00
..
api [api] Adds script column number to code-creation events in CodeEventLogger 2022-05-09 14:29:24 +00:00
asmjs [Respect] Prefer inclusive terms 2020-06-22 18:11:23 +00:00
assembler Reland "[rwx][mac] Introduce RwxMemoryWriteScope" 2022-04-19 08:48:47 +00:00
base Fix MSVC compilation of FormattedStringTest 2022-05-13 17:46:23 +00:00
codegen [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
compiler Remove "volatile" on arguments where deprecated in C++20. 2022-05-09 14:15:44 +00:00
compiler-dispatcher [test] Add a unittest platform setup mixin 2022-04-06 13:07:43 +00:00
date [test] Move cctest/test-date to unittests 2022-04-26 08:14:32 +00:00
debug [inspector] Speed up DebugPropertyIterator. 2021-09-13 12:52:11 +00:00
diagnostics [gdbjit] Fix overlapping AddressRegion check 2021-08-19 17:29:57 +00:00
execution [test] Add a unittest platform setup mixin 2022-04-06 13:07:43 +00:00
heap heap: Recalculate the object start bitmap if needed 2022-05-16 08:48:56 +00:00
interpreter [osr] Add JumpLoop feedback slot operand 2022-04-20 12:57:44 +00:00
libplatform [sandbox] Turn V8_SANDBOX into V8_ENABLE_SANDBOX 2022-05-13 16:23:23 +00:00
logging [log] Use v8_file_logger variable names more consistently 2022-05-09 13:58:24 +00:00
numbers [test] Move cctest/test-conversions to unittests 2022-04-26 08:17:34 +00:00
objects Replace STATIC_ASSERT with static_assert 2022-05-13 13:46:27 +00:00
parser [cleanup] Remove DISALLOW_COPY_AND_ASSIGN in test/{common,unittests} 2020-11-06 06:07:54 +00:00
profiler [test] Move cctest/test-circular-queue to unittests 2022-04-25 14:49:26 +00:00
regexp Reland "[test] Move cctest/test-regexp to unittests" 2022-04-29 16:23:32 +00:00
regress [heap] Remove Factory::NewUninitializedFixedArray 2021-04-26 13:52:38 +00:00
runtime Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
sandbox [sandbox] Turn V8_SANDBOX into V8_ENABLE_SANDBOX 2022-05-13 16:23:23 +00:00
strings [base] Move utils/vector.h to base/vector.h 2021-06-18 13:33:13 +00:00
tasks [test] Add a unittest platform setup mixin 2022-04-06 13:07:43 +00:00
torque Reland "Reland "[Torque] Generalize Torque literals to larger size"" 2022-02-04 09:40:24 +00:00
utils [test] Move cctest/test-bit-vector to unittests 2022-04-21 15:27:09 +00:00
wasm Replace STATIC_ASSERT with static_assert 2022-05-13 13:46:27 +00:00
zone [test] Add a unittest platform setup mixin 2022-04-06 13:07:43 +00:00
avoid-windows-h-includes.cc Test that heap-inl.h doesn't include windows.h 2021-10-14 21:18:51 +00:00
BUILD.gn [base] Introduce FormattedString 2022-05-13 16:20:43 +00:00
DEPS Move unit tests to test/unittests. 2014-10-01 08:34:25 +00:00
run-all-unittests.cc [test] Add a unittest platform setup mixin 2022-04-06 13:07:43 +00:00
test-helpers.cc [compiler-dispatcher] Move Job pointer to SFI 2021-12-08 16:03:35 +00:00
test-helpers.h [compiler] Introduce ReusableUnoptimizedCompileState 2021-12-08 11:14:27 +00:00
test-utils.cc heap: Convert embedder tracing tests to unittests 2022-04-08 12:43:55 +00:00
test-utils.h [sandbox] Turn V8_SANDBOX into V8_ENABLE_SANDBOX 2022-05-13 16:23:23 +00:00
testcfg.py [test] Clean up Py2 code 2022-03-17 09:12:36 +00:00
unittests.status [test] Move cctest/test-log to unittests/logging/log-unittest 2022-05-09 12:31:45 +00:00