Commit e0b5a83f authored by Samuel Groß's avatar Samuel Groß Committed by V8 LUCI CQ

[sandbox] Switch to 8-bit external pointer type tags

Due to top-byte ignore (TBI) in Arm64, only bits [48, 56) can be used
for type tags as otherwise type-check failures may go unnoticed if they
only leave bits in the top byte set. This CL therefore switches the
external pointer tagging scheme to use 8-bit tags.

Bug: v8:10391
Change-Id: Ia1f379ebc1bbda4117785d2dc119bc8dfa358711
Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3776688
Commit-Queue: Samuel Groß <saelo@chromium.org>
Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81913}
parent a2b0b3d9
This diff is collapsed.
......@@ -123,8 +123,6 @@ class V8_EXPORT_PRIVATE ExternalPointerTable {
static const size_t kBlockSize = 64 * KB;
static const size_t kEntriesPerBlock = kBlockSize / kSystemPointerSize;
static const Address kExternalPointerMarkBit = 1ULL << 63;
// When the table is swept, it first sets the freelist head to this special
// value to better catch any violation of the "don't-alloc-while-sweeping"
// requirement (see Sweep()). This value is chosen so it points to the last
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment