Reland "[PA] Refactor to use a typed SlotStart to replace uintptr_t" This reverts commit dff40e5d80fe0e2afd678288d6c7aebd33b0e80d. Reason for revert: Failure fixed; see the diff from PS1. Original change's description: > Revert "[PA] Refactor to use a typed SlotStart to replace uintptr_t" > > This reverts commit 2b12f09a50acd7d19a7cd07db00a10c00c1297c1. > > Reason for revert: the changed tests in SlotStartTest are failing for multiple bots (sample https://ci.chromium.org/ui/p/chrome/builders/ci/linux-chromeos-chrome and https://ci.chromium.org/ui/p/chromium/builders/ci/mac15-x64-rel-tests) > > Original change's description: > > [PA] Refactor to use a typed SlotStart to replace uintptr_t > > > > This CL refactors PartitionAlloc to use a new SlotStart type instead of > > raw `uintptr_t` to represent the start of a slot. This improves type > > safety and makes the code easier to understand and maintain. > > > > The new SlotStart class has two variants: SlotStart (tagged) and > > UntaggedSlotStart. It also provides Checked and Unchecked factory > > methods. The Checked variant performs a runtime check to ensure that the > > given address is indeed a slot start, which helps catch memory > > corruption bugs earlier. > > > > The following changes were made: > > - Introduced SlotStart, UntaggedSlotStart, and SlotSpanStart classes. > > - Replaced most usages of raw uintptr_t for slot starts with the new > > types. > > - Replaced PartitionRoot::ObjectToSlotStart and > > PartitionRoot::SlotStartToObject with `SlotStart::Checked` and > > `SlotStart::ToObject`. > > - Updated numerous call sites to use the new SlotStart API family. > > > > This change is a pure refactoring and should not have any functional > > impact. > > > > Cq-Include-Trybots: luci.chromium.try:android-mte-arm64-rel > > Change-Id: Ide9c8ff7dfd77d226ba806fa0f6f4a75f2e30ff9 > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7125918 > > Reviewed-by: Sergei Glazunov <glazunov@google.com> > > Reviewed-by: Takuto Ikuta <tikuta@chromium.org> > > Auto-Submit: Mikihito Matsuura <mikt@google.com> > > Commit-Queue: Sergei Glazunov <glazunov@google.com> > > Reviewed-by: Takashi Sakamoto <tasak@google.com> > > Cr-Commit-Position: refs/heads/main@{#1543027} > > Cq-Include-Trybots: luci.chromium.try:android-mte-arm64-rel > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Change-Id: I7e88b353ce7f1dfb37e82dcf2d77001f56693cce > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7141579 > Commit-Queue: Jood Hajeer <jood@google.com> > Reviewed-by: Ankush Singh <ankushkush@google.com> > Owners-Override: Jood Hajeer <jood@google.com> > Cr-Commit-Position: refs/heads/main@{#1543080} Change-Id: Ia725f5665d38018677b811164483c1df6196fb92 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7140801 Reviewed-by: Takuto Ikuta <tikuta@chromium.org> Reviewed-by: Sergei Glazunov <glazunov@google.com> Reviewed-by: Takashi Sakamoto <tasak@google.com> Commit-Queue: Takashi Sakamoto <tasak@google.com> Cr-Commit-Position: refs/heads/main@{#1544717} NOKEYCHECK=True GitOrigin-RevId: 47a14fbc9b59a0e847c7f941719c4d83cc61eaaa
diff --git a/clang_code_coverage_wrapper.py b/clang_code_coverage_wrapper.py index 9b94bcf..807b6ec 100755 --- a/clang_code_coverage_wrapper.py +++ b/clang_code_coverage_wrapper.py
@@ -217,6 +217,7 @@ '../../base/allocator/partition_allocator/src/partition_alloc/shim/malloc_zone_functions_apple_unittest.cc', #pylint: disable=line-too-long '../../base/allocator/partition_allocator/src/partition_alloc/shim/winheap_stubs_win.cc', #pylint: disable=line-too-long '../../base/allocator/partition_allocator/src/partition_alloc/shim/winheap_stubs_win_unittest.cc', #pylint: disable=line-too-long + '../../base/allocator/partition_allocator/src/partition_alloc/slot_start.cc', #pylint: disable=line-too-long '../../base/allocator/partition_allocator/src/partition_alloc/slot_start_unittest.cc', #pylint: disable=line-too-long '../../base/allocator/partition_allocator/src/partition_alloc/spinning_mutex.cc', #pylint: disable=line-too-long '../../base/allocator/partition_allocator/src/partition_alloc/stack/asm/arm64/push_registers_asm.cc', #pylint: disable=line-too-long