Merge with upstream commit: commit 1c2e5fd66ea27d0c51360ba4e22099124a915562 Author: peter klausler <pklaus...@nvidia.com> Date: Wed Sep 15 08:28:48 2021 -0700
[flang] Enforce constraint: defined ass't in WHERE must be elemental A defined assignment subroutine invoked in the context of a WHERE statement or construct must necessarily be elemental (C1032). Differential Revision: https://reviews.llvm.org/D109932 H.J. Lu (4): libsanitizer: Merge with upstream libsanitizer: Apply local patches libsanitizer: Bump asan/tsan versions Update c-c++-common/tsan/atomic_stack.c .../c-c++-common/tsan/atomic_stack.c | 3 +- libsanitizer/MERGE | 2 +- libsanitizer/asan/asan_fuchsia.cpp | 35 +- libsanitizer/asan/asan_globals.cpp | 14 +- libsanitizer/asan/asan_interceptors.cpp | 18 +- libsanitizer/asan/asan_interceptors.h | 45 +- libsanitizer/asan/asan_report.cpp | 10 +- libsanitizer/asan/asan_rtl.cpp | 18 +- libsanitizer/asan/asan_stats.cpp | 10 +- libsanitizer/asan/asan_thread.cpp | 4 +- libsanitizer/asan/libtool-version | 2 +- libsanitizer/hwasan/Makefile.am | 3 +- libsanitizer/hwasan/Makefile.in | 12 +- libsanitizer/hwasan/hwasan.cpp | 3 +- libsanitizer/hwasan/hwasan.h | 25 +- .../hwasan/hwasan_allocation_functions.cpp | 24 + libsanitizer/hwasan/hwasan_allocator.cpp | 58 +- libsanitizer/hwasan/hwasan_dynamic_shadow.cpp | 9 + libsanitizer/hwasan/hwasan_fuchsia.cpp | 23 + libsanitizer/hwasan/hwasan_interceptors.cpp | 70 +- .../hwasan/hwasan_interface_internal.h | 48 - libsanitizer/hwasan/hwasan_linux.cpp | 147 +- libsanitizer/hwasan/hwasan_report.cpp | 82 +- ...wasan_setjmp.S => hwasan_setjmp_aarch64.S} | 21 +- libsanitizer/hwasan/hwasan_setjmp_x86_64.S | 80 + libsanitizer/hwasan/hwasan_thread.cpp | 2 +- libsanitizer/hwasan/hwasan_type_test.cpp | 2 +- .../include/sanitizer/asan_interface.h | 2 +- .../include/sanitizer/common_interface_defs.h | 2 +- .../include/sanitizer/dfsan_interface.h | 3 +- .../include/sanitizer/linux_syscall_hooks.h | 2120 +++++++++-------- .../include/sanitizer/tsan_interface.h | 3 + .../interception/interception_win.cpp | 48 +- libsanitizer/lsan/lsan_allocator.h | 2 +- libsanitizer/lsan/lsan_common.cpp | 12 +- .../sanitizer_common/sancov_flags.inc | 2 +- .../sanitizer_common/sanitizer_addrhashmap.h | 2 +- .../sanitizer_allocator_primary64.h | 14 +- .../sanitizer_allocator_size_class_map.h | 8 +- libsanitizer/sanitizer_common/sanitizer_asm.h | 4 +- .../sanitizer_atomic_clang_mips.h | 2 +- .../sanitizer_common/sanitizer_common.h | 20 +- .../sanitizer_common_interceptors.inc | 652 ++--- .../sanitizer_common_interceptors_format.inc | 10 +- ...izer_common_interceptors_netbsd_compat.inc | 4 +- .../sanitizer_common_nolibc.cpp | 1 + .../sanitizer_common_syscalls.inc | 1559 +++++++----- .../sanitizer_coverage_fuchsia.cpp | 8 +- .../sanitizer_coverage_libcdep_new.cpp | 65 +- .../sanitizer_common/sanitizer_file.cpp | 15 + .../sanitizer_common/sanitizer_file.h | 2 + .../sanitizer_common/sanitizer_flag_parser.h | 2 +- .../sanitizer_common/sanitizer_flags.inc | 4 + .../sanitizer_common/sanitizer_fuchsia.cpp | 41 - .../sanitizer_interceptors_ioctl_netbsd.inc | 2 +- .../sanitizer_interface_internal.h | 7 +- .../sanitizer_internal_defs.h | 46 +- .../sanitizer_common/sanitizer_libc.cpp | 12 + .../sanitizer_common/sanitizer_libc.h | 5 +- .../sanitizer_common/sanitizer_libignore.cpp | 33 +- .../sanitizer_common/sanitizer_libignore.h | 37 +- .../sanitizer_common/sanitizer_linux.cpp | 83 +- .../sanitizer_local_address_space_view.h | 2 +- .../sanitizer_common/sanitizer_mac.cpp | 29 +- .../sanitizer_common/sanitizer_mutex.cpp | 186 ++ .../sanitizer_common/sanitizer_mutex.h | 325 +-- .../sanitizer_common/sanitizer_platform.h | 25 +- .../sanitizer_platform_interceptors.h | 27 +- .../sanitizer_platform_limits_freebsd.cpp | 4 + .../sanitizer_platform_limits_freebsd.h | 164 +- .../sanitizer_platform_limits_linux.cpp | 56 +- .../sanitizer_platform_limits_netbsd.cpp | 1 + .../sanitizer_platform_limits_netbsd.h | 1 + .../sanitizer_platform_limits_posix.cpp | 25 +- .../sanitizer_platform_limits_posix.h | 30 +- .../sanitizer_platform_limits_solaris.cpp | 1 + .../sanitizer_platform_limits_solaris.h | 1 + .../sanitizer_common/sanitizer_posix.h | 7 +- .../sanitizer_posix_libcdep.cpp | 2 + .../sanitizer_common/sanitizer_printf.cpp | 37 +- .../sanitizer_signal_interceptors.inc | 12 +- .../sanitizer_common/sanitizer_solaris.cpp | 22 - .../sanitizer_common/sanitizer_stacktrace.cpp | 5 +- .../sanitizer_stacktrace_libcdep.cpp | 2 +- .../sanitizer_stacktrace_printer.cpp | 11 +- .../sanitizer_stacktrace_sparc.cpp | 2 +- .../sanitizer_stoptheworld_linux_libcdep.cpp | 2 +- .../sanitizer_stoptheworld_netbsd_libcdep.cpp | 2 +- .../sanitizer_common/sanitizer_symbolizer.h | 6 +- .../sanitizer_symbolizer_internal.h | 2 +- .../sanitizer_symbolizer_libcdep.cpp | 12 +- .../sanitizer_syscall_linux_hexagon.inc | 131 + .../sanitizer_thread_registry.cpp | 22 +- .../sanitizer_thread_registry.h | 2 +- .../sanitizer_tls_get_addr.cpp | 19 +- .../sanitizer_common/sanitizer_win.cpp | 24 +- libsanitizer/tsan/Makefile.am | 4 +- libsanitizer/tsan/Makefile.in | 13 +- libsanitizer/tsan/libtool-version | 2 +- libsanitizer/tsan/tsan_clock.cpp | 10 +- libsanitizer/tsan/tsan_clock.h | 2 +- libsanitizer/tsan/tsan_debugging.cpp | 10 +- libsanitizer/tsan/tsan_defs.h | 66 +- libsanitizer/tsan/tsan_dense_alloc.h | 35 +- libsanitizer/tsan/tsan_external.cpp | 19 +- libsanitizer/tsan/tsan_fd.cpp | 24 +- libsanitizer/tsan/tsan_fd.h | 2 +- libsanitizer/tsan/tsan_flags.cpp | 1 + libsanitizer/tsan/tsan_flags.inc | 1 - libsanitizer/tsan/tsan_ignoreset.cpp | 12 +- libsanitizer/tsan/tsan_ignoreset.h | 13 +- libsanitizer/tsan/tsan_ilist.h | 189 ++ libsanitizer/tsan/tsan_interceptors.h | 35 +- libsanitizer/tsan/tsan_interceptors_mac.cpp | 6 +- libsanitizer/tsan/tsan_interceptors_posix.cpp | 417 ++-- libsanitizer/tsan/tsan_interface.cpp | 96 +- libsanitizer/tsan/tsan_interface.h | 10 +- libsanitizer/tsan/tsan_interface.inc | 182 ++ libsanitizer/tsan/tsan_interface_ann.cpp | 172 +- libsanitizer/tsan/tsan_interface_atomic.cpp | 323 ++- libsanitizer/tsan/tsan_interface_inl.h | 133 -- libsanitizer/tsan/tsan_interface_java.cpp | 291 ++- libsanitizer/tsan/tsan_mman.cpp | 10 +- libsanitizer/tsan/tsan_mman.h | 49 +- libsanitizer/tsan/tsan_mutex.cpp | 280 --- libsanitizer/tsan/tsan_mutex.h | 87 - libsanitizer/tsan/tsan_mutexset.cpp | 47 +- libsanitizer/tsan/tsan_mutexset.h | 29 +- libsanitizer/tsan/tsan_platform.h | 1089 ++++----- libsanitizer/tsan/tsan_platform_linux.cpp | 109 +- libsanitizer/tsan/tsan_platform_mac.cpp | 22 +- libsanitizer/tsan/tsan_platform_posix.cpp | 37 +- libsanitizer/tsan/tsan_platform_windows.cpp | 3 +- libsanitizer/tsan/tsan_report.cpp | 77 +- libsanitizer/tsan/tsan_report.h | 36 +- libsanitizer/tsan/tsan_rtl.cpp | 477 ++-- libsanitizer/tsan/tsan_rtl.h | 499 ++-- libsanitizer/tsan/tsan_rtl_mutex.cpp | 419 ++-- libsanitizer/tsan/tsan_rtl_report.cpp | 328 ++- libsanitizer/tsan/tsan_rtl_thread.cpp | 306 ++- libsanitizer/tsan/tsan_shadow.h | 233 ++ libsanitizer/tsan/tsan_stack_trace.cpp | 12 +- libsanitizer/tsan/tsan_symbolize.cpp | 3 +- libsanitizer/tsan/tsan_sync.cpp | 58 +- libsanitizer/tsan/tsan_sync.h | 36 +- libsanitizer/tsan/tsan_trace.h | 153 +- ...word_inl.h => tsan_update_shadow_word.inc} | 2 +- libsanitizer/tsan/tsan_vector_clock.cpp | 126 + libsanitizer/tsan/tsan_vector_clock.h | 51 + libsanitizer/ubsan/ubsan_diag.cpp | 8 +- 150 files changed, 7427 insertions(+), 6028 deletions(-) rename libsanitizer/hwasan/{hwasan_setjmp.S => hwasan_setjmp_aarch64.S} (87%) create mode 100644 libsanitizer/hwasan/hwasan_setjmp_x86_64.S create mode 100644 libsanitizer/sanitizer_common/sanitizer_syscall_linux_hexagon.inc create mode 100644 libsanitizer/tsan/tsan_ilist.h create mode 100644 libsanitizer/tsan/tsan_interface.inc delete mode 100644 libsanitizer/tsan/tsan_interface_inl.h delete mode 100644 libsanitizer/tsan/tsan_mutex.cpp delete mode 100644 libsanitizer/tsan/tsan_mutex.h create mode 100644 libsanitizer/tsan/tsan_shadow.h rename libsanitizer/tsan/{tsan_update_shadow_word_inl.h => tsan_update_shadow_word.inc} (96%) create mode 100644 libsanitizer/tsan/tsan_vector_clock.cpp create mode 100644 libsanitizer/tsan/tsan_vector_clock.h -- 2.31.1