https://chromium.googlesource.com/v8/v8/+/2966c8967a731d4c4e01e253c2e48b3906ea5844commit 2966c8967a731d4c4e01e253c2e48b3906ea5844
Author: pthier <
pth...@chromium.org>
Date: Tue Mar 09 11:18:52 2021
Reland "[sparkplug] Change bytecode offset mapping and introduce iterator."
This is a reland of a8b61ef521c51e0d1d84ed744e893273ed5d516c
The main reason for the revert was not related to this CL and was fixed
with
https://crrev.com/c/2739646In addition debug output in d8.test.verifySourcePositions was removed
due to TSAN complaints.
Original change's description:
> [sparkplug] Change bytecode offset mapping and introduce iterator.
>
> Previously, we recorded pairs of (bytecode offset, sparkplug pc) to
> create a mapping of bytecode offset <-> sparkplug pc.
> These pairs were only recorded after builtin/runtime calls.
> In preparation for deoptimizing to Sparkplug, we need a more precise
> mapping.
> With this CL, we record positions for every bytecode. Instead of storing
> a pair of (bytecode offset, sparkplug pc), we store only the pc,
> calculating the bytecode offset from the index in the mapping table.
> For easier use an iterator to access the mapping is introduced.
>
> Drive-by: Reduce sampling interval in cpu-profiler cctest to get rid of
flaky failures.