llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang-driver Author: None (anoopkg6) <details> <summary>Changes</summary> This is a re-submission of original reverted patch [(#<!-- -->162396) ](https://github.com/llvm/llvm-project/pull/162396url)for adding TySan support for systemzZ along with build failure patch [#<!-- -->169746](https://github.com/llvm/llvm-project/pull/169746). See conversations in #<!-- -->169746. --- Full diff: https://github.com/llvm/llvm-project/pull/169850.diff 3 Files Affected: - (modified) clang/lib/Driver/ToolChains/Linux.cpp (+1-1) - (modified) compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake (+1-1) - (modified) compiler-rt/lib/tysan/tysan_platform.h (+7) ``````````diff diff --git a/clang/lib/Driver/ToolChains/Linux.cpp b/clang/lib/Driver/ToolChains/Linux.cpp index 2c741a38fce1a..cdbf21fb90263 100644 --- a/clang/lib/Driver/ToolChains/Linux.cpp +++ b/clang/lib/Driver/ToolChains/Linux.cpp @@ -922,7 +922,7 @@ SanitizerMask Linux::getSupportedSanitizers() const { if (IsX86_64 || IsMIPS64 || IsAArch64 || IsPowerPC64 || IsSystemZ || IsLoongArch64 || IsRISCV64) Res |= SanitizerKind::Thread; - if (IsX86_64 || IsAArch64) + if (IsX86_64 || IsAArch64 || IsSystemZ) Res |= SanitizerKind::Type; if (IsX86_64 || IsSystemZ || IsPowerPC64) Res |= SanitizerKind::KernelMemory; diff --git a/compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake b/compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake index c10367715396e..f2317de8916e9 100644 --- a/compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake +++ b/compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake @@ -89,7 +89,7 @@ else() set(ALL_TSAN_SUPPORTED_ARCH ${X86_64} ${MIPS64} ${ARM64} ${PPC64} ${S390X} ${LOONGARCH64} ${RISCV64}) endif() -set(ALL_TYSAN_SUPPORTED_ARCH ${X86_64} ${ARM64}) +set(ALL_TYSAN_SUPPORTED_ARCH ${X86_64} ${ARM64} ${S390X}) set(ALL_UBSAN_SUPPORTED_ARCH ${X86} ${X86_64} ${ARM32} ${ARM64} ${RISCV64} ${MIPS32} ${MIPS64} ${PPC64} ${S390X} ${SPARC} ${SPARCV9} ${HEXAGON} ${LOONGARCH64}) diff --git a/compiler-rt/lib/tysan/tysan_platform.h b/compiler-rt/lib/tysan/tysan_platform.h index 19f77f0cace6b..96049c8d1c9a2 100644 --- a/compiler-rt/lib/tysan/tysan_platform.h +++ b/compiler-rt/lib/tysan/tysan_platform.h @@ -45,6 +45,13 @@ struct Mapping48 { static const uptr kPtrShift = 3; }; #define TYSAN_RUNTIME_VMA 1 +#elif defined(__s390x__) +struct Mapping { + static const uptr kShadowAddr = 0x080000000000ULL; + static const uptr kAppAddr = 0x460000000000ULL; + static const uptr kAppMemMsk = ~0xC00000000000ULL; + static const uptr kPtrShift = 3; +}; #else #error "TySan not supported for this platform!" #endif `````````` </details> https://github.com/llvm/llvm-project/pull/169850 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
