[PATCH] D50330: [RFC] Implement out-of-process allocator enumeration for macOS

Kuba (Brecka) Mracek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 20 19:45:58 PDT 2018


kubamracek added a comment.

In https://reviews.llvm.org/D50330#1206984, @kcc wrote:

> Also, just for my education, why would someone need to use `heap`, `vmmap`, or `leaks` on an asan-ified process?


This is all about preserving existing workflows and features that iOS/macOS developers rely on. I know that ASan has alternatives for some of these tools, but we can't just teach all existing developers to use a completely different toolset when using ASan. One example: The 'heap' tool and Xcode's Memory Graph Debugger are rich tools for analysing your heap and whether you're running with ASan or not doesn't matter from the user's perspective -- they expect these tools to work. I'm not worried about things like fragmentation, which as you said can vary greatly, but most information isn't going to be different under ASan: per-size allocation histogram, pointer reference cycles, number of allocations of certain size, per object class breakdown of allocations, for strings the tools can preview content, etc. All of this is already built into 'heap', 'leaks' and the Memory Graph Debugger and these things can't realistically be re-implemented into ASan/LSan. The idea of adding compatibility into the sanitizer allocator sounds much simpler in comparison.


Repository:
  rCRT Compiler Runtime

https://reviews.llvm.org/D50330





More information about the llvm-commits mailing list