llvm-project/compiler-rt
Leonard Grey ed2c3f46f5 [lsan][Darwin] Scan libdispatch and Foundation memory regions
libdispatch uses its own heap (_dispatch_main_heap) for some allocations, including the dispatch_continuation_t that holds a dispatch source's event handler.
Objective-C block trampolines (creating methods at runtime with a block as the implementations) use the VM_MEMORY_FOUNDATION region (see 8701d5672d/runtime/objc-block-trampolines.mm (L371)).

This change scans both regions to fix false positives. See tests for details; unfortunately I was unable to reduce the trampoline example with imp_implementationWithBlock on a new class, so I'm resorting to something close to the bug as seen in the wild.

Differential Revision: https://reviews.llvm.org/D129385
2022-09-14 16:46:40 -04:00
..
cmake [compiler-rt][builtins] Enable more warnings in add_security_warnings 2022-09-14 12:55:56 -07:00
docs
include [ORC-RT] Drop the 'clang_rt.' prefix from the ORC runtime. 2022-09-12 16:48:20 -07:00
lib [lsan][Darwin] Scan libdispatch and Foundation memory regions 2022-09-14 16:46:40 -04:00
test [lsan][Darwin] Scan libdispatch and Foundation memory regions 2022-09-14 16:46:40 -04:00
tools
unittests
utils
www
.clang-tidy
.gitignore
CMakeLists.txt
CODE_OWNERS.TXT
CREDITS.TXT
LICENSE.TXT
README.txt

README.txt

Compiler-RT
================================

This directory and its subdirectories contain source code for the compiler
support routines.

Compiler-RT is open source software. You may freely distribute it under the
terms of the license agreement found in LICENSE.txt.

================================