This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch google/stable in repository compiler-rt.
from 59a9c97 Updating branches/google/stable to r267754 adds c97c82c [sanitizer] Add early call handling to strchr + strrchr interceptors adds 9b30f14 [sanitizers] Get the proper symbol version when long double t [...] adds 9952808 [MSan] [PowerPC] Dereference function descriptors when record [...] adds ff2a944 [tsan] Fix Darwin GCD support after separation of Processor a [...] adds 69881f7 Update visibility flags for CFI tests. adds 649203f [test/asan] Update a test case to work with old Darwin SDK's adds ee9e22a [CMake] Adding some missing CMake includes. NFC. adds 00e8897 [CMake] Updating Apple CMake cache file adds 9e256d0 [CMake] Adding another missing include. NFC. adds 3fd49ab [ASan] Reenable __builtin_setjmp test on PowerPC, disable on [...] adds a2feb76 [ASan] [SystemZ] Mark segv_read_write.c as UNSUPPORTED. adds ef7d1a2 [msan] Tests for vector compare intrinsics. adds 4c14c15 [sanitizers] [SystemZ] Mark kernel 3.12.58+ as safe from CVE- [...] adds 4a02a8f [asan] Assert in __sanitizer_ptr_{sub,cmp} if one of the poin [...] adds 328ac4c Try to fix clang-cmake-aarch64-42vma by removing a memory lea [...] adds 988c2fc Fix test's memory leaks. adds 6ca2ea2 [tsan] Return 0 from malloc_size for non-malloc'd pointers adds bafb2a0 Finally fix invalid-pointer-pairs.cc. This time the demangle [...] adds 6d7e49d [ASan] Add shadow offset for SystemZ. adds 4e704fa [sanitizer] Don't reuse the main thread in ThreadRegistry adds 71be6ad [sanitizer] Fix a crash in SizeClassAllocator32 with an out-o [...] adds 857417b [scan-build] fix logic error warning emitted on compiler-rt c [...] adds 3b2ce46 [compiler-rt] adjust platform_limits_linux.cc #include of pos [...] adds 151b497 Add another failing use-after-scope test adds 3bd85d7 Relax stack check as on some platforms demanglers fail adds be916c3 tsan: update tsan_analyze to what tip clang generates adds e3884fe [esan] Use do-while rather than braces for empty interceptors adds 4e4d430 [CMake] NFC. Add support for testing the compiler without tes [...] adds e32b2d7 [sanitizer] Move stat/__xstat to the common interceptors adds 71107c1 Revert "[sanitizer] Move stat/__xstat to the common interceptors" adds 5f450c2 [sanitizer] Move stat/__xstat to the common interceptors adds 7c0ae53 Sync up with master file adds b98905c IR value profile testing cleanup adds b1d2fe4 Add a test of VP with shared lib adds 09c71be [profile] Remove another unneeded field in raw profile reader adds eb32934 [asan] Bail out on stack overflow in recovery mode. adds ef6211f [sanitizer] Fix a crash when demangling Swift symbols adds 451f260 Revert r268716. This has caused test failures in MSan on Linux. adds 03da660 XFAILing a test on ARM. See PR27667 adds 2ad515b [InstProf] Temporarily removing a test that fails/passes on d [...] adds f859b82 Revert r268608 -- unexplained darwin bot failure adds a7f0947 tsan: fix a crash adds 2c920ab [profile] Simplify value profile writing adds f977460 Revert "[profile] Simplify value profile writing" adds 732cc33 [InstrProf] Delete unstable test on ARM. See PR27667 adds 022871f Fix variable visibility adds 311faa8 Re install test reverted by r268866 adds 18929dd [CMake] Support platform building builtins without a full toolchain adds 2cfbf74 Remove XFAIL adds 4ce1f1e [MSan] Add a test for vararg with lots of non-vararg arguments. adds f938294 Reapply r268840: [profile] Simplify value profile writing adds 1b79d38 tsan: fix another crash due to processors adds 59977c2 Reapply r268608 after IR instr bug fix adds d9d88a2 Revert r268130 -- more bot failure adds b81c9a9 [esan] EfficiencySanitizer shadow memory adds e4a87c9 Reapply r268608 adds cd7d3f3 [sanitizer] Move *stat to the common interceptors adds 8512db2 [CMake] Cache check results and avoid duplicate checks adds 87c6f40 [asan] Don't use libcorkscrew on Android L+. adds c15309d cleanup: Enforce caller to set total size to avoid redundant [...] adds 3c2876c [profile] profile writing cleanup adds bb7ed38 [ASan] [SystemZ] Add -mbackchain to test cflags. adds eaa8017 [sanitizer] Break infinite recursion in case of recursive fai [...] adds 676caa9 [sanitizer] On OS X, exit the forked process gracefully when [...] adds cd465da [sanitizer] Fix a crash when demangling Swift symbols, take 2 adds 5fb4b3f Fixup for r269291, which broke the Go TSan build. Let's not [...] adds a4ef7d7 Fixup for r269288. SleepForSeconds is not available in nolib [...] adds b57cc42 [mips][sanitizer_common] Don't use `ld` in internal_clone() o [...] adds 8d59f29 [sanitizer] Allow nullptr in Swift demangler adds 29658e5 More fixup for r269288 and r269296. Adding the missing 'return'. adds 85e51b8 Update test expectations after r269291 (Fix a crash when dema [...] adds ebe1909 Minor code refactoring /NFC adds 84611c6 [profile] Code refactoring adds d2006b7 [profile] Eliminate dynamic memory allocation for buffered writer adds 7dd57fd [ProfileData] (compiler-rt) Use Error in InstrProf and Coverage, NFC adds 32f3a98 Revert "(HEAD -> master, origin/master, origin/HEAD) [Profile [...] adds b925648 Reapply "[ProfileData] (compiler-rt) Use Error in InstrProf a [...] adds 78c86f0 [MSan] Enable on PowerPC64. adds 6a0541d Revert "[MSan] Enable on PowerPC64." adds e0848a5 minor cleanup -- reset buffer pointer adds 697cbda Revert "Reapply "[ProfileData] (compiler-rt) Use Error in Ins [...] adds 6948b5e [mips][ias] Two XFAIL's now pass on 32-bit MIPS. adds 31e6b45 [profile] Eliminate dynamic memory allocation for vp writing adds 0e776a7 Fix FreeBSD build failure adds 389c983 Use __builtin_alloca with __GNUC__ adds 570ee9d [asan] Fix asan initialization failure with newer (2.23+) gli [...] adds 4659e36 [compiler-rt] Fix multi-configuration output paths adds ef33572 [PS4] Change the names of some "environmental" things to what [...] adds 9af4859 [profile] minor code restructuring /NFC adds a4c3fe4 Reapply^2 "[ProfileData] (compiler-rt) Use Error in InstrProf [...] adds c87f741 Revert "Reapply^2 "[ProfileData] (compiler-rt) Use Error in I [...] adds e3e27c0 [profile] Add portability macro for atomic fetch_and_add adds db00dbb Avoid leak. Free before resetting. adds f0ccaf3 [asan] Don't raise false alarm to recv/recvfrom when MSG_TRUN [...] adds 7677ebe [sanitizers] disabling LateInitialize call to fix the build. adds fcc6038 [esan] Fix isShadowMem endpoint bug adds 41a8ddb [tsan] Ensure mmap respects ignore_interceptors_accesses adds 70d33ed [sanitizer] Move *fstat to the common interceptors adds f11f1f2 Revert "[sanitizer] Move *fstat to the common interceptors" adds 92e12a6 [LSAN] Fix test swapcontext.cc on MIPS adds 310285e [sanitizer] Fix a crash when demangling Swift symbols, take 3 adds b89453c [sanitizer] Allow dlopen/dlclose interception to be disabled [...] adds b16d017 [profile] add runtime variable documentation adds c1bc4d0 [sanitizers] remove earthdok@ from owners adds a7c01c6 [sanitizer] Move *fstat to the common interceptors adds de56427 [profile] Allow max vals per site to be controllable at runtime adds e478d85 Fix typo. adds 27701a8 Reapply^3 "[ProfileData] (compiler-rt) Use Error in InstrProf [...] adds c1ad65a [asan] Change preprocessor `#if` to regular `if` for CAN_SANI [...] adds a4313de Revert r270038 ("Change preprocessor `#if` to regular `if` fo [...] adds a6b9e97 [tsan] Add support for GCD's dispatch_after and dispatch_after_f adds 0262037 Revert "[sanitizer] Move *fstat to the common interceptors" adds 3106ed0 [profile] entry eviction support in value profiler adds 1f364db Small typo and whitespace fix. adds 0833103 Add #include for PS4 getenv shim. adds 879099e [profile] Remove anther malloc use adds 66836a0 [profile] PROF_ERR, PROF_WARN adds a5ce2f6 Fix bot failure adds 8ff78a0 Use C-style comment. adds 7680476 [powerpc] mark static_tls.cc test as UNSUPPORTED on powerpc64 adds 920004a [esan] Extend shadow mapping to cover low libraries adds a993ee9 [esan] Add custom flag support adds d5c53cc [tsan] Don't abort when a deadlock detector finds a mutex cyc [...] adds b5331be [profile] Static counter allocation for value profiling (part-2) adds 46e7db1 Fix typo adds bad609b Fix a typo (darwin only) adds 2ce1c18 bug fix: trim section specifier name length adds e74f92f [profile] initialize static pool properly adds 1de246f [sanitizer] Don't use -fomit-frame-pointer in COMPILER_RT_DEB [...] adds 6d87276 [profile] clean up runtime warnings. adds 46ef7f5 [profile] clean up file initialization code adds 8e20e39 Fix typo in comment adds c795486 [asan] Workaround LD_PRELOAD bug in the Android linker. adds a0f78dd [profile] clean up profile file handling code adds aa4e6ee [esan] Add compilation unit init/exit routines. adds 916e15d [esan|cfrag] Add test struct-simple.cpp adds 9dfeca2 Add working set base runtime library adds d9b8899 Fix braced initializer list (NFC) adds 1ae308d [tsan] Change some OS X tests to include system headers (xpc. [...] adds 4502401 [profile] Further cleanup/refactor file handling code adds a949446 [esan][cfrag] Add skeleton for cache fragmentation tool support adds e46c108 [profile] Don't return `Node` when it is null. adds f234154 [profile] Add early checking to bypass node pointer update adds 229f651 Fix columns for member function calls adds c01d558 [sanitizer] Fix a typo in config-ix.cmake causing all Darwin [...] adds 9329d69 [profile] pre-allocate a small counter set in profile runtime adds 36c941c Fix windows bot failure adds 246455f Init tsan with .preinit_array section adds eaf492b Add segment prefix for darwin adds 4bc8dea Add portable macro in common header adds 6d77ea5 Add missing test case changes adds 3e8af06 [esan] Fix workingset-memset test failure adds 4e30c8d [profile] Avoid unused variable warning. adds 6e2868a [profile] Add a test to ensure runtime allocator is not invoked adds f4e2d7d [sanitizers] introduce __sanitizer_set_report_fd so that we c [...] adds 4a36720 This patch is activating the build of Asan on Windows 64-bits [...] adds e87fd27 [sanitizers] trying to fix Windows build adds eaa4331 [sanitizer] Move termination functions in their own file adds 929d23e [esan] Add handling of large stack size rlimits adds 2fb0222 [sanitizers] introduce a common run-time option dedup_token_l [...] adds 2c6d05b Move test only for the relevant platform adds bd0c944 Add __sanitizer_set_report_fd to the internal list of symbols. adds 31a0413 Update asan_win_dll_thunk.cc to fix the windows buildbot. adds d560e56 [asan] Fix a deadlock halt_on_error-signals.c when `reporting [...] adds 124601f __builtin_ia32_storeups is no more. Replace it with xmmintrin [...] adds 0573d6c [esan] Intercept and chain signal handlers adds 53a1466 [esan|wset] Iterate all memory to compute the total working set adds 78b34e5 [esan] Add circular buffer data structure adds f8eb4c3 Local var name change /NFC adds f222670 Fix test for Darwin: ASAN is calling abort by default on Darw [...] adds a5b0723 [CMake] Update to requiring CMake 3.4.3 adds 965efde [esan|cfrag] Add the skeleton to handle the cfrag argument adds da1eadd [profile] Fix PR/27917 adds cb9881b [asan] add an interface function __sanitizer_print_memory_pro [...] adds 77170c9 [asan] fix arm build adds e151fbe [profile] Add end-end test of vp for inline virtual functions adds 4deefb0 UBSan: crash less often on corrupted Vtables. adds a2e782d [esan|cfrag] Add struct info registration adds b31140f tsan: clean up dynamic TLS memory between reuse adds 48c41ee [profile] enable a subtest for vcall inline virtual func adds 6102e3a Fix build failure with cmake version bump adds d14ed3a [esan] Add support for log_exe_name adds 2edd48d Revert "[profile] enable a subtest for vcall inline virtual func" adds 0096329 [esan] Ensure internal_sigaction() bypasses interceptors adds 031c1e4 tsan: rely on AnnotateRWLockCreateStatic to detect linker-ini [...] adds d5bcae9 [esan] Add sideline itimer support adds b05f4c8 [esan|wset] Add 8-level working set snapshot accumulation adds 756c3a5 [esan] Eliminate flakiness in large-stack test adds 89d91c3 [CMake] detect_target_arch needs to be moved to Utils adds 5910fcc [esan] Specify which tool via a global variable adds 1a0b986 [esan|cfrag] Compute the struct field access difference ratio adds 8243449 [esan] Initialize runtime during early interceptors adds b6fb383 [CMake] Support constructing output paths from LLVM variables adds 37797b4 reapply r271577 after OSX bug is fixed (hopefully) adds bca6fcb Temporary hack to this test to try and get the sanitizer-wind [...] adds d909421 Amazingly, my guess was correct for the top two frames here. [...] adds c8ec32a I didn't actually get this right, but now I have frame #0 and [...] adds c0e5043 Update this test yet again, this time based on a nice consecu [...] adds 3cb3a8b Fix the test for printing the memory profile. This fuctionali [...] adds 60ba353 Ok, now I know why I kept getting confused and not making pro [...] adds a38e034 It really helps to not randomly delete one of the closing bra [...] adds c306371 [tsan] On OS X, build Go runtime with -mmacosx-version-min adds 0bdc521 [profile] in-process mergeing support (part-2) adds 13389a4 [asan] Reenable ASan tests in "check-all" adds 377ec60 [tsan] On OS X, optimize main thread’s ThreadState accesses adds e2e2f47 This patch attempts to primitive support for Win64 asan adds 4af8674 [tsan] Switch to InternalAlloc everywhere __libc_malloc is cu [...] adds 3f4698f [profile] code cleanup /NFC adds 89296cb [libprofile] Add %run to a couple tests. adds 9d50d61 [libprofile] Also use `env` for this test. adds f2f6037 add -f to rm so the test passes the first time it's run the f [...] adds a8e7154 [sanitizer] Initial implementation of a Hardened Allocator adds a513457 Remove some leftover empty directories. adds 82b0680 [sanitizer] Fix build for new GLIBC msghdr/cmsghdr definition adds a83a462 [asan] make print_memory_profile_test more reliable by using [...] adds a3fbfc4 [scudo] trying to fix the bot: aligned_alloc is not known there adds 3c3bb84 [asan] Turn LSan-related #if’s into regular if’s in ASan initializer adds d694ebb [scudo] trying to fix the bot: aligned_alloc is not known the [...] adds 29078f9 [scudo] trying to fix the bot: aligned_alloc is not known the [...] adds 61be762 [esan] Intercept calloc to avoid deadlocks with tcmalloc adds 4c179b4 [profile] Hide a few external symbols (NFCI) adds ce56f06 [profile] Un-hide two symbols adds 66a99f1 [profile] Pass extra build flags (feature enabling macros) to [...] adds 493a682 [profile] Hide some external symbols in InstrProfData.inc adds ef5e5ab [esan|wset] Reduce flakiness in samples test adds 8be0a4b [profile] in-process merging support part-3 adds 09fb515 [profile] Fix test to bail on failed waitpid in instrprof-file_ex.c adds a00ec84 [CMake] Cleanup CMake version checking for 2.8.12 adds c2cae06 [CMake] Cleanup CMake version checking adds 180059d Fix win bot failure adds e00c72b [esan|cfrag] Add the struct field offset array in StructInfo adds 9e74198 [profile] add profile path tests adds 01533af [profile] add profile path tests for shared lib adds 91c5e0e [profile] fix bot failure on darwin adds 98339b2 [profile] cleanup file setting code adds 5885e1e [libprofile] Define an expansion `%clang_profgen=` adds c84c407 [builtins] replace tabs by spaces and remove whitespace at en [...] adds 51be894 [builtins] Make SOFT_FP versions of floatdidf and floatundidf [...] adds d5a0419 [sanitizer][esan] Add internal_sigaction_syscall adds 97a35f8 Revert "[sanitizer][esan] Add internal_sigaction_syscall" adds 2a8f0a9 [sanitizer][esan] Add internal_sigaction_syscall adds 2c9ed75 Revert r272591, http://lab.llvm.org:8011/builders/clang-x64-n [...] adds df01596 Removing an old empty unused directory "SDKs". adds b90f32b [sanitizer][esan] Add internal_sigaction_syscall adds eef7355 [sanitizer] Revert new GLIBC msghdr/cmsghdr definitions adds 6543bc5 [profile] Update a warning message (NFC) adds ea253ae In asan on Windows 64-bit, this is one of the broken things t [...] adds 5788298 Compiler-rt test for sanitizer coverage w/o sanitizers. adds 8ef2417 Fix ubsan/coverage test to put coverage file in a subdirectory. adds ea583d6 tsan: intercept epoll_pwait adds e34d5ac [esan|cfrag] Minor cfrag report adjustment adds 3efa8ac Merge two coverage tests undef UBSan into one. adds ed40638 [esan] Use internal_mmap during initialization adds 5bb1631 [sanitizers] introduce yet another API function: __sanitizer_ [...] adds 8e59480 [msan] Intercept send/sendto/sendmsg. adds 820e56d [esan|cfrag] Add the struct field size array in StructInfo adds d80ed42 Fix some warnings in the MSVC build adds 45769d7 Fix most MSVC warnings in compiler-rt profiling library adds 71b76cf Turn off -Wunused-parameter when building compiler-rt with cl [...] adds 6b6b472 [sanitizer] [SystemZ] Enable TLS functionality. adds 25d3c2b [sanitizers] [SystemZ] Add __tls_get_offset interceptor. adds 44bd90e Hide send/sendto/sendmsg interptors under a flag. adds 86134c4 Add missing decoding patterns toRoundUpToInstrBoundary adds 8b244e6 [msan] Allow uninitialized padding in struct msghdr. adds 05c0c08 [msan] Don't check dstaddr in sendto() interceptor. adds cf52333 [sanitizers] [PowerPC] Intercept __tls_get_addr_opt. adds c025f88 Revert "Revert "[MSan] Enable on PowerPC64."" adds b047774 [asan] add primitives that allow coroutine implementations new bf26b4e Updating branches/google/stable to r273260
The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: CMakeLists.txt | 129 ++--- CODE_OWNERS.TXT | 6 +- cmake/Modules/AddCompilerRT.cmake | 35 +- cmake/Modules/BuiltinTests.cmake | 62 ++ cmake/Modules/CompilerRTDarwinUtils.cmake | 34 +- cmake/Modules/CompilerRTUtils.cmake | 39 ++ cmake/Modules/SanitizerUtils.cmake | 16 +- cmake/base-config-ix.cmake | 172 ++++++ cmake/builtin-config-ix.cmake | 169 ++++++ cmake/caches/Apple.cmake | 9 +- cmake/config-ix.cmake | 195 +------ include/sanitizer/allocator_interface.h | 17 + include/sanitizer/common_interface_defs.h | 29 + lib/CMakeLists.txt | 4 + lib/asan/CMakeLists.txt | 1 + lib/asan/asan_allocator.cc | 12 +- lib/asan/asan_allocator.h | 13 +- lib/asan/asan_interceptors.cc | 2 + lib/asan/asan_internal.h | 16 +- lib/asan/asan_malloc_linux.cc | 42 +- lib/asan/asan_mapping.h | 17 + lib/asan/asan_memory_profile.cc | 100 ++++ lib/asan/asan_posix.cc | 5 +- lib/asan/asan_report.cc | 12 +- lib/asan/asan_rtl.cc | 25 +- lib/asan/asan_stack.h | 5 +- lib/asan/asan_suppressions.cc | 1 + lib/asan/asan_thread.cc | 105 +++- lib/asan/asan_thread.h | 34 +- lib/asan/asan_win.cc | 17 + lib/asan/asan_win_dll_thunk.cc | 2 + lib/asan/scripts/asan_device_setup | 9 +- lib/asan/tests/CMakeLists.txt | 39 +- lib/asan/tests/asan_test.cc | 13 +- lib/builtins/CMakeLists.txt | 20 +- lib/builtins/floatdidf.c | 30 +- lib/builtins/floattidf.c | 6 +- lib/builtins/floatundidf.c | 34 +- lib/builtins/floatuntidf.c | 2 +- lib/esan/CMakeLists.txt | 8 +- lib/esan/cache_frag.cpp | 193 +++++++ lib/esan/cache_frag.h | 28 + lib/esan/esan.cpp | 189 +++++- lib/esan/esan.h | 16 +- lib/esan/esan.syms.extra | 1 + lib/esan/esan_circular_buffer.h | 96 ++++ lib/esan/esan_flags.cpp | 58 ++ lib/esan/esan_flags.h | 41 ++ lib/esan/esan_flags.inc | 56 ++ lib/esan/esan_interceptors.cpp | 406 +++++++++---- lib/esan/esan_interface.cpp | 11 +- lib/esan/esan_interface_internal.h | 10 +- lib/esan/esan_linux.cpp | 83 +++ lib/esan/esan_shadow.h | 203 +++++++ lib/esan/esan_sideline.h | 61 ++ lib/esan/esan_sideline_linux.cpp | 170 ++++++ lib/esan/working_set.cpp | 258 +++++++++ lib/esan/working_set.h | 37 ++ lib/esan/working_set_posix.cpp | 112 ++++ lib/interception/interception_win.cc | 184 +++++- lib/lsan/lsan.h | 7 +- lib/lsan/lsan_allocator.cc | 2 + lib/lsan/lsan_common.cc | 7 + lib/msan/msan.cc | 7 + lib/msan/msan.h | 26 +- lib/msan/msan_interceptors.cc | 77 +-- lib/msan/tests/msan_test.cc | 59 +- lib/profile/CMakeLists.txt | 28 + lib/profile/InstrProfData.inc | 273 +++------ lib/profile/InstrProfiling.c | 4 +- lib/profile/InstrProfiling.h | 43 +- lib/profile/InstrProfilingBuffer.c | 4 +- lib/profile/InstrProfilingFile.c | 485 ++++++++++++---- lib/profile/InstrProfilingInternal.h | 75 ++- lib/profile/InstrProfilingMerge.c | 22 +- lib/profile/InstrProfilingPlatformDarwin.c | 17 + lib/profile/InstrProfilingPlatformLinux.c | 16 + lib/profile/InstrProfilingPlatformOther.c | 11 + lib/profile/InstrProfilingPort.h | 40 +- lib/profile/InstrProfilingUtil.c | 71 ++- lib/profile/InstrProfilingUtil.h | 12 +- lib/profile/InstrProfilingValue.c | 289 +++++++--- lib/profile/InstrProfilingWriter.c | 191 +++++-- lib/profile/WindowsMMap.h | 8 +- lib/sanitizer_common/CMakeLists.txt | 27 +- lib/sanitizer_common/sanitizer_allocator.cc | 82 ++- lib/sanitizer_common/sanitizer_allocator.h | 3 + .../sanitizer_allocator_interface.h | 4 + .../sanitizer_allocator_internal.h | 7 +- lib/sanitizer_common/sanitizer_atomic_msvc.h | 11 +- lib/sanitizer_common/sanitizer_common.cc | 109 ++-- lib/sanitizer_common/sanitizer_common.h | 3 + .../sanitizer_common_interceptors.inc | 256 ++++++++- lib/sanitizer_common/sanitizer_common_nolibc.cc | 1 + .../sanitizer_deadlock_detector1.cc | 9 +- .../sanitizer_deadlock_detector_interface.h | 2 +- lib/sanitizer_common/sanitizer_flags.inc | 11 + .../sanitizer_interface_internal.h | 4 + lib/sanitizer_common/sanitizer_internal_defs.h | 2 +- lib/sanitizer_common/sanitizer_libc.h | 1 + lib/sanitizer_common/sanitizer_linux.cc | 45 +- lib/sanitizer_common/sanitizer_linux.h | 4 + lib/sanitizer_common/sanitizer_linux_libcdep.cc | 9 +- lib/sanitizer_common/sanitizer_linux_s390.cc | 3 + lib/sanitizer_common/sanitizer_linux_x86_64.S | 25 + lib/sanitizer_common/sanitizer_mac.cc | 20 +- lib/sanitizer_common/sanitizer_platform.h | 14 + .../sanitizer_platform_interceptors.h | 25 + .../sanitizer_platform_limits_linux.cc | 2 +- lib/sanitizer_common/sanitizer_posix.h | 2 + lib/sanitizer_common/sanitizer_posix_libcdep.cc | 4 + lib/sanitizer_common/sanitizer_stacktrace.cc | 5 - lib/sanitizer_common/sanitizer_stacktrace.h | 5 + .../sanitizer_stacktrace_libcdep.cc | 9 + lib/sanitizer_common/sanitizer_symbolizer.h | 1 + .../sanitizer_symbolizer_posix_libcdep.cc | 41 +- lib/sanitizer_common/sanitizer_symbolizer_win.cc | 4 + lib/sanitizer_common/sanitizer_termination.cc | 86 +++ lib/sanitizer_common/sanitizer_thread_registry.cc | 2 + .../sanitizer_unwind_linux_libcdep.cc | 5 + lib/sanitizer_common/tests/CMakeLists.txt | 15 +- lib/scudo/CMakeLists.txt | 32 ++ lib/scudo/scudo_allocator.cpp | 635 +++++++++++++++++++++ lib/scudo/scudo_allocator.h | 63 ++ lib/scudo/scudo_flags.cpp | 81 +++ lib/scudo/scudo_flags.h | 33 ++ lib/scudo/scudo_flags.inc | 35 ++ lib/scudo/scudo_interceptors.cpp | 75 +++ lib/scudo/scudo_new_delete.cpp | 69 +++ lib/scudo/scudo_termination.cpp | 41 ++ lib/scudo/scudo_utils.cpp | 133 +++++ lib/scudo/scudo_utils.h | 59 ++ lib/tsan/CMakeLists.txt | 11 +- lib/tsan/check_analyze.sh | 16 +- lib/tsan/dd/dd_interceptors.cc | 3 - lib/tsan/go/build.bat | 2 +- lib/tsan/go/buildgo.sh | 5 +- lib/tsan/rtl/tsan_flags.cc | 1 + lib/tsan/rtl/tsan_interceptors.cc | 281 +++------ lib/tsan/rtl/tsan_interceptors.h | 8 - lib/tsan/rtl/tsan_libdispatch_mac.cc | 23 + lib/tsan/rtl/tsan_malloc_mac.cc | 40 +- lib/tsan/rtl/tsan_mman.cc | 60 +- lib/tsan/rtl/tsan_mman.h | 1 + lib/tsan/rtl/tsan_mutex.cc | 1 + lib/tsan/rtl/tsan_mutex.h | 1 + lib/tsan/rtl/tsan_new_delete.cc | 8 +- lib/tsan/rtl/tsan_platform.h | 4 - lib/tsan/rtl/tsan_platform_linux.cc | 48 -- lib/tsan/rtl/tsan_platform_mac.cc | 20 +- lib/tsan/rtl/tsan_preinit.cc | 27 + lib/tsan/rtl/tsan_rtl.cc | 5 + lib/tsan/rtl/tsan_rtl.h | 10 + lib/tsan/rtl/tsan_rtl_mutex.cc | 29 +- lib/tsan/rtl/tsan_stat.cc | 1 + lib/tsan/rtl/tsan_stat.h | 1 + lib/tsan/rtl/tsan_sync.cc | 13 +- lib/ubsan/ubsan_handlers_cxx.cc | 16 +- lib/ubsan/ubsan_type_hash.h | 4 + lib/ubsan/ubsan_type_hash_itanium.cc | 6 + test/CMakeLists.txt | 3 + test/asan/CMakeLists.txt | 14 +- .../Darwin/atos-symbolizer-dyld-root-path.cc | 2 +- test/asan/TestCases/Darwin/atos-symbolizer.cc | 2 +- test/asan/TestCases/Darwin/dladdr-demangling.cc | 2 +- test/asan/TestCases/Darwin/malloc_size_crash.mm | 15 + test/asan/TestCases/Darwin/segv_read_write.c | 2 +- test/asan/TestCases/Linux/local_alias.cc | 2 +- test/asan/TestCases/Linux/odr-violation.cc | 2 +- .../TestCases/Linux/print_memory_profile_test.cc | 29 + test/asan/TestCases/Linux/recvfrom.cc | 26 +- test/asan/TestCases/Linux/segv_read_write.c | 2 +- .../Linux/stack-overflow-recovery-mode.cc | 36 ++ test/asan/TestCases/Linux/static_tls.cc | 2 + .../asan/TestCases/Linux/swapcontext_annotation.cc | 178 ++++++ test/asan/TestCases/Windows/intercept_strdup.cc | 10 +- test/asan/TestCases/invalid-pointer-pairs.cc | 44 ++ test/asan/TestCases/use-after-scope-capture.cc | 2 +- test/asan/TestCases/use-after-scope-chars.cc | 15 + test/asan/lit.cfg | 2 + test/cfi/lit.cfg | 20 +- test/esan/TestCases/large-stack-linux.c | 74 +++ test/esan/TestCases/mmap-shadow-conflict.c | 30 + test/esan/TestCases/struct-simple.cpp | 189 ++++++ test/esan/TestCases/verbose-simple.c | 9 +- test/esan/TestCases/workingset-early-fault.c | 33 ++ test/esan/TestCases/workingset-memset.cpp | 20 + test/esan/TestCases/workingset-samples.cpp | 39 ++ test/esan/TestCases/workingset-signal-posix.cpp | 60 ++ test/esan/TestCases/workingset-simple.cpp | 30 + test/esan/Unit/circular_buffer.cpp | 61 ++ test/esan/lit.cfg | 10 + test/msan/Linux/sendmsg.cc | 83 +++ test/profile/Inputs/instrprof-alloc.c | 41 ++ test/profile/Inputs/instrprof-file_ex.c | 59 ++ test/profile/Inputs/instrprof-icall-promo.h | 4 + test/profile/Inputs/instrprof-icall-promo_1.cc | 7 + test/profile/Inputs/instrprof-icall-promo_2.cc | 15 + test/profile/Inputs/instrprof-value-prof-evict.c | 141 +++++ test/profile/Inputs/instrprof-value-prof-real.c | 545 +++++++++++++++++- test/profile/Linux/instrprof-alloc.test | 6 + test/profile/Linux/instrprof-file_ex.test | 17 + test/profile/Linux/instrprof-merge-vp.c | 2 +- .../Linux/instrprof-set-filename-shared.test | 8 + test/profile/Linux/instrprof-value-prof-warn.test | 8 + test/profile/instrprof-basic.c | 28 +- test/profile/instrprof-bufferio.c | 5 +- test/profile/instrprof-error.c | 4 +- test/profile/instrprof-icall-promo.test | 17 + test/profile/instrprof-set-filename.c | 43 ++ test/profile/instrprof-value-prof-evict.test | 16 + test/profile/instrprof-value-prof-shared.test | 37 ++ test/profile/instrprof-value-prof.c | 2 +- test/profile/instrprof-value-prof.test | 22 +- test/profile/instrprof-version-mismatch.c | 4 +- test/profile/lit.cfg | 1 + .../TestCases/Linux/recv_msg_trunc.cc | 36 ++ .../TestCases/Posix/dedup_token_length_test.cc | 40 ++ .../Posix/sanitizer_set_report_fd_test.cc | 37 ++ test/sanitizer_common/TestCases/malloc_hook.cc | 16 +- test/scudo/CMakeLists.txt | 28 + test/scudo/alignment.cpp | 25 + test/scudo/double-free.cpp | 49 ++ test/scudo/lit.cfg | 39 ++ test/scudo/lit.site.cfg.in | 7 + test/scudo/malloc.cpp | 27 + test/scudo/memalign.cpp | 45 ++ test/scudo/mismatch.cpp | 41 ++ test/scudo/overflow.cpp | 38 ++ test/scudo/preinit.cpp | 38 ++ test/scudo/quarantine.cpp | 43 ++ test/scudo/realloc.cpp | 69 +++ test/scudo/sized-delete.cpp | 40 ++ test/scudo/sizes.cpp | 61 ++ test/tsan/Darwin/gcd-after.mm | 41 ++ test/tsan/Darwin/malloc_size.mm | 58 +- test/tsan/Darwin/xpc-race.mm | 5 +- test/tsan/Darwin/xpc.mm | 1 + test/tsan/Linux/check_preinit.cc | 60 ++ test/tsan/dtls.c | 62 ++ test/tsan/ignored-interceptors-mmap.cc | 61 ++ test/tsan/lots_of_threads.c | 30 + test/tsan/mutex_annotations.cc | 49 ++ test/tsan/mutex_cycle_long.c | 42 ++ test/tsan/pthread_key.cc | 39 ++ test/tsan/test.h | 25 + test/ubsan/CMakeLists.txt | 6 +- test/ubsan/TestCases/Misc/coverage-levels.cc | 6 +- test/ubsan/TestCases/TypeCheck/misaligned.cpp | 2 +- test/ubsan/TestCases/TypeCheck/null.cpp | 2 +- .../TypeCheck/vptr-corrupted-vtable-itanium.cpp | 41 ++ test/ubsan/TestCases/TypeCheck/vptr.cpp | 6 +- 252 files changed, 9846 insertions(+), 1681 deletions(-) create mode 100644 cmake/Modules/BuiltinTests.cmake create mode 100644 cmake/base-config-ix.cmake create mode 100644 cmake/builtin-config-ix.cmake create mode 100644 lib/asan/asan_memory_profile.cc create mode 100644 lib/esan/cache_frag.cpp create mode 100644 lib/esan/cache_frag.h create mode 100644 lib/esan/esan_circular_buffer.h create mode 100644 lib/esan/esan_flags.cpp create mode 100644 lib/esan/esan_flags.h create mode 100644 lib/esan/esan_flags.inc create mode 100644 lib/esan/esan_linux.cpp create mode 100644 lib/esan/esan_shadow.h create mode 100644 lib/esan/esan_sideline.h create mode 100644 lib/esan/esan_sideline_linux.cpp create mode 100644 lib/esan/working_set.cpp create mode 100644 lib/esan/working_set.h create mode 100644 lib/esan/working_set_posix.cpp create mode 100644 lib/sanitizer_common/sanitizer_linux_x86_64.S create mode 100644 lib/sanitizer_common/sanitizer_termination.cc create mode 100644 lib/scudo/CMakeLists.txt create mode 100644 lib/scudo/scudo_allocator.cpp create mode 100644 lib/scudo/scudo_allocator.h create mode 100644 lib/scudo/scudo_flags.cpp create mode 100644 lib/scudo/scudo_flags.h create mode 100644 lib/scudo/scudo_flags.inc create mode 100644 lib/scudo/scudo_interceptors.cpp create mode 100644 lib/scudo/scudo_new_delete.cpp create mode 100644 lib/scudo/scudo_termination.cpp create mode 100644 lib/scudo/scudo_utils.cpp create mode 100644 lib/scudo/scudo_utils.h create mode 100644 lib/tsan/rtl/tsan_preinit.cc create mode 100644 test/asan/TestCases/Darwin/malloc_size_crash.mm create mode 100644 test/asan/TestCases/Linux/print_memory_profile_test.cc create mode 100644 test/asan/TestCases/Linux/stack-overflow-recovery-mode.cc create mode 100644 test/asan/TestCases/Linux/swapcontext_annotation.cc create mode 100644 test/asan/TestCases/invalid-pointer-pairs.cc create mode 100644 test/asan/TestCases/use-after-scope-chars.cc create mode 100644 test/esan/TestCases/large-stack-linux.c create mode 100644 test/esan/TestCases/mmap-shadow-conflict.c create mode 100644 test/esan/TestCases/struct-simple.cpp create mode 100644 test/esan/TestCases/workingset-early-fault.c create mode 100644 test/esan/TestCases/workingset-memset.cpp create mode 100644 test/esan/TestCases/workingset-samples.cpp create mode 100644 test/esan/TestCases/workingset-signal-posix.cpp create mode 100644 test/esan/TestCases/workingset-simple.cpp create mode 100644 test/esan/Unit/circular_buffer.cpp create mode 100644 test/msan/Linux/sendmsg.cc create mode 100644 test/profile/Inputs/instrprof-alloc.c create mode 100644 test/profile/Inputs/instrprof-file_ex.c create mode 100644 test/profile/Inputs/instrprof-icall-promo.h create mode 100644 test/profile/Inputs/instrprof-icall-promo_1.cc create mode 100644 test/profile/Inputs/instrprof-icall-promo_2.cc create mode 100644 test/profile/Inputs/instrprof-value-prof-evict.c create mode 100644 test/profile/Linux/instrprof-alloc.test create mode 100644 test/profile/Linux/instrprof-file_ex.test create mode 100644 test/profile/Linux/instrprof-set-filename-shared.test create mode 100644 test/profile/Linux/instrprof-value-prof-warn.test create mode 100644 test/profile/instrprof-icall-promo.test create mode 100644 test/profile/instrprof-value-prof-evict.test create mode 100644 test/profile/instrprof-value-prof-shared.test create mode 100644 test/sanitizer_common/TestCases/Linux/recv_msg_trunc.cc create mode 100644 test/sanitizer_common/TestCases/Posix/dedup_token_length_test.cc create mode 100644 test/sanitizer_common/TestCases/Posix/sanitizer_set_report_fd_test.cc create mode 100644 test/scudo/CMakeLists.txt create mode 100644 test/scudo/alignment.cpp create mode 100644 test/scudo/double-free.cpp create mode 100644 test/scudo/lit.cfg create mode 100644 test/scudo/lit.site.cfg.in create mode 100644 test/scudo/malloc.cpp create mode 100644 test/scudo/memalign.cpp create mode 100644 test/scudo/mismatch.cpp create mode 100644 test/scudo/overflow.cpp create mode 100644 test/scudo/preinit.cpp create mode 100644 test/scudo/quarantine.cpp create mode 100644 test/scudo/realloc.cpp create mode 100644 test/scudo/sized-delete.cpp create mode 100644 test/scudo/sizes.cpp create mode 100644 test/tsan/Darwin/gcd-after.mm create mode 100644 test/tsan/Linux/check_preinit.cc create mode 100644 test/tsan/dtls.c create mode 100644 test/tsan/ignored-interceptors-mmap.cc create mode 100644 test/tsan/lots_of_threads.c create mode 100644 test/tsan/mutex_annotations.cc create mode 100644 test/tsan/mutex_cycle_long.c create mode 100644 test/tsan/pthread_key.cc create mode 100644 test/ubsan/TestCases/TypeCheck/vptr-corrupted-vtable-itanium.cpp