build.zig | 4 +- lib/c.zig | 185 +- lib/c/common.zig | 15 + lib/c/string.zig | 45 + lib/libc/musl/src/string/strcmp.c | 7 - lib/libc/musl/src/string/strlen.c | 22 - lib/libc/musl/src/string/strncmp.c | 9 - lib/libtsan/builtins/assembly.h | 305 + lib/libtsan/interception/interception.h | 391 ++ lib/libtsan/interception/interception_linux.cpp | 83 + lib/libtsan/interception/interception_linux.h | 55 + lib/libtsan/interception/interception_mac.cpp | 18 + lib/libtsan/interception/interception_mac.h | 27 + lib/libtsan/interception/interception_type_test.cpp | 46 + lib/libtsan/interception/interception_win.cpp | 1443 +++++ lib/libtsan/interception/interception_win.h | 91 + lib/libtsan/sanitizer_common/sancov_flags.h | 39 + lib/libtsan/sanitizer_common/sancov_flags.inc | 20 + lib/libtsan/sanitizer_common/sanitizer_addrhashmap.h | 393 ++ lib/libtsan/sanitizer_common/sanitizer_allocator.cpp | 214 + lib/libtsan/sanitizer_common/sanitizer_allocator.h | 85 + lib/libtsan/sanitizer_common/sanitizer_allocator_checks.cpp | 22 + lib/libtsan/sanitizer_common/sanitizer_allocator_checks.h | 76 + lib/libtsan/sanitizer_common/sanitizer_allocator_combined.h | 199 + lib/libtsan/sanitizer_common/sanitizer_allocator_dlsym.h | 88 + lib/libtsan/sanitizer_common/sanitizer_allocator_interface.h | 53 + lib/libtsan/sanitizer_common/sanitizer_allocator_internal.h | 56 + lib/libtsan/sanitizer_common/sanitizer_allocator_local_cache.h | 271 + lib/libtsan/sanitizer_common/sanitizer_allocator_primary32.h | 381 ++ lib/libtsan/sanitizer_common/sanitizer_allocator_primary64.h | 902 +++ lib/libtsan/sanitizer_common/sanitizer_allocator_report.cpp | 144 + lib/libtsan/sanitizer_common/sanitizer_allocator_report.h | 40 + lib/libtsan/sanitizer_common/sanitizer_allocator_secondary.h | 322 + lib/libtsan/sanitizer_common/sanitizer_allocator_size_class_map.h | 241 + lib/libtsan/sanitizer_common/sanitizer_allocator_stats.h | 103 + lib/libtsan/sanitizer_common/sanitizer_array_ref.h | 123 + lib/libtsan/sanitizer_common/sanitizer_asm.h | 156 + lib/libtsan/sanitizer_common/sanitizer_atomic.h | 98 + lib/libtsan/sanitizer_common/sanitizer_atomic_clang.h | 99 + lib/libtsan/sanitizer_common/sanitizer_atomic_msvc.h | 256 + lib/libtsan/sanitizer_common/sanitizer_bitvector.h | 350 ++ lib/libtsan/sanitizer_common/sanitizer_bvgraph.h | 164 + lib/libtsan/sanitizer_common/sanitizer_chained_origin_depot.cpp | 150 + lib/libtsan/sanitizer_common/sanitizer_chained_origin_depot.h | 46 + lib/libtsan/sanitizer_common/sanitizer_common.cpp | 435 ++ lib/libtsan/sanitizer_common/sanitizer_common.h | 1114 ++++ lib/libtsan/sanitizer_common/sanitizer_common_interceptors.inc | 10590 ++++++++++++++++++++++++++++++++ lib/libtsan/sanitizer_common/sanitizer_common_interceptors_format.inc | 577 ++ lib/libtsan/sanitizer_common/sanitizer_common_interceptors_ioctl.inc | 612 ++ lib/libtsan/sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc | 244 + lib/libtsan/sanitizer_common/sanitizer_common_interceptors_netbsd_compat.inc | 128 + lib/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_aarch64.inc.S | 48 + lib/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_arm.inc.S | 49 + lib/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_i386.inc.S | 64 + lib/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_loongarch64.inc.S | 57 + lib/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_riscv64.inc.S | 56 + lib/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_x86_64.inc.S | 42 + lib/libtsan/sanitizer_common/sanitizer_common_interface.inc | 61 + lib/libtsan/sanitizer_common/sanitizer_common_interface_posix.inc | 16 + lib/libtsan/sanitizer_common/sanitizer_common_libcdep.cpp | 256 + lib/libtsan/sanitizer_common/sanitizer_common_nolibc.cpp | 37 + lib/libtsan/sanitizer_common/sanitizer_common_syscalls.inc | 3217 ++++++++++ lib/libtsan/sanitizer_common/sanitizer_coverage_interface.inc | 43 + lib/libtsan/sanitizer_common/sanitizer_dbghelp.h | 41 + lib/libtsan/sanitizer_common/sanitizer_deadlock_detector.h | 410 ++ lib/libtsan/sanitizer_common/sanitizer_deadlock_detector1.cpp | 194 + lib/libtsan/sanitizer_common/sanitizer_deadlock_detector2.cpp | 421 ++ lib/libtsan/sanitizer_common/sanitizer_deadlock_detector_interface.h | 98 + lib/libtsan/sanitizer_common/sanitizer_dense_map.h | 717 +++ lib/libtsan/sanitizer_common/sanitizer_dense_map_info.h | 282 + lib/libtsan/sanitizer_common/sanitizer_dl.cpp | 37 + lib/libtsan/sanitizer_common/sanitizer_dl.h | 26 + lib/libtsan/sanitizer_common/sanitizer_errno.cpp | 35 + lib/libtsan/sanitizer_common/sanitizer_errno.h | 38 + lib/libtsan/sanitizer_common/sanitizer_errno_codes.h | 36 + lib/libtsan/sanitizer_common/sanitizer_file.cpp | 253 + lib/libtsan/sanitizer_common/sanitizer_file.h | 110 + lib/libtsan/sanitizer_common/sanitizer_flag_parser.cpp | 190 + lib/libtsan/sanitizer_common/sanitizer_flag_parser.h | 202 + lib/libtsan/sanitizer_common/sanitizer_flags.cpp | 139 + lib/libtsan/sanitizer_common/sanitizer_flags.h | 71 + lib/libtsan/sanitizer_common/sanitizer_flags.inc | 284 + lib/libtsan/sanitizer_common/sanitizer_flat_map.h | 166 + lib/libtsan/sanitizer_common/sanitizer_fuchsia.cpp | 567 ++ lib/libtsan/sanitizer_common/sanitizer_fuchsia.h | 38 + lib/libtsan/sanitizer_common/sanitizer_getauxval.h | 59 + lib/libtsan/sanitizer_common/sanitizer_glibc_version.h | 26 + lib/libtsan/sanitizer_common/sanitizer_hash.h | 67 + lib/libtsan/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc | 1533 +++++ lib/libtsan/sanitizer_common/sanitizer_interface_internal.h | 163 + lib/libtsan/sanitizer_common/sanitizer_internal_defs.h | 500 ++ lib/libtsan/sanitizer_common/sanitizer_leb128.h | 87 + lib/libtsan/sanitizer_common/sanitizer_lfstack.h | 72 + lib/libtsan/sanitizer_common/sanitizer_libc.cpp | 317 + lib/libtsan/sanitizer_common/sanitizer_libc.h | 108 + lib/libtsan/sanitizer_common/sanitizer_libignore.cpp | 131 + lib/libtsan/sanitizer_common/sanitizer_libignore.h | 126 + lib/libtsan/sanitizer_common/sanitizer_linux.cpp | 2862 +++++++++ lib/libtsan/sanitizer_common/sanitizer_linux.h | 207 + lib/libtsan/sanitizer_common/sanitizer_linux_libcdep.cpp | 1142 ++++ lib/libtsan/sanitizer_common/sanitizer_linux_s390.cpp | 222 + lib/libtsan/sanitizer_common/sanitizer_list.h | 166 + lib/libtsan/sanitizer_common/sanitizer_local_address_space_view.h | 76 + lib/libtsan/sanitizer_common/sanitizer_lzw.h | 159 + lib/libtsan/sanitizer_common/sanitizer_mac.cpp | 1465 +++++ lib/libtsan/sanitizer_common/sanitizer_mac.h | 79 + lib/libtsan/sanitizer_common/sanitizer_mac_libcdep.cpp | 29 + lib/libtsan/sanitizer_common/sanitizer_mallinfo.h | 42 + lib/libtsan/sanitizer_common/sanitizer_malloc_mac.inc | 414 ++ lib/libtsan/sanitizer_common/sanitizer_mutex.cpp | 227 + lib/libtsan/sanitizer_common/sanitizer_mutex.h | 446 ++ lib/libtsan/sanitizer_common/sanitizer_netbsd.cpp | 351 ++ lib/libtsan/sanitizer_common/sanitizer_placement_new.h | 22 + lib/libtsan/sanitizer_common/sanitizer_platform.h | 468 ++ lib/libtsan/sanitizer_common/sanitizer_platform_interceptors.h | 664 ++ lib/libtsan/sanitizer_common/sanitizer_platform_limits_freebsd.cpp | 572 ++ lib/libtsan/sanitizer_common/sanitizer_platform_limits_freebsd.h | 772 +++ lib/libtsan/sanitizer_common/sanitizer_platform_limits_linux.cpp | 103 + lib/libtsan/sanitizer_common/sanitizer_platform_limits_netbsd.cpp | 2737 +++++++++ lib/libtsan/sanitizer_common/sanitizer_platform_limits_netbsd.h | 2418 ++++++++ lib/libtsan/sanitizer_common/sanitizer_platform_limits_posix.cpp | 1363 ++++ lib/libtsan/sanitizer_common/sanitizer_platform_limits_posix.h | 1541 +++++ lib/libtsan/sanitizer_common/sanitizer_platform_limits_solaris.cpp | 371 ++ lib/libtsan/sanitizer_common/sanitizer_platform_limits_solaris.h | 498 ++ lib/libtsan/sanitizer_common/sanitizer_posix.cpp | 420 ++ lib/libtsan/sanitizer_common/sanitizer_posix.h | 135 + lib/libtsan/sanitizer_common/sanitizer_posix_libcdep.cpp | 588 ++ lib/libtsan/sanitizer_common/sanitizer_printf.cpp | 368 ++ lib/libtsan/sanitizer_common/sanitizer_procmaps.h | 128 + lib/libtsan/sanitizer_common/sanitizer_procmaps_bsd.cpp | 131 + lib/libtsan/sanitizer_common/sanitizer_procmaps_common.cpp | 192 + lib/libtsan/sanitizer_common/sanitizer_procmaps_fuchsia.cpp | 80 + lib/libtsan/sanitizer_common/sanitizer_procmaps_linux.cpp | 81 + lib/libtsan/sanitizer_common/sanitizer_procmaps_mac.cpp | 455 ++ lib/libtsan/sanitizer_common/sanitizer_procmaps_solaris.cpp | 96 + lib/libtsan/sanitizer_common/sanitizer_ptrauth.h | 43 + lib/libtsan/sanitizer_common/sanitizer_quarantine.h | 313 + lib/libtsan/sanitizer_common/sanitizer_range.cpp | 62 + lib/libtsan/sanitizer_common/sanitizer_range.h | 40 + lib/libtsan/sanitizer_common/sanitizer_redefine_builtins.h | 58 + lib/libtsan/sanitizer_common/sanitizer_report_decorator.h | 48 + lib/libtsan/sanitizer_common/sanitizer_ring_buffer.h | 168 + lib/libtsan/sanitizer_common/sanitizer_signal_interceptors.inc | 100 + lib/libtsan/sanitizer_common/sanitizer_solaris.cpp | 230 + lib/libtsan/sanitizer_common/sanitizer_solaris.h | 56 + lib/libtsan/sanitizer_common/sanitizer_stack_store.cpp | 384 ++ lib/libtsan/sanitizer_common/sanitizer_stack_store.h | 121 + lib/libtsan/sanitizer_common/sanitizer_stackdepot.cpp | 247 + lib/libtsan/sanitizer_common/sanitizer_stackdepot.h | 51 + lib/libtsan/sanitizer_common/sanitizer_stackdepotbase.h | 209 + lib/libtsan/sanitizer_common/sanitizer_stacktrace.cpp | 169 + lib/libtsan/sanitizer_common/sanitizer_stacktrace.h | 220 + lib/libtsan/sanitizer_common/sanitizer_stacktrace_libcdep.cpp | 228 + lib/libtsan/sanitizer_common/sanitizer_stacktrace_printer.cpp | 365 ++ lib/libtsan/sanitizer_common/sanitizer_stacktrace_printer.h | 115 + lib/libtsan/sanitizer_common/sanitizer_stacktrace_sparc.cpp | 78 + lib/libtsan/sanitizer_common/sanitizer_stoptheworld.h | 65 + lib/libtsan/sanitizer_common/sanitizer_stoptheworld_fuchsia.cpp | 43 + lib/libtsan/sanitizer_common/sanitizer_stoptheworld_fuchsia.h | 20 + lib/libtsan/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp | 638 ++ lib/libtsan/sanitizer_common/sanitizer_stoptheworld_mac.cpp | 181 + lib/libtsan/sanitizer_common/sanitizer_stoptheworld_netbsd_libcdep.cpp | 362 ++ lib/libtsan/sanitizer_common/sanitizer_stoptheworld_win.cpp | 175 + lib/libtsan/sanitizer_common/sanitizer_suppressions.cpp | 185 + lib/libtsan/sanitizer_common/sanitizer_suppressions.h | 56 + lib/libtsan/sanitizer_common/sanitizer_symbolizer.cpp | 144 + lib/libtsan/sanitizer_common/sanitizer_symbolizer.h | 247 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_internal.h | 174 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_libbacktrace.cpp | 209 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_libbacktrace.h | 49 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_libcdep.cpp | 578 ++ lib/libtsan/sanitizer_common/sanitizer_symbolizer_mac.cpp | 208 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_mac.h | 47 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_markup.cpp | 162 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_markup.h | 79 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_markup_constants.h | 49 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_markup_fuchsia.cpp | 85 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp | 515 ++ lib/libtsan/sanitizer_common/sanitizer_symbolizer_report.cpp | 344 ++ lib/libtsan/sanitizer_common/sanitizer_symbolizer_report_fuchsia.cpp | 33 + lib/libtsan/sanitizer_common/sanitizer_symbolizer_win.cpp | 323 + lib/libtsan/sanitizer_common/sanitizer_syscall_generic.inc | 39 + lib/libtsan/sanitizer_common/sanitizer_syscall_linux_aarch64.inc | 137 + lib/libtsan/sanitizer_common/sanitizer_syscall_linux_arm.inc | 137 + lib/libtsan/sanitizer_common/sanitizer_syscall_linux_hexagon.inc | 131 + lib/libtsan/sanitizer_common/sanitizer_syscall_linux_loongarch64.inc | 171 + lib/libtsan/sanitizer_common/sanitizer_syscall_linux_riscv64.inc | 174 + lib/libtsan/sanitizer_common/sanitizer_syscall_linux_x86_64.inc | 90 + lib/libtsan/sanitizer_common/sanitizer_syscalls_netbsd.inc | 3944 ++++++++++++ lib/libtsan/sanitizer_common/sanitizer_termination.cpp | 99 + lib/libtsan/sanitizer_common/sanitizer_thread_arg_retval.cpp | 109 + lib/libtsan/sanitizer_common/sanitizer_thread_arg_retval.h | 117 + lib/libtsan/sanitizer_common/sanitizer_thread_history.cpp | 72 + lib/libtsan/sanitizer_common/sanitizer_thread_history.h | 24 + lib/libtsan/sanitizer_common/sanitizer_thread_registry.cpp | 399 ++ lib/libtsan/sanitizer_common/sanitizer_thread_registry.h | 173 + lib/libtsan/sanitizer_common/sanitizer_thread_safety.h | 49 + lib/libtsan/sanitizer_common/sanitizer_tls_get_addr.cpp | 196 + lib/libtsan/sanitizer_common/sanitizer_tls_get_addr.h | 83 + lib/libtsan/sanitizer_common/sanitizer_type_traits.cpp | 20 + lib/libtsan/sanitizer_common/sanitizer_type_traits.h | 141 + lib/libtsan/sanitizer_common/sanitizer_unwind_fuchsia.cpp | 66 + lib/libtsan/sanitizer_common/sanitizer_unwind_linux_libcdep.cpp | 174 + lib/libtsan/sanitizer_common/sanitizer_unwind_win.cpp | 100 + lib/libtsan/sanitizer_common/sanitizer_vector.h | 124 + lib/libtsan/sanitizer_common/sanitizer_win.cpp | 1269 ++++ lib/libtsan/sanitizer_common/sanitizer_win.h | 25 + lib/libtsan/sanitizer_common/sanitizer_win_defs.h | 174 + lib/libtsan/sanitizer_common/sanitizer_win_immortalize.h | 71 + lib/libtsan/sanitizer_common/sanitizer_win_interception.cpp | 156 + lib/libtsan/sanitizer_common/sanitizer_win_interception.h | 32 + lib/libtsan/tsan_debugging.cpp | 264 + lib/libtsan/tsan_defs.h | 217 + lib/libtsan/tsan_dense_alloc.h | 196 + lib/libtsan/tsan_dispatch_defs.h | 66 + lib/libtsan/tsan_external.cpp | 133 + lib/libtsan/tsan_fd.cpp | 375 ++ lib/libtsan/tsan_fd.h | 65 + lib/libtsan/tsan_flags.cpp | 122 + lib/libtsan/tsan_flags.h | 34 + lib/libtsan/tsan_flags.inc | 82 + lib/libtsan/tsan_ignoreset.cpp | 38 + lib/libtsan/tsan_ignoreset.h | 36 + lib/libtsan/tsan_ilist.h | 189 + lib/libtsan/tsan_interceptors.h | 132 + lib/libtsan/tsan_interceptors_mac.cpp | 548 ++ lib/libtsan/tsan_interceptors_mach_vm.cpp | 53 + lib/libtsan/tsan_interceptors_memintrinsics.cpp | 43 + lib/libtsan/tsan_interceptors_posix.cpp | 3199 ++++++++++ lib/libtsan/tsan_interface.cpp | 92 + lib/libtsan/tsan_interface.h | 445 ++ lib/libtsan/tsan_interface.inc | 190 + lib/libtsan/tsan_interface_ann.cpp | 460 ++ lib/libtsan/tsan_interface_ann.h | 32 + lib/libtsan/tsan_interface_atomic.cpp | 995 +++ lib/libtsan/tsan_interface_java.cpp | 258 + lib/libtsan/tsan_interface_java.h | 99 + lib/libtsan/tsan_malloc_mac.cpp | 87 + lib/libtsan/tsan_md5.cpp | 250 + lib/libtsan/tsan_mman.cpp | 496 ++ lib/libtsan/tsan_mman.h | 80 + lib/libtsan/tsan_mutexset.cpp | 80 + lib/libtsan/tsan_mutexset.h | 91 + lib/libtsan/tsan_new_delete.cpp | 199 + lib/libtsan/tsan_platform.h | 1043 ++++ lib/libtsan/tsan_platform_linux.cpp | 655 ++ lib/libtsan/tsan_platform_mac.cpp | 307 + lib/libtsan/tsan_platform_posix.cpp | 174 + lib/libtsan/tsan_platform_windows.cpp | 33 + lib/libtsan/tsan_ppc_regs.h | 96 + lib/libtsan/tsan_preinit.cpp | 24 + lib/libtsan/tsan_report.cpp | 458 ++ lib/libtsan/tsan_report.h | 129 + lib/libtsan/tsan_rtl.cpp | 1130 ++++ lib/libtsan/tsan_rtl.h | 813 +++ lib/libtsan/tsan_rtl_aarch64.S | 227 + lib/libtsan/tsan_rtl_access.cpp | 750 +++ lib/libtsan/tsan_rtl_amd64.S | 210 + lib/libtsan/tsan_rtl_loongarch64.S | 196 + lib/libtsan/tsan_rtl_mips64.S | 214 + lib/libtsan/tsan_rtl_mutex.cpp | 578 ++ lib/libtsan/tsan_rtl_ppc64.S | 288 + lib/libtsan/tsan_rtl_proc.cpp | 59 + lib/libtsan/tsan_rtl_report.cpp | 862 +++ lib/libtsan/tsan_rtl_riscv64.S | 203 + lib/libtsan/tsan_rtl_s390x.S | 49 + lib/libtsan/tsan_rtl_thread.cpp | 370 ++ lib/libtsan/tsan_shadow.h | 193 + lib/libtsan/tsan_stack_trace.cpp | 57 + lib/libtsan/tsan_stack_trace.h | 42 + lib/libtsan/tsan_suppressions.cpp | 163 + lib/libtsan/tsan_suppressions.h | 37 + lib/libtsan/tsan_symbolize.cpp | 123 + lib/libtsan/tsan_symbolize.h | 30 + lib/libtsan/tsan_sync.cpp | 289 + lib/libtsan/tsan_sync.h | 148 + lib/libtsan/tsan_trace.h | 215 + lib/libtsan/tsan_vector_clock.cpp | 126 + lib/libtsan/tsan_vector_clock.h | 51 + lib/libtsan/ubsan/ubsan_flags.h | 46 + lib/libtsan/ubsan/ubsan_flags.inc | 28 + lib/libtsan/ubsan/ubsan_init.h | 33 + lib/libtsan/ubsan/ubsan_platform.h | 25 + lib/std/zig/system.zig | 5 + lib/tsan/builtins/assembly.h | 305 - lib/tsan/interception/interception.h | 391 -- lib/tsan/interception/interception_linux.cpp | 83 - lib/tsan/interception/interception_linux.h | 55 - lib/tsan/interception/interception_mac.cpp | 18 - lib/tsan/interception/interception_mac.h | 27 - lib/tsan/interception/interception_type_test.cpp | 46 - lib/tsan/interception/interception_win.cpp | 1443 ----- lib/tsan/interception/interception_win.h | 91 - lib/tsan/sanitizer_common/sancov_flags.h | 39 - lib/tsan/sanitizer_common/sancov_flags.inc | 20 - lib/tsan/sanitizer_common/sanitizer_addrhashmap.h | 393 -- lib/tsan/sanitizer_common/sanitizer_allocator.cpp | 214 - lib/tsan/sanitizer_common/sanitizer_allocator.h | 85 - lib/tsan/sanitizer_common/sanitizer_allocator_checks.cpp | 22 - lib/tsan/sanitizer_common/sanitizer_allocator_checks.h | 76 - lib/tsan/sanitizer_common/sanitizer_allocator_combined.h | 199 - lib/tsan/sanitizer_common/sanitizer_allocator_dlsym.h | 88 - lib/tsan/sanitizer_common/sanitizer_allocator_interface.h | 53 - lib/tsan/sanitizer_common/sanitizer_allocator_internal.h | 56 - lib/tsan/sanitizer_common/sanitizer_allocator_local_cache.h | 271 - lib/tsan/sanitizer_common/sanitizer_allocator_primary32.h | 381 -- lib/tsan/sanitizer_common/sanitizer_allocator_primary64.h | 902 --- lib/tsan/sanitizer_common/sanitizer_allocator_report.cpp | 144 - lib/tsan/sanitizer_common/sanitizer_allocator_report.h | 40 - lib/tsan/sanitizer_common/sanitizer_allocator_secondary.h | 322 - lib/tsan/sanitizer_common/sanitizer_allocator_size_class_map.h | 241 - lib/tsan/sanitizer_common/sanitizer_allocator_stats.h | 103 - lib/tsan/sanitizer_common/sanitizer_array_ref.h | 123 - lib/tsan/sanitizer_common/sanitizer_asm.h | 156 - lib/tsan/sanitizer_common/sanitizer_atomic.h | 98 - lib/tsan/sanitizer_common/sanitizer_atomic_clang.h | 99 - lib/tsan/sanitizer_common/sanitizer_atomic_msvc.h | 256 - lib/tsan/sanitizer_common/sanitizer_bitvector.h | 350 -- lib/tsan/sanitizer_common/sanitizer_bvgraph.h | 164 - lib/tsan/sanitizer_common/sanitizer_chained_origin_depot.cpp | 150 - lib/tsan/sanitizer_common/sanitizer_chained_origin_depot.h | 46 - lib/tsan/sanitizer_common/sanitizer_common.cpp | 435 -- lib/tsan/sanitizer_common/sanitizer_common.h | 1114 ---- lib/tsan/sanitizer_common/sanitizer_common_interceptors.inc | 10590 -------------------------------- lib/tsan/sanitizer_common/sanitizer_common_interceptors_format.inc | 577 -- lib/tsan/sanitizer_common/sanitizer_common_interceptors_ioctl.inc | 612 -- lib/tsan/sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc | 244 - lib/tsan/sanitizer_common/sanitizer_common_interceptors_netbsd_compat.inc | 128 - lib/tsan/sanitizer_common/sanitizer_common_interceptors_vfork_aarch64.inc.S | 48 - lib/tsan/sanitizer_common/sanitizer_common_interceptors_vfork_arm.inc.S | 49 - lib/tsan/sanitizer_common/sanitizer_common_interceptors_vfork_i386.inc.S | 64 - lib/tsan/sanitizer_common/sanitizer_common_interceptors_vfork_loongarch64.inc.S | 57 - lib/tsan/sanitizer_common/sanitizer_common_interceptors_vfork_riscv64.inc.S | 56 - lib/tsan/sanitizer_common/sanitizer_common_interceptors_vfork_x86_64.inc.S | 42 - lib/tsan/sanitizer_common/sanitizer_common_interface.inc | 61 - lib/tsan/sanitizer_common/sanitizer_common_interface_posix.inc | 16 - lib/tsan/sanitizer_common/sanitizer_common_libcdep.cpp | 256 - lib/tsan/sanitizer_common/sanitizer_common_nolibc.cpp | 37 - lib/tsan/sanitizer_common/sanitizer_common_syscalls.inc | 3217 ---------- lib/tsan/sanitizer_common/sanitizer_coverage_interface.inc | 43 - lib/tsan/sanitizer_common/sanitizer_dbghelp.h | 41 - lib/tsan/sanitizer_common/sanitizer_deadlock_detector.h | 410 -- lib/tsan/sanitizer_common/sanitizer_deadlock_detector1.cpp | 194 - lib/tsan/sanitizer_common/sanitizer_deadlock_detector2.cpp | 421 -- lib/tsan/sanitizer_common/sanitizer_deadlock_detector_interface.h | 98 - lib/tsan/sanitizer_common/sanitizer_dense_map.h | 717 --- lib/tsan/sanitizer_common/sanitizer_dense_map_info.h | 282 - lib/tsan/sanitizer_common/sanitizer_dl.cpp | 37 - lib/tsan/sanitizer_common/sanitizer_dl.h | 26 - lib/tsan/sanitizer_common/sanitizer_errno.cpp | 35 - lib/tsan/sanitizer_common/sanitizer_errno.h | 38 - lib/tsan/sanitizer_common/sanitizer_errno_codes.h | 36 - lib/tsan/sanitizer_common/sanitizer_file.cpp | 253 - lib/tsan/sanitizer_common/sanitizer_file.h | 110 - lib/tsan/sanitizer_common/sanitizer_flag_parser.cpp | 190 - lib/tsan/sanitizer_common/sanitizer_flag_parser.h | 202 - lib/tsan/sanitizer_common/sanitizer_flags.cpp | 139 - lib/tsan/sanitizer_common/sanitizer_flags.h | 71 - lib/tsan/sanitizer_common/sanitizer_flags.inc | 284 - lib/tsan/sanitizer_common/sanitizer_flat_map.h | 166 - lib/tsan/sanitizer_common/sanitizer_fuchsia.cpp | 567 -- lib/tsan/sanitizer_common/sanitizer_fuchsia.h | 38 - lib/tsan/sanitizer_common/sanitizer_getauxval.h | 59 - lib/tsan/sanitizer_common/sanitizer_glibc_version.h | 26 - lib/tsan/sanitizer_common/sanitizer_hash.h | 67 - lib/tsan/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc | 1533 ----- lib/tsan/sanitizer_common/sanitizer_interface_internal.h | 163 - lib/tsan/sanitizer_common/sanitizer_internal_defs.h | 500 -- lib/tsan/sanitizer_common/sanitizer_leb128.h | 87 - lib/tsan/sanitizer_common/sanitizer_lfstack.h | 72 - lib/tsan/sanitizer_common/sanitizer_libc.cpp | 317 - lib/tsan/sanitizer_common/sanitizer_libc.h | 108 - lib/tsan/sanitizer_common/sanitizer_libignore.cpp | 131 - lib/tsan/sanitizer_common/sanitizer_libignore.h | 126 - lib/tsan/sanitizer_common/sanitizer_linux.cpp | 2862 --------- lib/tsan/sanitizer_common/sanitizer_linux.h | 207 - lib/tsan/sanitizer_common/sanitizer_linux_libcdep.cpp | 1142 ---- lib/tsan/sanitizer_common/sanitizer_linux_s390.cpp | 222 - lib/tsan/sanitizer_common/sanitizer_list.h | 166 - lib/tsan/sanitizer_common/sanitizer_local_address_space_view.h | 76 - lib/tsan/sanitizer_common/sanitizer_lzw.h | 159 - lib/tsan/sanitizer_common/sanitizer_mac.cpp | 1465 ----- lib/tsan/sanitizer_common/sanitizer_mac.h | 79 - lib/tsan/sanitizer_common/sanitizer_mac_libcdep.cpp | 29 - lib/tsan/sanitizer_common/sanitizer_mallinfo.h | 42 - lib/tsan/sanitizer_common/sanitizer_malloc_mac.inc | 414 -- lib/tsan/sanitizer_common/sanitizer_mutex.cpp | 227 - lib/tsan/sanitizer_common/sanitizer_mutex.h | 446 -- lib/tsan/sanitizer_common/sanitizer_netbsd.cpp | 351 -- lib/tsan/sanitizer_common/sanitizer_placement_new.h | 22 - lib/tsan/sanitizer_common/sanitizer_platform.h | 468 -- lib/tsan/sanitizer_common/sanitizer_platform_interceptors.h | 664 -- lib/tsan/sanitizer_common/sanitizer_platform_limits_freebsd.cpp | 572 -- lib/tsan/sanitizer_common/sanitizer_platform_limits_freebsd.h | 772 --- lib/tsan/sanitizer_common/sanitizer_platform_limits_linux.cpp | 103 - lib/tsan/sanitizer_common/sanitizer_platform_limits_netbsd.cpp | 2737 --------- lib/tsan/sanitizer_common/sanitizer_platform_limits_netbsd.h | 2418 -------- lib/tsan/sanitizer_common/sanitizer_platform_limits_posix.cpp | 1363 ---- lib/tsan/sanitizer_common/sanitizer_platform_limits_posix.h | 1541 ----- lib/tsan/sanitizer_common/sanitizer_platform_limits_solaris.cpp | 371 -- lib/tsan/sanitizer_common/sanitizer_platform_limits_solaris.h | 498 -- lib/tsan/sanitizer_common/sanitizer_posix.cpp | 420 -- lib/tsan/sanitizer_common/sanitizer_posix.h | 135 - lib/tsan/sanitizer_common/sanitizer_posix_libcdep.cpp | 588 -- lib/tsan/sanitizer_common/sanitizer_printf.cpp | 368 -- lib/tsan/sanitizer_common/sanitizer_procmaps.h | 128 - lib/tsan/sanitizer_common/sanitizer_procmaps_bsd.cpp | 131 - lib/tsan/sanitizer_common/sanitizer_procmaps_common.cpp | 192 - lib/tsan/sanitizer_common/sanitizer_procmaps_fuchsia.cpp | 80 - lib/tsan/sanitizer_common/sanitizer_procmaps_linux.cpp | 81 - lib/tsan/sanitizer_common/sanitizer_procmaps_mac.cpp | 455 -- lib/tsan/sanitizer_common/sanitizer_procmaps_solaris.cpp | 96 - lib/tsan/sanitizer_common/sanitizer_ptrauth.h | 43 - lib/tsan/sanitizer_common/sanitizer_quarantine.h | 313 - lib/tsan/sanitizer_common/sanitizer_range.cpp | 62 - lib/tsan/sanitizer_common/sanitizer_range.h | 40 - lib/tsan/sanitizer_common/sanitizer_redefine_builtins.h | 58 - lib/tsan/sanitizer_common/sanitizer_report_decorator.h | 48 - lib/tsan/sanitizer_common/sanitizer_ring_buffer.h | 168 - lib/tsan/sanitizer_common/sanitizer_signal_interceptors.inc | 100 - lib/tsan/sanitizer_common/sanitizer_solaris.cpp | 230 - lib/tsan/sanitizer_common/sanitizer_solaris.h | 56 - lib/tsan/sanitizer_common/sanitizer_stack_store.cpp | 384 -- lib/tsan/sanitizer_common/sanitizer_stack_store.h | 121 - lib/tsan/sanitizer_common/sanitizer_stackdepot.cpp | 247 - lib/tsan/sanitizer_common/sanitizer_stackdepot.h | 51 - lib/tsan/sanitizer_common/sanitizer_stackdepotbase.h | 209 - lib/tsan/sanitizer_common/sanitizer_stacktrace.cpp | 169 - lib/tsan/sanitizer_common/sanitizer_stacktrace.h | 220 - lib/tsan/sanitizer_common/sanitizer_stacktrace_libcdep.cpp | 228 - lib/tsan/sanitizer_common/sanitizer_stacktrace_printer.cpp | 365 -- lib/tsan/sanitizer_common/sanitizer_stacktrace_printer.h | 115 - lib/tsan/sanitizer_common/sanitizer_stacktrace_sparc.cpp | 78 - lib/tsan/sanitizer_common/sanitizer_stoptheworld.h | 65 - lib/tsan/sanitizer_common/sanitizer_stoptheworld_fuchsia.cpp | 43 - lib/tsan/sanitizer_common/sanitizer_stoptheworld_fuchsia.h | 20 - lib/tsan/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp | 638 -- lib/tsan/sanitizer_common/sanitizer_stoptheworld_mac.cpp | 181 - lib/tsan/sanitizer_common/sanitizer_stoptheworld_netbsd_libcdep.cpp | 362 -- lib/tsan/sanitizer_common/sanitizer_stoptheworld_win.cpp | 175 - lib/tsan/sanitizer_common/sanitizer_suppressions.cpp | 185 - lib/tsan/sanitizer_common/sanitizer_suppressions.h | 56 - lib/tsan/sanitizer_common/sanitizer_symbolizer.cpp | 144 - lib/tsan/sanitizer_common/sanitizer_symbolizer.h | 247 - lib/tsan/sanitizer_common/sanitizer_symbolizer_internal.h | 174 - lib/tsan/sanitizer_common/sanitizer_symbolizer_libbacktrace.cpp | 209 - lib/tsan/sanitizer_common/sanitizer_symbolizer_libbacktrace.h | 49 - lib/tsan/sanitizer_common/sanitizer_symbolizer_libcdep.cpp | 578 -- lib/tsan/sanitizer_common/sanitizer_symbolizer_mac.cpp | 208 - lib/tsan/sanitizer_common/sanitizer_symbolizer_mac.h | 47 - lib/tsan/sanitizer_common/sanitizer_symbolizer_markup.cpp | 162 - lib/tsan/sanitizer_common/sanitizer_symbolizer_markup.h | 79 - lib/tsan/sanitizer_common/sanitizer_symbolizer_markup_constants.h | 49 - lib/tsan/sanitizer_common/sanitizer_symbolizer_markup_fuchsia.cpp | 85 - lib/tsan/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp | 515 -- lib/tsan/sanitizer_common/sanitizer_symbolizer_report.cpp | 344 -- lib/tsan/sanitizer_common/sanitizer_symbolizer_report_fuchsia.cpp | 33 - lib/tsan/sanitizer_common/sanitizer_symbolizer_win.cpp | 323 - lib/tsan/sanitizer_common/sanitizer_syscall_generic.inc | 39 - lib/tsan/sanitizer_common/sanitizer_syscall_linux_aarch64.inc | 137 - lib/tsan/sanitizer_common/sanitizer_syscall_linux_arm.inc | 137 - lib/tsan/sanitizer_common/sanitizer_syscall_linux_hexagon.inc | 131 - lib/tsan/sanitizer_common/sanitizer_syscall_linux_loongarch64.inc | 171 - lib/tsan/sanitizer_common/sanitizer_syscall_linux_riscv64.inc | 174 - lib/tsan/sanitizer_common/sanitizer_syscall_linux_x86_64.inc | 90 - lib/tsan/sanitizer_common/sanitizer_syscalls_netbsd.inc | 3944 ------------ lib/tsan/sanitizer_common/sanitizer_termination.cpp | 99 - lib/tsan/sanitizer_common/sanitizer_thread_arg_retval.cpp | 109 - lib/tsan/sanitizer_common/sanitizer_thread_arg_retval.h | 117 - lib/tsan/sanitizer_common/sanitizer_thread_history.cpp | 72 - lib/tsan/sanitizer_common/sanitizer_thread_history.h | 24 - lib/tsan/sanitizer_common/sanitizer_thread_registry.cpp | 399 -- lib/tsan/sanitizer_common/sanitizer_thread_registry.h | 173 - lib/tsan/sanitizer_common/sanitizer_thread_safety.h | 49 - lib/tsan/sanitizer_common/sanitizer_tls_get_addr.cpp | 196 - lib/tsan/sanitizer_common/sanitizer_tls_get_addr.h | 83 - lib/tsan/sanitizer_common/sanitizer_type_traits.cpp | 20 - lib/tsan/sanitizer_common/sanitizer_type_traits.h | 141 - lib/tsan/sanitizer_common/sanitizer_unwind_fuchsia.cpp | 66 - lib/tsan/sanitizer_common/sanitizer_unwind_linux_libcdep.cpp | 174 - lib/tsan/sanitizer_common/sanitizer_unwind_win.cpp | 100 - lib/tsan/sanitizer_common/sanitizer_vector.h | 124 - lib/tsan/sanitizer_common/sanitizer_win.cpp | 1269 ---- lib/tsan/sanitizer_common/sanitizer_win.h | 25 - lib/tsan/sanitizer_common/sanitizer_win_defs.h | 174 - lib/tsan/sanitizer_common/sanitizer_win_immortalize.h | 71 - lib/tsan/sanitizer_common/sanitizer_win_interception.cpp | 156 - lib/tsan/sanitizer_common/sanitizer_win_interception.h | 32 - lib/tsan/tsan_debugging.cpp | 264 - lib/tsan/tsan_defs.h | 217 - lib/tsan/tsan_dense_alloc.h | 196 - lib/tsan/tsan_dispatch_defs.h | 66 - lib/tsan/tsan_external.cpp | 133 - lib/tsan/tsan_fd.cpp | 375 -- lib/tsan/tsan_fd.h | 65 - lib/tsan/tsan_flags.cpp | 122 - lib/tsan/tsan_flags.h | 34 - lib/tsan/tsan_flags.inc | 82 - lib/tsan/tsan_ignoreset.cpp | 38 - lib/tsan/tsan_ignoreset.h | 36 - lib/tsan/tsan_ilist.h | 189 - lib/tsan/tsan_interceptors.h | 132 - lib/tsan/tsan_interceptors_mac.cpp | 548 -- lib/tsan/tsan_interceptors_mach_vm.cpp | 53 - lib/tsan/tsan_interceptors_memintrinsics.cpp | 43 - lib/tsan/tsan_interceptors_posix.cpp | 3199 ---------- lib/tsan/tsan_interface.cpp | 92 - lib/tsan/tsan_interface.h | 445 -- lib/tsan/tsan_interface.inc | 190 - lib/tsan/tsan_interface_ann.cpp | 460 -- lib/tsan/tsan_interface_ann.h | 32 - lib/tsan/tsan_interface_atomic.cpp | 995 --- lib/tsan/tsan_interface_java.cpp | 258 - lib/tsan/tsan_interface_java.h | 99 - lib/tsan/tsan_malloc_mac.cpp | 87 - lib/tsan/tsan_md5.cpp | 250 - lib/tsan/tsan_mman.cpp | 496 -- lib/tsan/tsan_mman.h | 80 - lib/tsan/tsan_mutexset.cpp | 80 - lib/tsan/tsan_mutexset.h | 91 - lib/tsan/tsan_new_delete.cpp | 199 - lib/tsan/tsan_platform.h | 1043 ---- lib/tsan/tsan_platform_linux.cpp | 655 -- lib/tsan/tsan_platform_mac.cpp | 307 - lib/tsan/tsan_platform_posix.cpp | 174 - lib/tsan/tsan_platform_windows.cpp | 33 - lib/tsan/tsan_ppc_regs.h | 96 - lib/tsan/tsan_preinit.cpp | 24 - lib/tsan/tsan_report.cpp | 458 -- lib/tsan/tsan_report.h | 129 - lib/tsan/tsan_rtl.cpp | 1130 ---- lib/tsan/tsan_rtl.h | 813 --- lib/tsan/tsan_rtl_aarch64.S | 227 - lib/tsan/tsan_rtl_access.cpp | 750 --- lib/tsan/tsan_rtl_amd64.S | 210 - lib/tsan/tsan_rtl_loongarch64.S | 196 - lib/tsan/tsan_rtl_mips64.S | 214 - lib/tsan/tsan_rtl_mutex.cpp | 578 -- lib/tsan/tsan_rtl_ppc64.S | 288 - lib/tsan/tsan_rtl_proc.cpp | 59 - lib/tsan/tsan_rtl_report.cpp | 862 --- lib/tsan/tsan_rtl_riscv64.S | 203 - lib/tsan/tsan_rtl_s390x.S | 49 - lib/tsan/tsan_rtl_thread.cpp | 370 -- lib/tsan/tsan_shadow.h | 193 - lib/tsan/tsan_stack_trace.cpp | 57 - lib/tsan/tsan_stack_trace.h | 42 - lib/tsan/tsan_suppressions.cpp | 163 - lib/tsan/tsan_suppressions.h | 37 - lib/tsan/tsan_symbolize.cpp | 123 - lib/tsan/tsan_symbolize.h | 30 - lib/tsan/tsan_sync.cpp | 289 - lib/tsan/tsan_sync.h | 148 - lib/tsan/tsan_trace.h | 215 - lib/tsan/tsan_vector_clock.cpp | 126 - lib/tsan/tsan_vector_clock.h | 51 - lib/tsan/ubsan/ubsan_flags.h | 46 - lib/tsan/ubsan/ubsan_flags.inc | 28 - lib/tsan/ubsan/ubsan_init.h | 33 - lib/tsan/ubsan/ubsan_platform.h | 25 - src/Compilation.zig | 66 +- src/libtsan.zig | 18 +- src/link/Coff.zig | 11 +- src/link/Elf.zig | 14 +- src/link/MachO.zig | 12 + src/link/Wasm.zig | 37 +- src/musl.zig | 3 - src/wasi_libc.zig | 3 - test/tests.zig | 6 +- 569 files changed, 91887 insertions(+), 92019 deletions(-)