[PATCH] D60243: [LSan][AArch64] Speed-up leak and address sanitizers on AArch64 for 48-bit VMA

Vitaly Buka via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 20 10:45:59 PDT 2019


vitalybuka added a comment.

Almost LGTM



================
Comment at: compiler-rt/lib/asan/asan_allocator.h:164
+static const uptr kMaxNumberOfSizeClasses =
+    SizeClassMap32::kNumClasses < SizeClassMap64::kNumClasses
+        ? SizeClassMap64::kNumClasses
----------------
Max(SizeClassMap32::kNumClasses, SizeClassMap64::kNumClasses) ?


================
Comment at: compiler-rt/lib/asan/asan_stats.cc:35
   Printf("%s", prefix);
-  for (uptr i = 0; i < kNumberOfSizeClasses; i++) {
+  for (uptr i = 0; i < kMaxNumberOfSizeClasses; i++) {
     if (!array[i]) continue;
----------------
I thing we should print only relevant part of array
```
static void PrintMallocStatsArray(const char *prefix,
                                  uptr *array, uptr size) {
  Printf("%s", prefix);
  for (uptr i = 0; i < size; i++) {
...

PrintMallocStatsArray("  mallocs by size class: ", malloced_by_size, get_allocator().KMaxSize());

```


================
Comment at: compiler-rt/lib/sanitizer_common/sanitizer_double_allocator.h:1
+//===-- sanitizer_double_allocator.h ----------------------------*- C++ -*-===//
+//
----------------
any idea for better name?


================
Comment at: compiler-rt/lib/sanitizer_common/sanitizer_double_allocator.h:17
+template <class first_, class second_>
+class DoubleAllocator {
+  first_ a1;
----------------
``
template <class Allocator1, class Allocator2>
class DoubleAllocator {
  Allocator1 a1_;
  Allocator2 a2_;
``


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D60243/new/

https://reviews.llvm.org/D60243





More information about the llvm-commits mailing list