llvm-project/llvm/test/Instrumentation
Teresa Johnson 7ed8124d46 [HeapProf] Clang and LLVM support for heap profiling instrumentation
See RFC for background:
http://lists.llvm.org/pipermail/llvm-dev/2020-June/142744.html

Note that the runtime changes will be sent separately (hopefully this
week, need to add some tests).

This patch includes the LLVM pass to instrument memory accesses with
either inline sequences to increment the access count in the shadow
location, or alternatively to call into the runtime. It also changes
calls to memset/memcpy/memmove to the equivalent runtime version.
The pass is modeled on the address sanitizer pass.

The clang changes add the driver option to invoke the new pass, and to
link with the upcoming heap profiling runtime libraries.

Currently there is no attempt to optimize the instrumentation, e.g. to
aggregate updates to the same memory allocation. That will be
implemented as follow on work.

Differential Revision: https://reviews.llvm.org/D85948
2020-08-27 08:50:35 -07:00
..
AddressSanitizer IR: Define byref parameter attribute 2020-07-20 10:23:09 -04:00
BoundsChecking [local-bounds] Ignore volatile operations 2020-05-05 23:08:08 -07:00
DataFlowSanitizer [DFSan] Add efficient fast16labels instrumentation mode. 2020-07-29 18:58:47 +00:00
HWAddressSanitizer hwasan: Emit the globals note even when globals are uninstrumented. 2020-08-13 16:33:22 -07:00
HeapProfiler [HeapProf] Clang and LLVM support for heap profiling instrumentation 2020-08-27 08:50:35 -07:00
InstrOrderFile Add a module pass for order file instrumentation 2019-02-28 20:13:38 +00:00
InstrProfiling [PGO] Use multiple comdat groups for COFF 2020-08-03 21:33:16 -07:00
MemorySanitizer [MSAN] Avoid dangling ActualFnStart when replacing instruction 2020-08-14 23:50:38 +00:00
PoisonChecking [PoisonCheker] Support for out of bounds operands on shifts + insert/extractelement 2019-07-09 19:26:12 +00:00
SanitizerCoverage [SanitizerCoverage] Use zeroext for cmp parameters on all targets 2020-08-12 18:38:12 +02:00
ThreadSanitizer [TSan] Add option for emitting compound read-write instrumentation 2020-07-17 10:24:20 +02:00
cgprofile.ll [LPM] Port CGProfilePass from NPM to LPM 2020-07-10 09:04:51 -07:00