FreeBSD Errata Notice FreeBSD-EN-23:15.sanitizer
Compiler-RT is an implementation of various compiler runtime support routines, provided by the LLVM project. This library also provides a number of so-called Sanitizers, which help to catch buffer overruns, thread data races, and so on: AddressSanitizer, ThreadSanitizer, UndefinedBehaviorSanitizer, and more. Some of the Sanitizers cannot work correctly when ASLR is enabled. Therefore, at the initialization of such Sanitizers, ASLR is detected via procctl(2). If ASLR is enabled, it is first disabled, and then the main executable containing the Sanitizer is re-executed, after printing an appropriate message. However, the Sanitizers work by intercepting various function calls, and by mistake the already-intercepted procctl(2) function was used. This causes an internal error, which usually results in a segfault. Binaries linked to AddressSanitizer (using -fsanitizedress), MemorySanitizer (using -fsanitize=memory) or ThreadSanitizer (using -fsanitize=thread) can crash at startup with a segfault, if ASLR is enabled. Other binaries are not affected.