2024-09-05 Jakub Jelinek * sanitizer_common/sanitizer_asm.h: Cherry-pick llvm-project revision 1c792d24e0a228ad49cc004a1c26bbd7cd87f030. * interception/interception.h: Likewise. 2024-02-16 Rainer Orth PR sanitizer/113785 * asan/asan_interceptors.cpp: Cherry-pick llvm-project revision 8c2033719a843a1880427a5e8caa5563248bce78. 2024-02-06 chenguoqi * configure.tgt: Enable tsan and lsan for loongarch64. * tsan/Makefile.am (EXTRA_libtsan_la_SOURCES): Add tsan_rtl_loongarch64.S. * tsan/Makefile.in: Regenerate. 2024-01-19 Daniel Cederman * sanitizer_common/Makefile.am (DEFS): Add @AS_SYM_ASSIGN_DEFS@. * sanitizer_common/Makefile.in: Regenerate. 2024-01-17 YunQiang Su * interception/interception.h (substitution_##func_name): Use macro C_ASM_TAIL_CALL. * sanitizer_common/sanitizer_asm.h: Define C_ASM_TAIL_CALL for MIPS with help of t9. 2024-01-02 Andreas Schwab * configure.tgt (riscv64-*-linux*): Enable LSan and TSan. 2023-11-28 Rainer Orth * LOCAL_PATCHES: Update. 2023-11-28 Rainer Orth PR sanitizer/112563 * sanitizer_common/sanitizer_redefine_builtins.h: Check HAVE_AS_SYM_ASSIGN. 2023-11-28 Rainer Orth PR sanitizer/112563 * configure.ac (libsanitizer_cv_as_sym_assign): Check for assembler symbol assignment support. * configure: Regenerate. * asan/Makefile.am (DEFS): Add @AS_SYM_ASSIGN_DEFS@. * Makefile.in, asan/Makefile.in, hwasan/Makefile.in, interception/Makefile.in, libbacktrace/Makefile.in, lsan/Makefile.in, sanitizer_common/Makefile.in, tsan/Makefile.in, ubsan/Makefile.in: Regenerate. 2023-11-21 Jakub Jelinek PR sanitizer/112562 * sanitizer_common/sanitizer_asm.h: Cherry-pick llvm-project revision a855a16a02e76a0f4192c038bb64f3773947a2f7. * interception/interception.h: Likewise. 2023-11-18 Francois-Xavier Coudert * asan/asan_mac.cpp: Protect Apple blocks behind the MISSING_BLOCKS_SUPPORT macro. 2023-11-15 Jakub Jelinek * LOCAL_PATCHES: Update revisions. 2023-11-15 Jakub Jelinek * ubsan/ubsan_handlers_cxx.h (FunctionTypeMismatchData): Forward declare. (__ubsan_handle_function_type_mismatch_v1, __ubsan_handle_function_type_mismatch_v1_abort): Declare. * ubsan/ubsan_handlers_cxx.cpp (handleFunctionTypeMismatch, __ubsan_handle_function_type_mismatch_v1, __ubsan_handle_function_type_mismatch_v1_abort): New functions readded for backwards compatibility from older ubsan. * ubsan/ubsan_interface.inc (__ubsan_handle_function_type_mismatch_v1, __ubsan_handle_function_type_mismatch_v1_abort): Readd. 2023-10-22 Iain Sandoe * asan/Makefile.am: Handle Darwin rpaths. * asan/Makefile.in: Regenerate. * configure: Regenerate. * hwasan/Makefile.am: Handle Darwin rpaths. * hwasan/Makefile.in: Regenerate. * lsan/Makefile.am: Handle Darwin rpaths. * lsan/Makefile.in: Regenerate. * tsan/Makefile.am: Handle Darwin rpaths. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.am: Handle Darwin rpaths. * ubsan/Makefile.in: Regenerate. 2023-08-07 Nick Alcock * configure: Regenerate. 2023-08-07 Alexander von Gluck IV * configure: Regenerate. 2023-08-07 Nick Alcock * configure: Regenerate. 2023-08-07 Nick Alcock * configure: Regenerate. 2023-08-07 H.J. Lu * configure: Regenerate. 2023-08-07 H.J. Lu * configure: Regenerate. 2023-08-07 Rainer Orth * sanitizer_common/sanitizer_stacktrace_sparc.cpp, sanitizer_common/sanitizer_unwind_linux_libcdep.cpp: Cherry-pick llvm-project revision 679c076ae446af81eba81ce9b94203a273d4b88a. 2023-04-30 Martin Liska PR sanitizer/109674 * hwasan/Makefile.am: Depend on liblsan. * hwasan/Makefile.in: Re-generate. 2023-04-30 Martin Liska * LOCAL_PATCHES: Update revision. 2023-04-26 Martin Liska * LOCAL_PATCHES: Change revision. 2023-04-18 Iain Sandoe * configure.tgt: Unsupport Darwin22+ until a mechanism can be found to locate dyld in the shared cache. 2023-01-31 H.J. Lu PR sanitizer/108106 * hwasan/hwasan_setjmp_x86_64.S (__interceptor_setjmp): Jump to .Linterceptor_sigsetjmp instead of __interceptor_sigsetjmp. (__interceptor_sigsetjmp): Add a local alias, .Linterceptor_sigsetjmp. 2023-01-31 Martin Liska * configure: Regenerate. 2023-01-31 YunQiang Su * configure.ac: set -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 always for mips*. * configure: Regenerate. 2023-01-17 Rainer Orth * sanitizer_common/sanitizer_platform_interceptors.h: Cherry-pick llvm-project revision 951cf656b2faaf6fc0baa867293c0cb0ab131951. 2022-12-19 Jakub Jelinek * hwasan/Makefile.am (nodist_toolexeclib_HEADERS): Set to libhwasan_preinit.o. (hwasan_files): Remove hwasan_preinit.cpp. (libhwasan_preinit.o): Copy from hwasan_preinit.o. * hwasan/Makefile.in: Regenerated. 2022-12-13 Jakub Jelinek PR sanitizer/108072 * libbacktrace/backtrace-rename.h (backtrace_uncompress_zstd): Define. 2022-12-09 liuhongt * configure.tgt: Enable hwasan for x86-64. 2022-12-04 Iain Sandoe * configure.tgt: Restrict build to Darwin 16 or newer. 2022-11-15 Martin Liska * LOCAL_PATCHES: Update local patches. 2022-11-15 Martin Liska * merge.sh: Use git clone --depth 1. 2022-10-19 Martin Liska * configure: Regenerate. 2022-10-18 Florian Weimer * configure.ac (sanitizer_supported): Include for syscall prototype. * configure: Regenerate. 2022-10-12 Martin Liska * configure: Regenerate. 2022-10-11 Olivier Hainque Olivier Hainque * configure: Regenerate. 2022-10-03 Rainer Orth PR sanitizer/105531 * sanitizer_common/sanitizer_procmaps_solaris.cpp: Cherry-pick llvm-project revision 1cd4d63fb9ab0f04c7151911dde0d58b673823de. 2022-09-04 Iain Sandoe * LOCAL_PATCHES: Update. 2022-08-31 Xi Ruoyao * configure.tgt: Allow loongarch64-*-linux*. 2022-08-30 Martin Liska * LOCAL_PATCHES: Update. 2022-08-30 Martin Liska * sanitizer_common/Makefile.am: Remove sanitizer_openbsd. * sanitizer_common/Makefile.in: Regenerate. 2022-07-22 Rainer Orth PR sanitizer/105531 * sanitizer_common/sanitizer_linux_libcdep.cpp, sanitizer_common/sanitizer_solaris.h:: Cherry-pick llvm-project revision 3776db9a4fd2080d23d6a5f52e405eea44558761. 2022-05-05 Martin Liska * LOCAL_PATCHES: Update. 2022-05-04 Martin Liska * tsan/Makefile.am: Update Makefile.am files. * hwasan/Makefile.am: Likewise. * sanitizer_common/Makefile.am: Likewise. * Makefile.in: Re-generate. * asan/Makefile.in: Likewise. * hwasan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * libbacktrace/Makefile.in: Likewise. * lsan/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. * ubsan/Makefile.in: Likewise. 2022-03-14 Xi Ruoyao * configure.tgt: Enable build on mips*64*-*-linux*. 2022-03-14 Xi Ruoyao * sanitizer_common/sanitizer_atomic_clang.h: Ensures to only include sanitizer_atomic_clang_mips.h for O32. 2022-02-15 Jakub Jelinek * sanitizer_common/sanitizer_linux_libcdep.cpp: Cherry-pick llvm-project revision ef14b78d9a144ba81ba02083fe21eb286a88732b. 2022-02-03 David Seifert Jakub Jelinek * configure.ac: Support --disable-werror. * aclocal.m4: Include also ../config/warnings.m4. * libbacktrace/Makefile.am (WARN_FLAGS): Remove. * configure: Regenerate. * Makefile.in: Regenerate. * asan/Makefile.in: Regenerate. * hwasan/Makefile.in: Regenerate. * interception/Makefile.in: Regenerate. * libbacktrace/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.in: Regenerate. 2021-12-06 H.J. Lu * LOCAL_PATCHES: Add commit 70b043845d7. 2021-12-06 H.J. Lu PR sanitizer/103466 * tsan/tsan_rtl_amd64.S (__tsan_trace_switch_thunk): Replace vmovdqu with movdqu. (__tsan_report_race_thunk): Likewise. 2021-11-28 Andrew Pinski PR sanitizer/62157 * Makefile.am: Force DIST_SUBDIRS to be SUBDIRS. * Makefile.in: Regenerate. * asan/Makefile.in: Likewise. * hwasan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * libbacktrace/Makefile.in: Likewise. * lsan/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. * ubsan/Makefile.in: Likewise. 2021-11-18 Jakub Jelinek PR bootstrap/102675 * sanitizer_common/Makefile.am: Use -DUSE_SYSTEM_MD5 in AM_CXXFLAGS of sanitizer_platform_limits_freebsd.cpp. * sanitizer_common/Makefile.in: Regenerated. 2021-11-13 H.J. Lu * LOCAL_PATCHES: Update to the corresponding revision. 2021-11-04 Martin Liska * LOCAL_PATCHES: Update git revision. 2021-10-08 H.J. Lu PR sanitizer/102632 * asan/Makefile.am (AM_CCASFLAGS): New. Set to $(EXTRA_ASFLAGS). * hwasan/Makefile.am (AM_CCASFLAGS): Likewise. * interception/Makefile.am (AM_CCASFLAGS): Likewise. * lsan/Makefile.am (AM_CCASFLAGS): Likewise. * tsan/Makefile.am (AM_CCASFLAGS): Likewise. * ubsan/Makefile.am (AM_CCASFLAGS): Likewise. * asan/Makefile.in: Regenerate. * hwasan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * lsan/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. * ubsan/Makefile.in: Likewise. 2021-10-06 H.J. Lu * LOCAL_PATCHES: Update to the corresponding revision. 2021-10-01 H.J. Lu * LOCAL_PATCHES: Update to the corresponding revision. 2021-08-11 Jakub Jelinek * sanitizer_common/sanitizer_common_interceptors.inc: Cherry-pick llvm-project revision faef0d042f523357fe5590e7cb6a8391cf0351a8. 2021-08-03 Mosè Giordano PR sanitizer/101111 * configure.tgt: Fix bashism in setting of `EXTRA_CXXFLAGS'. 2021-07-28 Ilya Leoshkevich * configure.tgt (s390*-*-linux*): Enable LSan and TSan for s390x. 2021-07-20 H.J. Lu * asan/libtool-version: Bump version. * tsan/libtool-version: Likewise. 2021-07-20 H.J. Lu * LOCAL_PATCHES: Update to the corresponding revision. 2021-05-21 Tamar Christina PR sanitizer/100379 * sanitizer_common/sanitizer_common_interceptors_ioctl.inc: Cherry-pick llvm-project revision f7c5351552387bd43f6ca3631016d7f0dfe0f135. * sanitizer_common/sanitizer_platform_limits_posix.cpp: Likewise. * sanitizer_common/sanitizer_platform_limits_posix.h: Likewise. 2021-05-13 Iain Sandoe * LOCAL_PATCHES: Add Darwin patch for __builtin_os_log_format. 2021-05-13 Iain Sandoe * sanitizer_common/sanitizer_mac.cpp : Check for the availability of __builtin_os_log_format before trying to include a header depending on it. (OS_LOG_DEFAULT): New. (os_log_error): Define to a fall-back using an older API. 2021-05-13 Martin Liska * LOCAL_PATCHES: Update to the corresponding revision. 2021-04-17 Jakub Jelinek PR sanitizer/100114 * sanitizer_common/sanitizer_posix_libcdep.cpp: Cherry-pick llvm-project revisions 82150606fb11d28813ae6da1101f5bda638165fe and b93629dd335ffee2fc4b9b619bf86c3f9e6b0023. 2021-03-08 Martin Liska PR sanitizer/98920 * asan/asan_interceptors.cpp (COMMON_INTERCEPT_FUNCTION_VER): Cherry pick. (COMMON_INTERCEPT_FUNCTION_VER_UNVERSIONED_FALLBACK): Likewise. * asan/asan_interceptors.h (ASAN_INTERCEPT_FUNC_VER_UNVERSIONED_FALLBACK): Likewise. * sanitizer_common/sanitizer_common_interceptors.inc (COMMON_INTERCEPT_FUNCTION_GLIBC_VER_MIN): Likewise. (INIT_REGEX): Likewise. * tsan/tsan_interceptors_posix.cpp (COMMON_INTERCEPT_FUNCTION_VER_UNVERSIONED_FALLBACK): Likewise. 2021-01-26 Martin Liska PR sanitizer/98828 * lsan/Makefile.am: Add missing lsan_posix.cpp file. * lsan/Makefile.in: Likewise. 2021-01-05 Samuel Thibault * configure: Re-generate. 2020-12-05 Iain Sandoe PR target/97865 * configure.tgt: Add dynamic_lookup to EXTRA_CXXFLAGS for Darwin. * configure: Regenerate. 2020-11-29 John David Anglin * configure: Regenerate. 2020-11-25 Matthew Malcomson * LOCAL_PATCHES: Add one commit. 2020-11-25 Matthew Malcomson * Makefile.am: Condition Build hwasan directory. * Makefile.in: Regenerate. * configure: Regenerate. * configure.ac: Set HWASAN_SUPPORTED based on target architecture. * configure.tgt: Likewise. 2020-11-25 Matthew Malcomson * Makefile.am: Build libhwasan. * Makefile.in: Build libhwasan. * asan/Makefile.in: Build libhwasan. * configure: Build libhwasan. * configure.ac: Build libhwasan. * hwasan/Makefile.am: New file. * hwasan/Makefile.in: New file. * hwasan/libtool-version: New file. * interception/Makefile.in: Build libhwasan. * libbacktrace/Makefile.in: Build libhwasan. * libsanitizer.spec.in: Build libhwasan. * lsan/Makefile.in: Build libhwasan. * sanitizer_common/Makefile.in: Build libhwasan. * tsan/Makefile.in: Build libhwasan. * ubsan/Makefile.in: Build libhwasan. 2020-11-21 Iain Sandoe * configure.tgt: Allow x86_64 Darwin2x. 2020-11-13 Martin Liska * LOCAL_PATCHES: Update to the latest commit. 2020-10-19 Martin Liska * LOCAL_PATCHES: Add one commit. 2020-10-18 Iain Sandoe * sanitizer_common/sanitizer_mac.h: Ensure that TARGET_OS_ macros are defined where the macOS SDK does not contain them. (TARGET_OS_OSX, TARGET_OS_IOS, TARGET_OS_TV, TARGET_OS_WATCH): Define where needed. 2020-10-16 Martin Liska * LOCAL_PATCHES: Update revision. 2020-09-21 Ian Lance Taylor * libbacktrace/backtrace-rename.h (backtrace_uncompress_lzma): Define. (backtrace_syminfo_to_full_callback): Define. (backtrace_syminfo_to_full_error_callback): Define. 2020-07-16 Rainer Orth * sanitizer_common/sanitizer_linux.cpp: Cherry-pick llvm-project revision f0e9b76c3500496f8f3ea7abe6f4bf801e3b41e7. 2020-06-09 Martin Liska * asan/Makefile.am: Replace gnu++11 with gnu++14. * interception/Makefile.am: Likewise. * libbacktrace/Makefile.am: Likewise. * lsan/Makefile.am: Likewise. * sanitizer_common/Makefile.am: Likewise. * tsan/Makefile.am: Likewise. * ubsan/Makefile.am: Likewise. * asan/Makefile.in: Regenerate. * interception/Makefile.in: Likewise. * libbacktrace/Makefile.in: Likewise. * lsan/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. * ubsan/Makefile.in: Likewise. 2020-06-02 Martin Liska * LOCAL_PATCHES: Update hash of local patches. 2020-06-02 Martin Liska * MERGE: Merge from master. 2020-05-29 H.J. Lu PR bootstrap/95413 * configure: Regenerated. 2020-05-29 Martin Liska * HOWTO_MERGE: Do not mention not existing argument. * README.gcc: Update LLVM repository location. 2020-05-26 Martin Liska * LOCAL_PATCHES: Use git hash instead of SVN id. * merge.sh: Use git instead of VCS. Update paths relative to upstream git repository. 2020-05-15 H.J. Lu PR bootstrap/95147 * configure: Regenerated. 2020-05-14 H.J. Lu * configure: Regenerated. 2020-05-01 Andreas Tobler * configure.tgt: Add x86_64- and i?86-*-freebsd* targets. 2020-05-01 Andreas Tobler * sanitizer_common/Makefile.am: Add sanitizer_platform_limits_freebsd.cpp. * sanitizer_common/Makefile.in: Regenerate. 2020-03-01 Iain Sandoe PR sanitizer/93731 * configure.tgt (x86_64-*-darwin*, i?86-*-darwin*): Enable by default only for Darwin versions greater than 12 (macOS 10.8). 2020-01-24 Maciej W. Rozycki * configure.ac: Handle `--with-toolexeclibdir='. * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * configure: Regenerate. * asan/Makefile.in: Regenerate. * interception/Makefile.in: Regenerate. * libbacktrace/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.in: Regenerate. 2019-11-26 Jakub Jelinek PR sanitizer/92154 * sanitizer_common/sanitizer_platform_limits_posix.h: Cherry-pick llvm-project revision 947f9692440836dcb8d88b74b69dd379d85974ce. * sanitizer_common/sanitizer_platform_limits_posix.cpp: Likewise. 2019-11-20 Martin Liska * libtool-version: Remove. * lsan/libtool-version: Upate comment to not mention libmudflap. * tsan/libtool-version: Likewise. * ubsan/libtool-version: Likewise. 2019-11-13 Andreas Schwab * configure.tgt (riscv64-*-linux*): Enable build. 2019-11-07 Martin Liska * all source files: Reapply all revisions mentioned in LOCAL_PATCHES. 2019-11-07 Martin Liska * merge.sh: Update to use llvm-project git repository. * all source files: Merge from upstream 82588e05cc32bb30807e480abd4e689b0dee132a. 2019-11-05 Martin Liska * ubsan/ubsan_flags.cpp (InitializeFlags): Trunk decided to print summary for all sanitizers, but we want to have UBSAN without it. 2019-11-05 Martin Liska * asan/asan_globals.cpp (CheckODRViolationViaIndicator): Reapply from LOCAL_PATCHES. (CheckODRViolationViaPoisoning): Likewise. (RegisterGlobal): Likewise. * asan/asan_interceptors.h (ASAN_INTERCEPT___CXA_RETHROW_PRIMARY_EXCEPTION): Likewise. (defined): Likewise. * asan/asan_mapping.h: Likewise. * sanitizer_common/sanitizer_linux_libcdep.cpp (defined): Likewise. * sanitizer_common/sanitizer_mac.cpp (defined): Likewise. * sanitizer_common/sanitizer_platform_limits_linux.cpp (defined): Likewise. * sanitizer_common/sanitizer_platform_limits_posix.h: Likewise. * sanitizer_common/sanitizer_stacktrace.cpp (GetCanonicFrame): Likewise. * tsan/tsan_rtl_ppc64.S: Likewise. * ubsan/ubsan_handlers.cpp (__ubsan::__ubsan_handle_cfi_bad_icall): Likewise. (__ubsan::__ubsan_handle_cfi_bad_icall_abort): Likewise. * ubsan/ubsan_handlers.h (struct CFIBadIcallData): Likewise. (struct CFICheckFailData): Likewise. (RECOVERABLE): Likewise. * ubsan/ubsan_platform.h: Likewise. 2019-11-05 Martin Liska * tsan/Makefile.am: Rename tsan_interceptors.cpp to tsan_interceptors_posix. * tsan/Makefile.in: Regenerate. 2019-11-05 Martin Liska * all source files: Merge from upstream r375507. 2019-10-22 Tamar Christina PR sanitizer/92154 * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry-pick compiler-rt revision r375220. 2019-09-27 Maciej W. Rozycki * configure: Regenerate. 2019-09-10 Christophe Lyon Mickaël Guêné * configure.tgt (arm*-*-*fdpiceabi): Sanitizers are unsupported in this configuration. 2019-08-16 Iain Sandoe * LOCAL_PATCHES: Add r274585. 2019-08-16 Iain Sandoe * asan/asan_interceptors.h: Reapply r272406. 2019-08-15 Martin Liska * LOCAL_PATCHES: Add r274540 2019-08-15 Martin Liska * tsan/tsan_rtl_ppc64.S: Reapply. 2019-08-15 Iain Sandoe PR bootstrap/91455 * Makefile.in: Regenerated. * aclocal.m4: Likewise. * asan/Makefile.in: Likewise. * configure: Likewise. * interception/Makefile.in: Likewise. * libbacktrace/Makefile.in: Likewise. * lsan/Makefile.in: Likewise. * sanitizer_common/Makefile.am: Include top_srcdir unconditionally. * sanitizer_common/Makefile.in: Regenerated. * tsan/Makefile.in: Likewise. * ubsan/Makefile.in: Likewise. 2019-08-14 Martin Liska * LOCAL_PATCHES: Refresh based on what was committed. 2019-08-14 Martin Liska * asan/asan_globals.cpp (CheckODRViolationViaIndicator): Reapply patch from trunk. (CheckODRViolationViaPoisoning): Likewise. (RegisterGlobal): Likewise. * asan/asan_mapping.h: Likewise. * sanitizer_common/sanitizer_linux_libcdep.cpp (defined): Likewise. * sanitizer_common/sanitizer_mac.cpp (defined): Likewise. * sanitizer_common/sanitizer_platform_limits_linux.cpp (defined): Likewise. * sanitizer_common/sanitizer_platform_limits_posix.h (defined): Likewise. * sanitizer_common/sanitizer_stacktrace.cpp (GetCanonicFrame): Likewise. * ubsan/ubsan_handlers.cpp (__ubsan::__ubsan_handle_cfi_bad_icall): Likewise. (__ubsan::__ubsan_handle_cfi_bad_icall_abort): Likewise. * ubsan/ubsan_handlers.h (struct CFIBadIcallData): Likewise. (struct CFICheckFailData): Likewise. (RECOVERABLE): Likewise. * ubsan/ubsan_platform.h: Likewise. 2019-08-14 Martin Liska PR sanitizer/89832 PR sanitizer/91325 * All source files: Merge from upstream 368656. 2019-06-26 Rainer Orth * sanitizer_common/sanitizer_posix_libcdep.cc: Cherry-pick compiler-rt revision 363778. 2019-06-18 Iain Sandoe PR libsanitizer/87880 * asan/asan_interceptors.h: (ASAN_INTERCEPT___CXA_RETHROW_PRIMARY_EXCEPTION): New. * asan/Makefile.am (DEFS): Add ASAN_HAS_CXA_RETHROW_PRIMARY_EXCEPTION, defined to 0. * asan/Makefile.in: Regenerated. * asan/libtool-version: Bump version. 2019-05-27 Segher Boessenkool PR target/90639 * tsan/tsan_rtl_ppc64.S: Add ".machine altivec". 2019-05-14 Rainer Orth * configure.ac (have_dl_iterate_phdr): Remove *-*-solaris2.10* handling. * configure: Regenerate. 2019-04-08 Martin Liska * LOCAL_PATCHES: Add revision. 2019-04-08 Martin Liska PR sanitizer/89941 * sanitizer_common/sanitizer_platform_limits_linux.cc (defined): Reapply patch from r259664. * sanitizer_common/sanitizer_platform_limits_posix.h (defined): Likewise. 2019-03-13 Eric Botcazou PR sanitizer/80953 Merge from LLVM revision 355980 * asan/asan_allocator.h (kAllocatorSpace): Define for SPARC. (kAllocatorSize): Likewise. (DefaultSizeClassMap): Likewise. * asan/asan_mapping.h (kSPARC64_ShadowOffset64): Define. (SHADOW_OFFSET): Define for SPARC. Include asan_mapping_sparc64.h for SPARC 64-bit. * asan/asan_mapping_sparc64.h: New file. 2019-03-13 Eric Botcazou PR sanitizer/80953 Merge from LLVM revision 355979 * asan/asan_globals.c (GetGlobalsForAddress): Use internal_memcpy to copy Global objects for SPARC with GCC. 2019-03-13 Eric Botcazou PR sanitizer/80953 Merge from LLVM revision 355978 * sanitizer_common/sanitizer_allocator_primary32.h (class SizeClassAllocator32): Assert that kSpaceSize is power of 2 if SANITIZER_SIGN_EXTENDED_ADDRESSES is set. (PointerIsMine): Deal with SANITIZER_SIGN_EXTENDED_ADDRESSES. (ComputeRegionId): Likewise. * sanitizer_common/sanitizer_linux.cc (GetMaxVirtualAddress): Return appropriate value for SPARC 64-bit. * sanitizer_common/sanitizer_platform.h (SANITIZER_MMAP_RANGE_SIZE): Define for SPARC. (SANITIZER_SIGN_EXTENDED_ADDRESSES): Define to 1 for SPARC 64-bit. 2019-03-13 Eric Botcazou PR sanitizer/80953 Merge from LLVM revision 355965 * sanitizer_common/sanitizer_linux.cc (GetWriteFlag): Implement for SPARC/Linux. (GetPcSpBp): Likewise. * sanitizer_common/sanitizer_stacktrace.cc (GetNextInstructionPc): Adjust for SPARC. * sanitizer_common/sanitizer_stacktrace.h (SANITIZER_CAN_FAST_UNWIND): Define to 1 for SPARC. * sanitizer_common/sanitizer_stacktrace_sparc.cc: Rewrite. * sanitizer_common/sanitizer_unwind_linux_libcdep.cc (SlowUnwindStack): Adjust the PC address for SPARC with GCC. 2019-03-06 Martin Liska PR sanitizer/88684 * sanitizer_common/sanitizer_platform.h (defined): Cherry pick. (SANITIZER_NON_UNIQUE_TYPEINFO): Likewise. * ubsan/ubsan_type_hash_itanium.cc (isDerivedFromAtOffset): Likewise. 2019-02-20 H.J. Lu PR sanitizer/89409 * sanitizer_common/sanitizer_linux.cc (internal_readlink): Cherry-pick compiler-rt r354451. 2019-01-23 Jonny Grant PR sanitizer/89010 * libsanitizer/README.gcc: Update to current https URLs. 2018-12-27 Martin Liska PR sanitizer/86229 * asan/asan_errors.cc (ErrorAllocTypeMismatch::Print): Cherry pick rL350085. * asan/asan_errors.h (struct ErrorAllocTypeMismatch): Likewise. 2018-11-09 Martin Liska * LOCAL_PATCHES: Include one local patch. 2018-11-09 Martin Liska PR sanitizer/87892 * sanitizer_common/sanitizer_linux_libcdep.cc (defined): Return 1 when CPU_COUNT macro is not defined. 2018-11-08 Bill Seurer * libsanitizer/sanitizer_common/sanitizer_linux.cc (CheckASLR): Disable ASLR for powerpc64 when using sanitizers. 2018-11-06 Rainer Orth PR sanitizer/80953 * configure.tgt (sparc*-*-solaris2.11*): Enable. (x86_64-*-solaris2.11* | i?86-*-solaris2.11*): Enable. 2018-11-06 Rainer Orth PR sanitizer/80953 * sanitizer_common/sanitizer_internal_defs.h, sanitizer_common/sanitizer_platform_limits_solaris.h, sanitizer_common/sanitizer_procmaps_solaris.cc, sanitizer_common/sanitizer_solaris.cc: Cherry-pick compiler-rt revision 346153. * sanitizer_common/sanitizer_stacktrace.h, sanitizer_common/sanitizer_stacktrace_sparc.cc: Cherry-pick compiler-rt revision 346155. 2018-11-05 Segher Boessenkool * LOCAL_PATCHES: Add r258525. * sanitizer_common/sanitizer_stacktrace.cc (BufferedStackTrace::FastUnwindStack): Use the correct frame offset for PowerPC SYSV ABI. 2018-11-05 Martin Liska PR sanitizer/87860 * sanitizer_common/sanitizer_linux.cc: Cherry-pick upstream r346129. 2018-10-31 Joseph Myers PR bootstrap/82856 * Makefile.am: Include multilib.am. * configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE. * Makefile.in, aclocal.m4, asan/Makefile.in, configure, interception/Makefile.in, libbacktrace/Makefile.in, lsan/Makefile.in, sanitizer_common/Makefile.in, tsan/Makefile.in, ubsan/Makefile.in: Regenerate. 2018-10-31 Martin Liska * LOCAL_PATCHES: Update to installed revisions. 2018-10-31 Martin Liska * ubsan/ubsan_platform.h: Add ifndef as we define it with -DCAN_SANITIZE_UB CFLAGS. 2018-10-31 Martin Liska * asan/asan_mapping.h: Revert shadow memory offset to 1 << 41. 2018-10-31 Martin Liska * LOCAL_PATCHES: Update patch list. * asan/asan_globals.cc (CheckODRViolationViaIndicator): Apply patches from GCC's trunk. (CheckODRViolationViaPoisoning): Likewise. (RegisterGlobal): Likewise. * sanitizer_common/sanitizer_mac.cc (defined): Likewise. * sanitizer_common/sanitizer_stacktrace.cc (GetCanonicFrame): Likewise. * ubsan/ubsan_handlers.cc (__ubsan::__ubsan_handle_cfi_bad_icall): Likewise. (__ubsan::__ubsan_handle_cfi_bad_icall_abort): Likewise. * ubsan/ubsan_handlers.h (struct CFIBadIcallData): Likewise. (struct CFICheckFailData): Likewise. (RECOVERABLE): Likewise. 2018-10-31 Martin Liska * config.h.in: Regenerate. * configure: Likewise. * sanitizer_common/Makefile.am: Include new files, remove old files. * sanitizer_common/Makefile.in: Regenerate. * ubsan/Makefile.am: Include new files, remove old files. * ubsan/Makefile.in: Likewise. * asan/Makefile.am: Include new files. * asan/Makefile.in: Regenerate. 2018-10-31 Martin Liska * All source files: Merge from upstream 345033. 2018-10-31 Martin Liska * HOWTO_MERGE: Enhance documentation. * merge.sh: Add support for git as well. 2018-08-02 Martin Liska PR sanitizer/86022 * sanitizer_common/sanitizer_linux_libcdep.cc (ThreadDescriptorSize): Cherry-pick compiler-rt revision 338606. 2018-08-01 Marek Polacek PR sanitizer/86759 * tsan/tsan_platform.h: Cherry-pick compiler-rt revision 318044. * tsan/tsan_platform_linux.cc: Cherry-pick compiler-rt revision 319180. 2018-07-25 H.J. Lu PR target/86560 * asan/asan_interceptors.cc (swapcontext) Cherry-pick compiler-rt revision 337603. * sanitizer_common/sanitizer_internal_defs.h (__has_attribute): Likewise. 2018-07-05 Jakub Jelinek Revert 2018-07-04 Maxim Ostapenko PR sanitizer/84250 * Makefile.am: Reorder libs. * Makefile.in: Regenerate. * asan/Makefile.am: Define DCAN_SANITIZE_UB=1, add dependancy from libsanitizer_ubsan.la. * asan/Makefile.in: Regenerate. * ubsan/Makefile.am: Define new libsanitizer_ubsan.la library. * ubsan/Makefile.in: Regenerate. 2018-07-04 Maxim Ostapenko PR sanitizer/84250 * Makefile.am: Reorder libs. * Makefile.in: Regenerate. * asan/Makefile.am: Define DCAN_SANITIZE_UB=1, add dependancy from libsanitizer_ubsan.la. * asan/Makefile.in: Regenerate. * ubsan/Makefile.am: Define new libsanitizer_ubsan.la library. * ubsan/Makefile.in: Regenerate. 2018-06-13 Denis Khalikov PR sanitizer/86090 * configure.ac: Check for lstat and readlink. * configure, config.h.in: Rebuild. 2018-05-31 Matthias Klose PR sanitizer/86012 * sanitizer_common/sanitizer_platform_limits_posix.cc: Define SIZEOF_STRUCT_USTAT for 32bit sparc. 2018-05-24 H.J. Lu PR sanitizer/85835 * sanitizer_common/sanitizer_platform_limits_posix.cc: Don't include for Linux. (SIZEOF_STRUCT_USTAT): New. (struct_ustat_sz): Use SIZEOF_STRUCT_USTAT for Linux. 2018-04-26 Hans-Peter Nilsson * configure.tgt : Enable build, excluding mips*64*-*-linux*. * sanitizer_common/sanitizer_platform_limits_linux.cc: Do not take the shortcut to #include for MIPS instead of the kernel . Explain why sys/stat.h is misleading or wrong to get the kernel struct stat. * sanitizer_common/sanitizer_platform_limits_posix.h [__mips__]: Correct the value for 32-bit non-android struct_kernel_stat_sz. * sanitizer_common/sanitizer_atomic_clang_other.h [_MIPS_SIM && _MIPS_SIM == _ABIO32] (lock): Add initializer for .pad member. 2018-04-24 H.J. Lu * configure: Regenerated. 2018-04-19 Jakub Jelinek * configure: Regenerated. 2018-04-18 David Malcolm PR jit/85384 * configure: Regenerate. 2018-04-18 Bill Seurer PR sanitizer/85389 * asan/asan_allocator.h (kAllocatorSpace): For __powerpc64__ change from 0xa0000000000ULL to ~(uptr)0. 2018-03-19 Jakub Jelinek PR sanitizer/84761 * sanitizer_common/sanitizer_linux_libcdep.cc (__GLIBC_PREREQ): Define if not defined. (DL_INTERNAL_FUNCTION): Don't define. (InitTlsSize): For __i386__ if not compiled against glibc 2.27+ determine at runtime whether to use regparm(3), stdcall calling convention for older glibcs or normal calling convention for newer glibcs for call to _dl_get_tls_static_info. 2018-03-14 Segher Boessenkool * sanitizer_common/sanitizer_stacktrace.cc (BufferedStackTrace::FastUnwindStack): Use the correct frame offset for PowerPC SYSV ABI. 2018-02-14 Igor Tsimbalist PR target/84148 * configure: Regenerate. 2018-02-05 Martin Liska * asan/asan_flags.inc: Cherry-pick upstream r323995. * asan/asan_report.cc (CheckForInvalidPointerPair): Cherry-pick upstream r323995. 2018-01-17 Rainer Orth PR sanitizer/82825 * sanitizer_common/sanitizer_internal_defs.h: Cherry-pick upstream r324284. 2018-01-13 Rainer Orth PR sanitizer/82824 * lsan/lsan_common_mac.cc: Cherry-pick upstream r322437. 2017-12-05 Martin Liska Jakub Jelinek * asan/asan_descriptions.cc: Cherry-pick upstream r319668. * asan/asan_descriptions.h: Likewise. * asan/asan_report.cc: Likewise. * asan/asan_thread.cc: Likewise. * asan/asan_thread.h: Likewise. 2017-11-17 Igor Tsimbalist * acinclude.m4: Add enable.m4 and cet.m4. * Makefile.in: Regenerate. * asan/Makefile.am: Update AM_CXXFLAGS. * asan/Makefile.in: Regenerate. * configure: Likewise. * configure.ac: Set CET_FLAGS. Update EXTRA_CFLAGS, EXTRA_CXXFLAGS, EXTRA_ASFLAGS. * interception/Makefile.am: Update AM_CXXFLAGS. * interception/Makefile.in: Regenerate. * libbacktrace/Makefile.am: Update AM_CFLAGS, AM_CXXFLAGS. * libbacktrace/Makefile.in: Regenerate. * lsan/Makefile.am: Update AM_CXXFLAGS. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.am: Update AM_CXXFLAGS, AM_CCASFLAGS. * sanitizer_common/sanitizer_linux_x86_64.S: Include cet.h. Add _CET_ENDBR macro. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.am: Update AM_CXXFLAGS. * tsan/Makefile.in: Regenerate. * tsan/tsan_rtl_amd64.S Include cet.h. Add _CET_ENDBR macro. * ubsan/Makefile.am: Update AM_CXXFLAGS. * ubsan/Makefile.in: Regenerate. 2017-11-08 Jakub Jelinek PR bootstrap/82670 * ubsan/Makefile.am (ubsan_files): Remove ubsan_init_standalone.cc and ubsan_signals_standalone.cc. * ubsan/Makefile.in: Regenerated. 2017-11-05 Tom de Vries PR other/82784 * asan/asan_poisoning.cc (CHECK_SMALL_REGION): Remove semicolon after "do {} while (0)". * lsan/lsan_common.cc (LOG_POINTERS, LOG_THREADS): Same. 2017-10-20 Jakub Jelinek PR sanitizer/82595 * lsan/lsan.h (__lsan_init): Add SANITIZER_INTERFACE_ATTRIBUTE. * lsan/Makefile.am (nodist_toolexeclib_HEADERS): Add liblsan_preinit.o. (lsan_files): Remove lsan_preinit.cc. (liblsan_preinit.o): New rule. * lsan/Makefile.in: Regenerated. 2017-10-19 Jakub Jelinek * All source files: Merge from upstream 315899. * asan/Makefile.am (nodist_saninclude_HEADERS): Add include/sanitizer/tsan_interface.h. * asan/libtool-version: Bump the libasan SONAME. * lsan/Makefile.am (sanitizer_lsan_files): Add lsan_common_mac.cc. (lsan_files): Add lsan_linux.cc, lsan_mac.cc and lsan_malloc_mac.cc. * sanitizer_common/Makefile.am (sanitizer_common_files): Add sancov_flags.cc, sanitizer_allocator_checks.cc, sanitizer_coverage_libcdep_new.cc, sanitizer_errno.cc, sanitizer_file.cc, sanitizer_mac_libcdep.cc and sanitizer_stoptheworld_mac.cc. Remove sanitizer_coverage_libcdep.cc and sanitizer_coverage_mapping_libcdep.cc. * tsan/Makefile.am (tsan_files): Add tsan_external.cc. * ubsan/Makefile.am (DEFS): Add -DUBSAN_CAN_USE_CXXABI=1. (ubsan_files): Add ubsan_init_standalone.cc and ubsan_signals_standalone.cc. * ubsan/libtool-version: Bump the libubsan SONAME. * asan/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.in: Regenerate. 2017-10-05 H.J. Lu PR sanitizer/82379 * configure.tgt (SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): Set to sanitizer_linux_x86_64.lo if __x86_64__ is defined by $CC. 2017-10-02 Jakub Jelinek * libbacktrace/backtrace-rename.h (backtrace_uncompress_zdebug): Define. 2017-08-07 Jakub Jelinek * include/system/sys/ptrace.h: New file. 2017-07-28 Jakub Jelinek PR sanitizer/80998 * ubsan/ubsan_handlers.cc: Cherry-pick upstream r304461. * ubsan/ubsan_checks.inc: Likewise. * ubsan/ubsan_handlers.h: Likewise. 2017-07-14 Jakub Jelinek PR sanitizer/81066 * sanitizer_common/sanitizer_linux.h: Cherry-pick upstream r307969. * sanitizer_common/sanitizer_linux.cc: Likewise. * sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc: Likewise. * tsan/tsan_platform_linux.cc: Likewise. 2017-04-06 Martin Liska PR sanitizer/80166 * sanitizer_common/sanitizer_common_interceptors.inc (INTERCEPTOR): Cherry-pick upstream r299036. 2017-03-22 Jakub Jelinek PR sanitizer/78158 * tsan/tsan_interface_atomic.cc: Cherry-pick upstream r298378. 2017-02-16 Andreas Tobler PR sanitizer/79562 * sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry-pick upstream r294806. 2017-02-11 Jakub Jelinek PR sanitizer/79341 * configure.tgt (s390*-*-linux*): Don't disable libsanitizer on s390-linux 31-bit. * sanitizer_common/sanitizer_internal_defs.h: Cherry-pick upstream r294793. * sanitizer_common/sanitizer_common_interceptors.inc: Cherry-pick upstream r294790. * sanitizer_common/sanitizer_linux_s390.cc: Cherry-pick upstream r294799. 2017-02-03 Maxim Ostapenko PR sanitizer/78663 * sanitizer_common/sanitizer_mac.cc: Cherry-pick upstream r293992. * sanitizer_common/sanitizer_platform_interceptors.h: Likewise. 2017-01-31 Jakub Jelinek * configure.tgt: Enable asan and ubsan on 64-bit s390*-*-linux*. 2017-01-24 Jakub Jelinek * configure.tgt: Enable tsan and lsan on powerpc64{,le}-*-linux*. PR sanitizer/79168 * merge.sh (change_comment_headers): Don't remove 2nd and 3rd line if the 3rd line doesn't contain 'The LLVM Compiler Infrastructure' text. * sanitizer_common/sanitizer_linux_mips64.S: Regenerated. * sanitizer_common/sanitizer_linux_x86_64.S: Likewise. * tsan/tsan_ppc_regs.h: Likewise. * tsan/tsan_rtl_aarch64.S: Likewise. * tsan/tsan_rtl_mips64.S: Likewise. * tsan/tsan_rtl_ppc64.S: Likewise. 2017-01-21 Jakub Jelinek PR other/79046 * interception/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * asan/Makefile.am (gcc_version): Likewise. * ubsan/Makefile.am (gcc_version): Likewise. * sanitizer_common/Makefile.am (gcc_version): Likewise. * lsan/Makefile.am (gcc_version): Likewise. * tsan/Makefile.am (gcc_version): Likewise. * interception/Makefile.in: Regenerated. * asan/Makefile.in: Regenerated. * ubsan/Makefile.in: Regenerated. * sanitizer_common/Makefile.in: Regenerated. * lsan/Makefile.in: Regenerated. * tsan/Makefile.in: Regenerated. 2017-01-17 Jakub Jelinek PR other/79046 * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * libbacktrace/Makefile.in: Regenerated. * interception/Makefile.in: Regenerated. * asan/Makefile.in: Regenerated. * ubsan/Makefile.in: Regenerated. * configure: Regenerated. * sanitizer_common/Makefile.in: Regenerated. * lsan/Makefile.in: Regenerated. * Makefile.in: Regenerated. * tsan/Makefile.in: Regenerated. 2017-01-10 James Clarke PR sanitizer/78992 * sanitizer_common/sanitizer_platform_limits_posix.h (struct __sanitizer_sigaction): Cherry-pick upstream r291561. 2016-11-30 Maxim Ostapenko * LOCAL_PATCHES: Add revision. 2016-11-30 Maxim Ostapenko PR sanitizer/78532 * sanitizer_common/sanitizer_platform_limits_posix.h (__sanitizer_sigaction): Adjust for sparc targets and various Glibc versions. 2016-11-29 Markus Trippelsdorf * LOCAL_PATCHES: Remove r242480. 2016-11-20 Rainer Orth * LOCAL_PATCHES: Add revision. 2016-11-20 Jack Howarth PR sanitizer/78267 * sanitizer_common/sanitizer_mac.cc: Include only if compiler supports blocks extension. 2016-11-16 Markus Trippelsdorf * LOCAL_PATCHES: Add revision. 2016-11-16 Markus Trippelsdorf PR sanitizer/78294 * tsan/tsan_rtl.cc: Add missing attribute. 2016-11-16 Maxim Ostapenko * LOCAL_PATCHES: New file. 2016-11-16 Maxim Ostapenko PR sanitizer/78307 * ubsan/ubsan_handlers.cc (__ubsan_handle_cfi_bad_icall): New function. ( __ubsan_handle_cfi_bad_icall_abort): Likewise. * ubsan/ubsan_handlers.h (struct CFIBadIcallData): New type. * ubsan/ubsan_handlers_cxx.cc (__ubsan_handle_cfi_bad_type): New function. (__ubsan_handle_cfi_bad_type_abort): Likewise. * ubsan/ubsan_handlers_cxx.h (struct CFIBadTypeData): New type. (__ubsan_handle_cfi_bad_type): Export function. (__ubsan_handle_cfi_bad_type_abort): Likewise. * HOWTO_MERGE: Update documentation. 2016-11-15 Matthias Klose * configure: Regenerate. 2016-11-09 Maxim Ostapenko * asan/asan_globals.cc (RegisterGlobal): Do not call CheckODRViolationViaPoisoning. (CheckODRViolationViaPoisoning): Remove. 2016-11-09 Maxim Ostapenko * sanitizer_common/sanitizer_stacktrace.cc (GetCanonicFrame): Assume we compiled code with GCC when extracting the caller PC for ARM if no valid frame pointer is available. 2016-11-09 Maxim Ostapenko PR sanitizer/63958 Reapply: 2014-10-14 David S. Miller * sanitizer_common/sanitizer_platform_limits_linux.cc (time_t): Define at __kernel_time_t, as needed for sparc. (struct __old_kernel_stat): Don't check if __sparc__ is defined. * libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h (__sanitizer): Define struct___old_kernel_stat_sz, struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc. (__sanitizer_ipc_perm): Adjust for sparc targets. (__sanitizer_shmid_ds): Likewsie. (__sanitizer_sigaction): Likewise. (IOC_SIZE): Likewsie. 2016-11-09 Maxim Ostapenko * All source files: Merge from upstream 285547. * configure.tgt (SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): New variable. * configure.ac (SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): Handle it. * asan/Makefile.am (asan_files): Add new files. * asan/Makefile.in: Regenerate. * ubsan/Makefile.in: Likewise. * lsan/Makefile.in: Likewise. * tsan/Makefile.am (tsan_files): Add new files. * tsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.am (sanitizer_common_files): Add new files. (EXTRA_libsanitizer_common_la_SOURCES): Define. (libsanitizer_common_la_LIBADD): Likewise. (libsanitizer_common_la_DEPENDENCIES): Likewise. * sanitizer_common/Makefile.in: Regenerate. * interception/Makefile.in: Likewise. * libbacktace/Makefile.in: Likewise. * Makefile.in: Likewise. * configure: Likewise. * merge.sh: Handle builtins/assembly.h merging. * builtins/assembly.h: New file. * asan/libtool-version: Bump the libasan SONAME. 2016-09-21 Jakub Jelinek PR sanitizer/77567 * asan/asan_new_delete.cc: Cherry-pick upstream r282019. 2016-09-05 Jakub Jelinek PR sanitizer/77396 * asan/asan_globals.cc: Cherry-pick upstream r280657. 2016-08-12 Jakub Jelinek PR sanitizer/71042 * tsan/tsan_platform_linux.cc: Cherry-pick upstream r278292. * tsan/tsan_rtl_aarch64.S: Likewise. 2016-07-23 Alan Modra Revert 2015-11-09 Alan Modra * configure.ac: Don't substitute OBSTACK_DEFS. * asan/Makefile.am: Remove OBSTACK_DEFS from DEFS. * tsan/Makefile.am: Likewise. * configure: Regenerate. * Makefile.in: Regenerate. * asan/Makefile.in: Regenerate. * interception/Makefile.in: Regenerate. * libbacktrace/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.in: Regenerate. 2016-05-17 Jakub Jelinek PR sanitizer/71160 * asan/asan_malloc_linux.cc: Cherry pick upstream r254395 and r269633. 2016-04-21 Maxim Ostapenko PR sanitizer/70624 * asan/asan_mac.cc: Cherry pick upstream r266868. 2016-01-19 Jakub Jelinek PR sanitizer/68824 * tsan/tsan_interceptors.cc (NEED_TLS_GET_ADDR, __tls_get_addr, InitializeInterceptors): Cherry pick upstream r258119. 2016-01-14 Andreas Tobler * configure.ac: Replace the hard-coded -ldl requirement for link_sanitizer_common with a configure time check for -ldl. * configure: Regenerate. 2015-11-24 Maxim Ostapenko * include/system/linux/asm/ptrace.h: Move to ... * include/system/asm/ptrace.h: ... this. 2015-11-24 Maxim Ostapenko * include/system/linux/asm/ptrace.h: New header. 2015-11-23 Maxim Ostapenko * All source files: Merge from upstream r253555. * configure.tgt: Enable LSan on aarch64-*-linux* targets. Add new dependences for TSan for aarch64-*-linux* targets. * tsan/Makefile.am: Add new source files. * configure: Regenerate. * tsan/Makefile.in: Likewise. 2015-11-09 Alan Modra * sanitizer_common/sanitizer_common_interceptors.inc: Update size params for _obstack_begin_1, _obstack_begin, _obstack_newchunk interceptors. * configure.ac: Substitute OBSTACK_DEFS. * asan/Makefile.am: Add OBSTACK_DEFS to DEFS. * tsan/Makefile.am: Likewise. * configure: Regenerate. * Makefile.in: Regenerate. * asan/Makefile.in: Regenerate. * interception/Makefile.in: Regenerate. * libbacktrace/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.in: Regenerate. 2015-10-22 Maxim Ostapenko PR bootstrap/68041 * configure.ac (link_sanitizer_common): Link against librt only if it contains shm_open, required by sanitizers. (CXX_ABI_NEEDED): Remove variable. * configure: Regenerate. * ubsan/Makefile.am (libubsan_la_LIBADD): Do not add -lc++abi anymore. * ubsan/Makefile.in: Regenerate. 2015-10-21 Maxim Ostapenko * HOWTO_MERGE: New file. 2015-10-21 Maxim Ostapenko * sanitizer_common/sanitizer_stacktrace.cc (GetCanonicFrame): Assume we compiled code with GCC when extracting the caller PC for ARM if no valid frame pointer is available. 2015-10-21 Maxim Ostapenko PR bootstrap/63888 Reapply: 2015-02-20 Jakub Jelinek * asan/asan_globals.cc (RegisterGlobal): Disable detect_odr_violation support until it is rewritten upstream. * c-c++-common/asan/pr63888.c: New test. 2015-10-21 Maxim Ostapenko PR sanitizer/63958 Reapply: 2014-10-14 David S. Miller * sanitizer_common/sanitizer_platform_limits_linux.cc (time_t): Define at __kernel_time_t, as needed for sparc. (struct __old_kernel_stat): Don't check if __sparc__ is defined. * libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h (__sanitizer): Define struct___old_kernel_stat_sz, struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc. (__sanitizer_ipc_perm): Adjust for sparc targets. (__sanitizer_shmid_ds): Likewsie. (__sanitizer_sigaction): Likewise. (IOC_SIZE): Likewsie. 2015-10-21 Maxim Ostapenko * All source files: Merge from upstream r250806. * configure.ac (link_sanitizer_common): Add -lrt flag. * configure.tgt: Enable TSAN and LSAN for aarch64-linux targets. Set USE_CXX_ABI_FLAG=true for darwin. * asan/Makefile.am (asan_files): Add new files. (DEFS): Add DCAN_SANITIZE_UB=0 and remove unused and legacy DASAN_FLEXIBLE_MAPPING_AND_OFFSET=0. * asan/Makefile.in: Regenerate. * ubsan/Makefile.am (ubsan_files): Add new files. (DEFS): Add DCAN_SANITIZE_UB=1. (libubsan_la_LIBADD): Add -lc++abi if USE_CXX_ABI_FLAG is true. * ubsan/Makefile.in: Regenerate. * tsan/Makefile.am (tsan_files): Add new files. (DEFS): Add DCAN_SANITIZE_UB=0. * tsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.am (sanitizer_common_files): Add new files. * sanitizer_common/Makefile.in: Regenerate. * asan/libtool-version: Bump the libasan SONAME. 2015-09-09 Markus Trippelsdorf PR sanitizer/67258 * ubsan/ubsan_type_hash.cc: Cherry pick upstream r244101. 2015-07-29 Markus Trippelsdorf PR sanitizer/63927 * sanitizer_common/sanitizer_stacktrace.h: Use fast unwinder for PowerPC. 2015-07-28 Bill Schmidt PR sanitizer/63927 * sanitizer_common/sanitizer_stacktrace.cc (BufferedStackTrace::FastUnwindStack): Fix code for PowerPC to find the link register at an offset of 16 from the base of the caller's stack frame. 2015-05-13 Michael Haubenwallner * Makefile.in: Regenerated with automake-1.11.6. * aclocal.m4: Likewise. * asan/Makefile.in: Likewise. * configure: Likewise. * interception/Makefile.in: Likewise. * libbacktrace/Makefile.in: Likewise. * lsan/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. * ubsan/Makefile.in: Likewise. 2015-04-13 Yury Gribov PR sanitizer/64839 * sanitizer_common/sanitizer_platform.h: Cherry pick upstream r234470. * sanitizer_common/sanitizer_platform_limits_posix.cc: Ditto. * configure.ac (RPC_DEFS): Check for precense of RPC headers. * sanitizer_common/Makefile.am (DEFS): Pass info to compiler. * Makefile.in: Regenerate. * asan/Makefile.in: Regenerate. * config.h.in: Regenerate. * configure: Regenerate. * interception/Makefile.in: Regenerate. * libbacktrace/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.in: Regenerate. 2015-03-23 Christophe Lyon PR sanitizer/59009 * sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry pick upstream r230324. * sanitizer_common/sanitizer_platform.h: Likewise. * sanitizer_common/sanitizer_common_syscalls.inc: Likewise. 2015-03-11 Bernd Edlinger * tsan/tsan_rtl_report.cc (ScopedReport::AddThread): Cherry pick upstream 224508 and 224755. 2015-03-09 Jakub Jelinek PR sanitizer/63958 Reapply: 2014-10-14 David S. Miller * sanitizer_common/sanitizer_platform_limits_linux.cc (time_t): Define at __kernel_time_t, as needed for sparc. (struct __old_kernel_stat): Don't check if __sparc__ is defined. * libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h (__sanitizer): Define struct___old_kernel_stat_sz, struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc. (__sanitizer_ipc_perm): Adjust for sparc targets. (__sanitizer_shmid_ds): Likewsie. (__sanitizer_sigaction): Likewise. (IOC_SIZE): Likewsie. 2015-02-27 Peter Bergner * configure.tgt: Enable build on powerpc*le-*-linux. 2015-02-23 Jakub Jelinek PR bootstrap/63888 * asan/asan_globals.cc (RegisterGlobal): Disable detect_odr_violation support until it is rewritten upstream. 2015-01-26 Matthias Klose * configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC. * configure: Regenerate. 2015-01-25 Venkataramanan Kumar * configure.ac (TSAN_TARGET_DEPENDENT_OBJECTS): Undefine. * configure: Regenerate. * configure.tgt (TSAN_TARGET_DEPENDENT_OBJECTS): Define. 2015-01-25 Venkataramanan Kumar * configure.ac (TSAN_TARGET_DEPENDENT_OBJECTS): Define. * configure: Regenerate. * tsan/Makefile.am (EXTRA_libtsan_la_SOURCES): Define. (libtsan_la_DEPENDENCIES): Likewise. * Makefile.in: Regenerate. * asan/Makefile.in: Regenerate. * interception/Makefile.in: Regenerate. * libbacktrace/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.in: Regenerate. 2015-01-22 Jakub Jelinek * tsan/tsan_rtl.h: Cherry pick upstream r226829. 2015-01-21 Jakub Jelinek PR sanitizer/64435 * sanitizer_common/sanitizer_platform_limits_posix.h: Cherry pick upstream r226637. * sanitizer_common/sanitizer_platform_limits_posix.cc: Likewise. * sanitizer_common/sanitizer_posix.cc: Cherry pick upstream r226639. 2015-01-20 Jakub Jelinek PR sanitizer/64632 * ubsan/ubsan_type_hash.cc: Cherry pick upstream r224972. 2015-01-19 Jakub Jelinek PR sanitizer/64435 * sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry pick upstream r223925. 2015-01-13 Jakub Jelinek * sanitizer_common/sanitizer_deadlock_detector.h: Cherry pick upstream r224518 and r224519. * tsan/tsan_rtl_thread.cc: Cherry pick upstream r224702 and r224834. 2014-12-16 Jakub Jelinek * sanitizer_common/sanitizer_symbolizer_libbacktrace.cc, sanitizer_common/sanitizer_symbolizer_libbacktrace.h, sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc: Cherry pick upstream r224308. 2014-11-21 H.J. Lu PR bootstrap/63784 * configure: Regenerated. 2014-11-21 Jakub Jelinek PR target/61137 * config/ia64/ia64.c (ia64_attribute_takes_identifier_p): New function. (TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Redefine to it. 2014-11-14 Uros Bizjak * sanitizer_common/Makefile.am (AM_CXXFLAGS): Use -std=gnu++11. * asan/Makefile.am (AM_CXXFLAGS): Ditto. * lsan/Makefile.am (AM_CXXFLAGS): Ditto. * interception/Makefile.am (AM_CXXFLAGS): Ditto. * tsan/Makefile.am (AM_CXXFLAGS): Ditto. * libbacktrace/Makefile.am (AM_CXXFLAGS): Ditto. * ubsan/Makefile.am (AM_CXXFLAGS): Ditto. * sanitizer_common/Makefile.in: Regenerate. * asan/Makefile.in: Ditto. * lsan/Makefile.in: Ditto. * interception/Makefile.in: Ditto. * tsan/Makefile.in: Ditto. * libbacktrace/Makefile.in: Ditto. * ubsan/Makefile.in: Ditto. 2014-11-13 Kostya Serebryany * All source files: Merge from upstream r221802. * sanitizer_common/sanitizer_symbolizer_libbacktrace.cc (LibbacktraceSymbolizer::SymbolizeData): Replace 'address' with 'start' to follow the new interface. * asan/Makefile.am (AM_CXXFLAGS): Added -std=c++11. * interception/Makefile.am (AM_CXXFLAGS): Added -std=c++11. * libbacktrace/Makefile.am (AM_CXXFLAGS): Added -std=c++11. * lsan/Makefile.am (AM_CXXFLAGS): Added -std=c++11. * sanitizer_common/Makefile.am (sanitizer_common_files): Added new files. (AM_CXXFLAGS): Added -std=c++11. * tsan/Makefile.am (AM_CXXFLAGS): Added -std=c++11. * ubsan/Makefile.am (AM_CXXFLAGS): Added -std=c++11. * asan/Makefile.in: Regenerate. * interception/Makefile.in: Regenerate. * libbacktrace/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.in: Regenerate. 2014-11-11 Francois-Xavier Coudert PR target/63610 * configure: Regenerate. 2014-10-16 Martin Liska * asan/Makefile.am: IPA ICF pass is disabled. * asan/Makefile.in: Likewise. 2014-10-14 David S. Miller * sanitizer_common/sanitizer_platform_limits_linux.cc (time_t): Define at __kernel_time_t, as needed for sparc. (struct __old_kernel_stat): Don't check if __sparc__ is defined. * libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h (__sanitizer): Define struct___old_kernel_stat_sz, struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc. (__sanitizer_ipc_perm): Adjust for sparc targets. (__sanitizer_shmid_ds): Likewsie. (__sanitizer_sigaction): Likewsie. (IOC_SIZE): Likewsie. 2014-10-14 Jakub Jelinek * ubsan/Makefile.am (DEFS): Add -DPIC. * ubsan/Makefile.in: Regenerated. 2014-09-26 Christophe Lyon * configure.tgt: Enable build on aarch64*-linux. 2014-09-19 Kostya Serebryany * All source files: Merge from upstream r218156. * asan/Makefile.am (asan_files): Added new files. * asan/Makefile.in: Regenerate. * ubsan/Makefile.am (ubsan_files): Added new files. * ubsan/Makefile.in: Regenerate. * tsan/Makefile.am (tsan_files): Added new files. * tsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.am (sanitizer_common_files): Added new files. * sanitizer_common/Makefile.in: Regenerate. * asan/libtool-version: Bump the libasan SONAME. 2014-09-10 Jakub Jelinek * ubsan/ubsan_handlers.cc, ubsan/ubsan_handlers.h: Cherry pick upstream r215485, r217389, r217391 and r217400. 2014-06-23 Paolo Carlini * sanitizer_common/sanitizer_common_interceptors.inc: Cherry pick upstream r211008. 2014-06-11 Richard Biener * asan/asan_linux.cc: Cherry pick upstream r210012. 2014-05-30 Jakub Jelinek * sanitizer_common/sanitizer_stacktrace.cc: Cherry pick upstream r209879. * sanitizer_common/sanitizer_common.h: Likewise. * asan/asan_mapping.h: Likewise. * asan/asan_linux.cc: Likewise. * tsan/tsan_mman.cc: Cherry pick upstream r209744. * sanitizer_common/sanitizer_allocator.h: Likewise. 2014-05-23 Marek Polacek * ubsan/ubsan_value.cc (getFloatValue): Handle 96-bit floating-point types. 2014-05-22 Kostya Serebryany * All source files: Merge from upstream r209283. * asan/Makefile.am (asan_files): Added new files. * asan/Makefile.in: Regenerate. * tsan/Makefile.am (tsan_files): Added new files. * tsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.am (sanitizer_common_files): Added new files. * sanitizer_common/Makefile.in: Regenerate. 2014-05-14 Yury Gribov PR sanitizer/61100 * Makefile.am (nodist_saninclude_HEADERS): Install public headers. * Makefile.in: Regenerate. 2014-03-07 Rainer Orth * libbacktrace/Makefile.am (libsanitizer_libbacktrace_la_SOURCES): Add ../../libbacktrace/sort.c. * libbacktrace/Makefile.in: Regenerate. * libbacktrace/backtrace-rename.h (backtrace_qsort): Define. 2014-03-03 Bill Schmidt * configure.tgt: Unsupported for little endian PowerPC for now. 2014-02-04 Jakub Jelinek PR sanitizer/60055 * tsan/tsan_flags.cc (__tsan_default_options): Add SANITIZER_INTERFACE_ATTRIBUTE. Backport from upstream r200747. * tsan/tsan_rtl.cc (__tsan::OnFinalize): Likewise. PR sanitizer/60038 * sanitizer_common/sanitizer_linux_libcdep.cc: Include sanitizer_atomic.h and unistd.h. (kThreadDescriptorSize): Made static, remove initializer and const, change type to atomic_uintptr_t. (ThreadDescriptorSize): Use confstr(_CS_GNU_LIBC_VERSION, ...) to query glibc version, compute kThreadDescriptorSize depending on glibc version minor number. (GetThreadStackAndTls): Use ThreadDescriptorSize() instead of kThreadDescriptorSize directly. 2014-01-23 Yury Gribov Jakub Jelinek PR sanitizer/57316 * configure.ac: Check for missing syscalls. * Makefile.am: Likewise. * configure: Regenerate. * Makefile.in: Regenerate. 2014-01-09 Jakub Jelinek * sanitizer_common/sanitizer_symbolizer_libbacktrace.h (LibbacktraceSymbolizer::Demangle): New declaration. * sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc (POSIXSymbolizer::Demangle): Use libbacktrace_symbolizer_'s Demangle method if possible. * sanitizer_common/sanitizer_symbolizer_libbacktrace.cc: Include "demangle.h" if SANITIZE_CP_DEMANGLE is defined. (struct CplusV3DemangleData): New type. (CplusV3DemangleCallback, CplusV3Demangle): New functions. (SymbolizeCodePCInfoCallback, SymbolizeCodeCallback, SymbolizeDataCallback): Use CplusV3Demangle. * sanitizer_common/Makefile.am (AM_CXXFLAGS): Add -DSANITIZE_CP_DEMANGLE and -I $(top_srcdir)/../include. * libbacktrace/backtrace-rename.h (cplus_demangle_builtin_types, cplus_demangle_fill_ctor, cplus_demangle_fill_dtor, cplus_demangle_fill_extended_operator, cplus_demangle_fill_name, cplus_demangle_init_info, cplus_demangle_mangled_name, cplus_demangle_operators, cplus_demangle_print, cplus_demangle_print_callback, cplus_demangle_type, cplus_demangle_v3, cplus_demangle_v3_callback, is_gnu_v3_mangled_ctor, is_gnu_v3_mangled_dtor, java_demangle_v3, java_demangle_v3_callback): Define. (__asan_internal_memcmp, __asan_internal_strncmp): New prototypes. (memcmp, strncmp): Redefine. * libbacktrace/Makefile.am (libsanitizer_libbacktrace_la_SOURCES): Add ../../libiberty/cp-demangle.c. * libbacktrace/bridge.cc (__asan_internal_memcmp, __asan_internal_strncmp): New functions. * sanitizer_common/Makefile.in: Regenerated. * libbacktrace/Makefile.in: Regenerated. * configure: Regenerated. * configure.ac: Regenerated. * config.h.in: Regenerated. * sanitizer_common/Makefile.am (AM_CPPFLAGS): Add -isystem $(top_srcdir)/include/system. * sanitizer_common/Makefile.in: Regenerated. * include/system/linux/aio_abi.h: New header. * include/system/linux/mroute.h: New header. * include/system/linux/mroute6.h: New header. * include/system/linux/perf_event.h: New header. * include/system/linux/types.h: New header. PR sanitizer/59136 * sanitizer_common/Makefile.am (AM_CXXFLAGS): If LIBBACKTRACE_SUPPORTED add -DSANITIZER_LIBBACKTRACE and -I/-include flags. * lsan/Makefile.am (liblsan_la_LIBADD): Add libsanitizer_libbacktrace.la if LIBBACKTRACE_SUPPORTED. * tsan/Makefile.am (libtsan_la_LIBADD): Likewise. * ubsan/Makefile.am (libubsan_la_LIBADD): Likewise. * asan/Makefile.am (libasan_la_LIBADD): Likewise. * Makefile.am (SUBDIRS): If LIBBACKTRACE_SUPPORTED add libbacktrace. * README.gcc: Document that also lsan and ubsan are maintained in compiler-rt upstream. * libbacktrace/Makefile.am: New file. * libbacktrace/backtrace-rename.h: New file. * libbacktrace/backtrace-supported.h.in: New file. * libbacktrace/bridge.cc: New file. * configure.ac: Add tests needed for libbacktrace build within libsanitizer. * sanitizer_common/Makefile.in: Regenerated. * lsan/Makefile.in: Regenerated. * tsan/Makefile.in: Regenerated. * ubsan/Makefile.in: Regenerated. * libbacktrace/Makefile.in: Generated. * config.h.in: Regenerated. * configure: Regenerated. * Makefile.in: Regenerated. * interception/Makefile.in: Regenerated. * asan/Makefile.in: Regenerated. * aclocal.m4: Regenerated. 2013-12-19 Kostya Serebryany * sanitizer_common/sanitizer_platform_limits_posix.cc: workaround for missing definition of EOWNERDEAD, backport from upstream r196779. 2013-12-06 H.J. Lu * sanitizer_common/sanitizer_platform_limits_posix.h (__sanitizer_shmid_ds): Use u64 on time fields for x32. (__sanitizer_clock_t): Use long long for x32. 2013-12-06 H.J. Lu * sanitizer_common/sanitizer_platform_limits_linux.cc: Include , instead of , if __x86_64__ is defined. (struct___old_kernel_stat_sz): Don't check if __x86_64__ is defined. 2013-12-05 H.J. Lu * configure.ac (link_sanitizer_common): Add -lm. * configure: Regenerated. 2013-12-05 Kostya Serebryany * All source files: Merge from upstream r196489. * merge.sh: Add *.S to the list of merged files. 2013-12-05 Yury Gribov PR sanitizer/59368 * Makefile.am (gcc_version): Added gcc_version. * Makefile.in: Regenerate. 2013-12-05 Kostya Serebryany * All source files: Merge from upstream r196090. * tsan/Makefile.am (tsan_files): Added new files. * tsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.am (sanitizer_common_files): Added new fles. * sanitizer_common/Makefile.in: Regenerate. * lsan/Makefile.am (lsan_files): Added new files. * lsan/Makefile.in: Regenerate. 2013-11-29 Jakub Jelinek Yury Gribov PR sanitizer/59063 * libsanitizer.spec.in: Add spec file to hold link flags for various sanitizer libs. * configure.ac: Check whether clock_* routines come from librt. * asan/Makefile.am (libasan_la_LDFLAGS): Libs now come from configure.ac. * tsan/Makefile.am (libtsan_la_LDFLAGS): Likewise. * ubsan/Makefile.am (libubsan_la_LDFLAGS): Likewise. * lsan/Makefile.am (liblsan_la_LDFLAGS): Likewise. * asan/Makefile.in: Regenerate. * interception/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * ubsan/Makefile.in: Regenerate. * Makefile.in: Regenerate. * configure: Regenerate. 2013-11-28 Jakub Jelinek Yury Gribov PR sanitizer/59106 * ubsan/Makefile.am (AM_CXXFLAGS): Disable -frtti for files that don't need it. * ubsan/Makefile.in: Regenerated. 2013-11-22 Jakub Jelinek PR sanitizer/59061 * configure.tgt: Set LSAN_SUPPORTED=yes for x86_64-linux. * configure.ac (LSAN_SUPPORTED): New AM_CONDITIONAL. * configure: Regenerated. * lsan/Makefile.am (toolexeclib_LTLIBRARIES, lsan_files, liblsan_la_SOURCES, liblsan_la_LIBADD, liblsan_la_LDFLAGS): Add. * lsan/Makefile.in: Regenerated. 2013-11-22 Mike Stump * sanitizer_common/sanitizer_linux.cc (__sanitizer): Grab one change from upstream to fix build. 2013-11-18 Yury Gribov PR sanitizer/59106 * asan/Makefile.am (AM_CXXFLAGS): Add -fno-rtti. * interception/Makefile.am (AM_CXXFLAGS): Likewise. * lsan/Makefile.am (AM_CXXFLAGS): Likewise. * sanitizer_common/Makefile.am (AM_CXXFLAGS): Likewise. * tsan/Makefile.am (AM_CXXFLAGS): Likewise. * asan/Makefile.in: Regenerate. * interception/Makefile.in: Regenerate. * tsan/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.in: Regenerate. 2013-11-15 Kostya Serebryany PR sanitizer/58994 Backport from upstream revision 194573 * asan/asan_interceptors.cc (COMMON_INTERCEPTOR_ENTER): Fall back to the original functions in the common libsanitizer interceptors and the __cxa_atexit() interceptor on Darwin. 2013-11-13 Peter Bergner PR sanitizer/59009 * sanitizer_common/sanitizer_platform_limits_posix.cc: Temporarily ifdef out more source. 2013-11-12 Jakub Jelinek * sanitizer_common/sanitizer_platform_limits_linux.cc: Temporarily ifdef out almost the whole source. * sanitizer_common/sanitizer_common_syscalls.inc: Likewise. 2013-11-05 H.J. Lu PR sanitizer/59018 * sanitizer_common/sanitizer_platform_limits_posix.cc (struct_user_fpxregs_struct_sz): Initialize to 0 if __x86_64__ is defined. 2013-11-05 H.J. Lu PR sanitizer/59018 * sanitizer_common/sanitizer_platform_limits_linux.cc (struct_kernel_stat64_sz): Initialize to 0 if __x86_64__ is defined. * sanitizer_common/sanitizer_platform_limits_posix.h (__sanitizer_dirent): Use 64-bit d_ino/d_off if __x86_64__ is defined. (__sanitizer___kernel_uid_t): Typedef as unsigned if __x86_64__ is defined. (__sanitizer___kernel_gid_t): Likewise. (__sanitizer___kernel_off_t): Typedef as long long if __x86_64__ is defined. 2013-11-05 H.J. Lu PR sanitizer/59018 * sanitizer_common/sanitizer_linux.cc (internal_clone): Allocate 2 64-bit integers to save and restore fn and arg. Properly load newtls/child_tidptr into r8/r10. 2013-11-05 H.J. Lu PR sanitizer/59018 * sanitizer_common/sanitizer_linux.cc (internal_mmap, internal_munmap, internal_open, internal_read, internal_write, internal_stat, internal_lstat, internal_fstat, internal_readlink, internal_unlink, internal_execve, NanoTime, BlockingMutex::Lock, BlockingMutex::Unlock, internal_ptrace, internal_getdents, internal_sigaltstack): Cast pointers to uptr for 64-bit syscalls. 2013-11-04 Kostya Serebryany * All source files: Merge from upstream r191666. * merge.sh: Added lsan. * configure.ac (AC_CONFIG_FILES): Added lsan. * Makefile.am (SUBDIRS): Added lsan. * sanitizer_common/Makefile.am (sanitizer_common_files): Added new fles. * asan/Makefile.am (asan_files): Added new files. (libasan_la_LIBADD): Added a dependency on lsan. * lsan/Makefile.am: New file. * asan/Makefile.in: Regenerate. * lsan/Makefile.in: Regenerate. * Makefile.in: Regenerate. * configure: Regenerate. * sanitizer_common/Makefile.in: Regenerate. 2013-09-20 Alan Modra * configure: Regenerate. 2013-09-01 Iain Sandoe * ubsan/Makefile.am (libubsan_la_LIBADD): Revise to omit libinterception.la for Darwin. * ubsan/Makefile.in: Regenerate. 2013-08-30 Jakub Jelinek * Makefile.am (SUBDIRS): Add ubsan. * configure.ac (AC_CONFIG_FILES): Add ubsan/Makefile. * merge.sh: Merge ubsan. * sanitizer_common/sanitizer_report_decorator.h: Partial merge from trunk. * sanitizer_common/sanitizer_printf.cc: Likewise. * sanitizer_common/sanitizer_common.h: Likewise. * ubsan: New directory. Import ubsan runtime from llvm. 2013-06-03 Christophe Lyon * sanitizer_common/sanitizer_linux.cc (MemoryMappingLayout::Next): Cherry pick upstream r182922. 2013-05-07 Christophe Lyon * configure.tgt: Add ARM pattern. 2013-03-22 Jakub Jelinek PR other/43620 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist. * Makefile.in: Regenerated. * asan/Makefile.in: Regenerated. * interception/Makefile.in: Regenerated. * sanitizer_common/Makefile.in: Regenerated. * tsan/Makefile.in: Regenerated. 2013-02-28 Jakub Jelinek * asan/asan_mapping.h (kMidMemEnd): Increase to 0x4fffffffffULL. * asan/asan_rtl.cc (__asan_init): Increase kMidMemEnd to 0x4fffffffffULL. 2013-02-22 Jakub Jelinek PR sanitizer/56393 * asan/Makefile.am (nodist_toolexeclib_HEADERS): Set to libasan_preinit.o. (libasan_preinit.o): Depend on asan_preinit.o. * asan/Makefile.in: Regenerated. * asan/asan_preinit.cc: New file, synced from upstream. * asan/asan_rtl.cc: Remove preinit stuff, synced from upstream. 2013-02-21 Jack Howarth * asan/Makefile.am (libasan_la_SOURCES): Remove deprecated dynamic/asan_interceptors_dynamic.cc. * asan/Makefile.in: Regenerated. * merge.sh: Remove merge of deprecated lib/asan/dynamic. 2013-02-21 Jakub Jelinek * asan/asan_rtl.cc (__asan_preinit): Don't add if PIC macro is defined. Add used attribute. 2013-02-21 Kostya Serebryany * All source files: Merge from upstream r175733. * sanitizer_common/Makefile.am: Added a new file. * sanitizer_common/Makefile.in: Regenerated. 2013-02-14 H.J. Lu PR bootstrap/56327 * interception/interception.h (OFF_T): Merged from upstream r175140. 2013-02-13 Jakub Jelinek * asan/asan_mapping.h (SHADOW_OFFSET): Set to (1ULL << 44) on x86-64. 2013-02-13 Kostya Serebryany PR sanitizer/56128 * All source files: Merge from upstream r175049. * interception/Makefile.am: added include path. * interception/Makefile.in: Regenerated. 2013-02-11 Jack Howarth * configure.tgt: Disable build on darwin9 and earlier. 2013-01-23 Kostya Serebryany PR sanitizer/55989 * All source files: Merge from upstream r173241. * merge.sh: Support merging .inc files. 2013-01-16 Jakub Jelinek * sanitizer_common/Makefile.am (AM_CXXFLAGS): Remove -Wno-c99-extensions. * interception/Makefile.am (AM_CXXFLAGS): Likewise. * asan/Makefile.am (AM_CXXFLAGS): Likewise. * sanitizer_common/Makefile.in: Regenerated. * interception/Makefile.in: Regenerated. * asan/Makefile.in: Regenerated. 2013-01-10 Wei Mi PR sanitizer/55488 * tsan/Makefile.am: Add tsan_rtl_amd64.S. * tsan/Makefile.in: Regenerated. * tsan/tsan_rtl.h: Enable HACKY_CALL. 2013-01-10 Kostya Serebryany * All source files: Merge from upstream r171973. * sanitizer_common/Makefile.am: Added new files. * asan/Makefile.am: Likewise. * tsan/Makefile.am: Likewise. * sanitizer_common/Makefile.in: Regenerated. * asan/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. 2013-01-07 H.J. Lu * asan/Makefile.am (libasan_la_LIBADD): Replace LIBSTDCXX_RAW_CXX_LDLAGS with LIBSTDCXX_RAW_CXX_LDFLAGS. * tsan/Makefile.am (libtsan_la_LIBADD): Likewise. * Makefile.in: Regenerated. * configure: Likewise. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. 2012-12-12 H.J. Lu * Makefile.am (AM_MAKEFLAGS): Restored. * interception/Makefile.am: Likewise. * sanitizer_common/Makefile.am: Likewise. * tsan/Makefile.am: Likewise. * Makefile.in: Regenerated. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. 2012-12-12 H.J. Lu * Makefile.am (MAKEOVERRIDES): Restored. * asan/Makefile.am: Likewise. * interception/Makefile.am: Likewise. * sanitizer_common/Makefile.am: Likewise. * tsan/Makefile.am: Likewise. * Makefile.in: Regenerated. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. 2012-12-12 H.J. Lu * asan/Makefile.am (libasan_la_LIBADD): Use $(LIBSTDCXX_RAW_CXX_LDLAGS). * tsan/Makefile.am (libtsan_la_LIBADD): Likewise. * Makefile.in: Regenerated. * configure: Likewise. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. 2012-12-12 H.J. Lu * Makefile.am (AM_MAKEFLAGS): Removed. (MAKEOVERRIDES): Likewise. * asan/Makefile.am: Likewise. * interception/Makefile.am: Likewise. * sanitizer_common/Makefile.am: Likewise. * tsan/Makefile.am: Likewise. * Makefile.in: Regenerated. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. 2012-12-11 H.J. Lu PR sanitizer/55533 * Makefile.am (AM_MAKEFLAGS): Remove CC and CXX. * configure.ac (GCC_LIBSTDCXX_RAW_CXX_FLAGS): New. * asan/Makefile.am (AM_CXXFLAGS): Add $(LIBSTDCXX_RAW_CXX_CXXFLAGS). (AM_MAKEFLAGS): Remove CC and CXX. * interception/Makefile.am: Likewise. * sanitizer_common/Makefile.am: Likewise. * tsan/Makefile.am: Likewise. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. 2012-12-06 Peter Bergner * configure.tgt: Enable build on powerpc*-linux. 2012-12-06 Jack Howarth PR 55599/sanitizer * configure.ac: Set enable_static=no on darwin. * configure: Regenerated. 2012-12-06 Kostya Serebryany * All files: Merge from upstream r169392. 2012-12-05 Kostya Serebryany * All files: Merge from upstream r169371. 2012-12-04 Kostya Serebryany Jack Howarth PR 55521/sanitizer * configure.ac: Define USING_MAC_INTERPOSE when on darwin. * Makefile.am: Don't build interception subdir when USING_MAC_INTERPOSE defined. * asan/Makefile.am: Pass -DMAC_INTERPOSE_FUNCTIONS and -DMISSING_BLOCKS_SUPPORT when USING_MAC_INTERPOSE defined. Compile asan_interceptors_dynamic.cc but not libinterception when USING_MAC_INTERPOSE defined. * interception/Makefile.am: Remove usage of USING_MACH_OVERRIDE. * configure: Regenerated. * Makefile.in: Likewise. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * asan/asan_intercepted_functions.h: Use MISSING_BLOCKS_SUPPORT. * asan/asan_mac.cc: Likewise. * asan/dynamic/asan_interceptors_dynamic.cc: Migrate from llvm and use MISSING_BLOCKS_SUPPORT. * merge.sh: Merge lib/asan/dynamic into asan/dynamic. * interception/mach_override/LICENSE.txt: Remove unused file. * interception/mach_override/mach_override.c: Likewise. * interception/mach_override/mach_override.h: Likewise. * interception/mach_override: Remove unused directory. 2012-11-28 H.J. Lu * Makefile.am (AM_MAKEFLAGS): Restore CC and CXX. * configure.ac (ACX_NONCANONICAL_TARGET): Removed. * asan/Makefile.am (AM_CXXFLAGS): Remove -I for libstdc++-v3 header files. (AM_MAKEFLAGS): Restore CC and CXX. * interception/Makefile.am: Likewise. * sanitizer_common/Makefile.am: Likewise. * tsan/Makefile.am: Likewise. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. 2012-11-28 H.J. Lu * Makefile.am (AM_MAKEFLAGS): Remove CC and CXX. * configure.ac (ACX_NONCANONICAL_TARGET): New. * asan/Makefile.am (AM_CXXFLAGS): Add -I for libstdc++-v3 header files. (AM_MAKEFLAGS): Remove CC and CXX. * interception/Makefile.am: Likewise. * sanitizer_common/Makefile.am: Likewise. * tsan/Makefile.am: Likewise. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * tsan/Makefile.in: Likewise. 2012-11-27 Kostya Serebryany * All files: Merge from upstream r168699. 2012-11-24 Kostya Serebryany Jack Howarth * interception/mach_override/mach_override.c: Migrate from llvm. * interception/mach_override/mach_override.h: Likewise. * interception/mach_override/LICENSE.txt: Likewise. * configure.tgt: Add darwin to supported targets. * configure.ac: Define USING_MACH_OVERRIDE when on darwin. * interception/Makefile.am: Compile mach_override.c when USING_MACH_OVERRIDE defined. * configure: Regenerated. * interception/Makefile.in: Likewise. 2012-11-23 H.J. Lu PR sanitizer/55450 * tsan/Makefile.am (gcc_version): New. * tsan/Makefile.in: Regenerated. 2012-11-23 Kostya Serebryany * merge.sh: Support tsan, support added/removed files. * tsan/Makefile.am: Remove tsan_printf.cc. * tsan/Makefile.in: Regenerated. * other files: Merge from upstream r168514. 2012-11-23 Kostya Serebryany * merge.sh: New file. 2012-11-23 Jakub Jelinek * tsan/Makefile.am (AM_CXXFLAGS): Remove -Wno-variadic-macros. * Makefile.am (SUBDIRS): Guard tsan addition with TSAN_SUPPORTED automake conditional instead of !MULTISUBDIR32. * configure.tgt: Set TSAN_SUPPORTED=yes for x86_64/i686-linux for 64-bit multilib. * configure.ac: Check for void * size, source in configure.tgt, define TSAN_SUPPORTED conditional instead of MULTILIBDIR32. * configure: Regenerated. * Makefile.in: Regenerated. * tsan/Makefile.in: Regenerated. 2012-11-22 Wei Mi * tsan: New directory. Import tsan runtime from llvm. * configure.ac: Add 64 bits tsan build. * Makefile.am: Likewise. * configure: Regenerated. * Makefile.in: Likewise. 2012-11-21 Kostya Serebryany * README.gcc: Extend the README.gcc with mode details. 2012-11-20 Konstantin Serebryany * sanitizer_common/sanitizer_linux.cc (SANITIZER_LINUX_USES_64BIT_SYSCALLS): Define. (internal_mmap): Use it. (internal_filesize): Likewise. 2012-11-16 Tom Tromey * configure.ac: Invoke AM_MAINTAINER_MODE. * aclocal.m4, configure, Makefile.in, asan/Makefile.in, interception/Makefile.in, sanitizer_common/Makefile.in: Rebuild. 2012-11-16 H.J. Lu PR other/55333 * include/sanitizer/common_interface_defs.h (uhwptr): New type for hardware pointer. * sanitizer_common/sanitizer_stacktrace.cc (StackTrace::FastUnwindStack): Replace uptr with uhwptr for stack unwind. 2012-11-16 Dodji Seketeli * configure.tgt: Enable build on sparc linux. 2012-11-15 H.J. Lu * configure.ac: Properly set MULTISUBDIR. * asan/Makefile.am (gcc_version): New. * interception/Makefile.am (gcc_version): Likewise. * sanitizer_common/Makefile.am (gcc_version): Likewise. * configure: Regenerated. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. 2012-11-14 H.J. Lu PR other/55291 * configure.ac (--enable-version-specific-runtime-libs): New option. (AC_CANONICAL_SYSTEM): New. (AM_ENABLE_MULTILIB): Moved right after AM_INIT_AUTOMAKE. (toolexecdir): Support multilib. (toolexeclibdir): Likewise. (multilib_arg): New. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. 2012-11-14 H.J. Lu PR other/55292 Backport from upstream revision 167883 * sanitizer_common/sanitizer_linux.cc (internal_mmap): Check __x86_64__ instead of __WORDSIZE. (internal_filesize): Likwise. 2012-11-14 H.J. Lu * configure.ac (AC_CONFIG_AUX_DIR): Removed. * Makefile.in: Regenerated. * configure: Likewise. 2012-11-13 H.J. Lu PR other/55304 * acinclude.m4: New file. * Makefile.am (ACLOCAL_AMFLAGS): New. * configure.ac (AC_PREREQ): Set to 2.64. (AC_CONFIG_AUX_DIR): Set to "..". * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. * config.guess: Removed. * config.sub: Likewise. * depcomp: Likewise. * install-sh: Likewise. * ltmain.sh: Likewise. * missing: Likewise. 2012-11-13 Richard Henderson * configure.tgt: New file. 2012-11-12 David S. Miller * asan/asan_linux.cc (GetPcSpBp): Add sparc support. 2012-10-29 Wei Mi Initial checkin: migrate asan runtime from llvm.