[PATCH] D60243: [LSan][AArch64] Speed-up leak and address sanitizers on AArch64 for 47-bit VMA
Sebastian Pop via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri May 10 08:25:42 PDT 2019
sebpop marked 3 inline comments as done.
sebpop added inline comments.
================
Comment at: compiler-rt/lib/lsan/lsan_allocator.h:75
+ typedef DefaultSizeClassMap SizeClassMap;
+ typedef NoOpMapUnmapCallback MapUnmapCallback;
+ static const uptr kFlags = 0;
----------------
Both `AP64` and `AP32` typedef `MapUnmapCallback` to be the same type: `NoOpMapUnmapCallback`.
================
Comment at: compiler-rt/lib/lsan/lsan_allocator.h:137
+ using AddressSpaceView = Allocator32::AddressSpaceView;
+ using AllocatorCache = DoubleAllocatorCache;
+
----------------
brzycki wrote:
> Is this correct? This is part of what I was commenting on in my previous patch. We're always using the 32-bit versions of `MapUnmapCallback` and `AddressSpaceView` even if we switch at run-time to the 64-bit allocator. @vitalybuka would know better than I if this is guaranteed to be the same across 32/64 on the same arch or not.
See my comment above for `MapUnmapCallback` and the comment below for `AddressSpaceView`.
================
Comment at: compiler-rt/lib/lsan/lsan_allocator.h:215
+using PrimaryAllocatorASVT = DoubleAllocator<Allocator32ASVT<AddressSpaceView>,
+ Allocator64ASVT<AddressSpaceView>>;
+using PrimaryAllocator = PrimaryAllocatorASVT<LocalAddressSpaceView>;
----------------
Both Allocator32ASVT and Allocator64ASVT are instantiated with the same AddressSpaceView, so
Allocator32::AddressSpaceView == Allocator64::AddressSpaceView.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D60243/new/
https://reviews.llvm.org/D60243
More information about the llvm-commits
mailing list