From 51ef45a931561409390ff2f6976daed6468261da Mon Sep 17 00:00:00 2001 From: Lighting Artist Date: Wed, 30 Apr 2025 14:57:43 +0800 Subject: [PATCH] Revert "[TSan][OHOS] Support TSan for OHOS" This reverts commit 405c9c1d3ba255aeca0ac92a66cd9221524335f9. --- clang/lib/Driver/ToolChains/OHOS.cpp | 4 ---- compiler-rt/lib/sanitizer_common/CMakeLists.txt | 6 ------ .../lib/sanitizer_common/sanitizer_platform_interceptors.h | 3 +-- compiler-rt/lib/tsan/CMakeLists.txt | 6 ------ compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp | 4 ++-- 5 files changed, 3 insertions(+), 20 deletions(-) diff --git a/clang/lib/Driver/ToolChains/OHOS.cpp b/clang/lib/Driver/ToolChains/OHOS.cpp index c4c93e42d303..449ae8ed0df0 100644 --- a/clang/lib/Driver/ToolChains/OHOS.cpp +++ b/clang/lib/Driver/ToolChains/OHOS.cpp @@ -385,8 +385,6 @@ void OHOS::addExtraOpts(llvm::opt::ArgStringList &CmdArgs) const { } SanitizerMask OHOS::getSupportedSanitizers() const { - const bool IsX86_64 = getTriple().getArch() == llvm::Triple::x86_64; - const bool IsAArch64 = getTriple().getArch() == llvm::Triple::aarch64; SanitizerMask Res = ToolChain::getSupportedSanitizers(); Res |= SanitizerKind::Address; Res |= SanitizerKind::PointerCompare; @@ -403,8 +401,6 @@ SanitizerMask OHOS::getSupportedSanitizers() const { Res |= SanitizerKind::HWAddress; // TODO: kASAN for liteos ?? // TODO: Support TSAN and HWASAN and update mask. - if (IsAArch64 || IsX86_64) - Res |= SanitizerKind::Thread; return Res; } diff --git a/compiler-rt/lib/sanitizer_common/CMakeLists.txt b/compiler-rt/lib/sanitizer_common/CMakeLists.txt index ef03b15cf701..66f2d259aa5f 100644 --- a/compiler-rt/lib/sanitizer_common/CMakeLists.txt +++ b/compiler-rt/lib/sanitizer_common/CMakeLists.txt @@ -229,12 +229,6 @@ append_list_if(SANITIZER_LIMIT_FRAME_SIZE -Wframe-larger-than=570 append_list_if(COMPILER_RT_HAS_WGLOBAL_CONSTRUCTORS_FLAG -Wglobal-constructors SANITIZER_CFLAGS) -# OHOS_LOCAL begin -if(OHOS) - list(APPEND SANITIZER_CFLAGS -fno-emulated-tls) -endif() -# OHOS_LOCAL end - if(APPLE) set(OS_OPTION OS ${SANITIZER_COMMON_SUPPORTED_OS}) endif() diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h b/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h index 87ab61077f0a..3737ee58dc40 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h +++ b/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h @@ -458,8 +458,7 @@ #define SANITIZER_INTERCEPT_FOPENCOOKIE SI_LINUX_NOT_ANDROID #define SANITIZER_INTERCEPT_SEM \ (SI_LINUX || SI_FREEBSD || SI_NETBSD || SI_SOLARIS) -// OHOS_LOCAL -#define SANITIZER_INTERCEPT_PTHREAD_SETCANCEL (SI_POSIX && !SI_OHOS) +#define SANITIZER_INTERCEPT_PTHREAD_SETCANCEL SI_POSIX #define SANITIZER_INTERCEPT_MINCORE \ (SI_LINUX || SI_NETBSD || SI_FREEBSD || SI_SOLARIS) #define SANITIZER_INTERCEPT_PROCESS_VM_READV SI_LINUX diff --git a/compiler-rt/lib/tsan/CMakeLists.txt b/compiler-rt/lib/tsan/CMakeLists.txt index 70e9337a1ee4..e192506f0c93 100644 --- a/compiler-rt/lib/tsan/CMakeLists.txt +++ b/compiler-rt/lib/tsan/CMakeLists.txt @@ -15,12 +15,6 @@ if(COMPILER_RT_TSAN_DEBUG_OUTPUT) list(APPEND TSAN_CFLAGS -DTSAN_DEBUG_OUTPUT=2) endif() -# OHOS_LOCAL begin -if(OHOS) - list(APPEND TSAN_CFLAGS -fno-emulated-tls) -endif() -# OHOS_LOCAL end - # Add the actual runtime library. add_subdirectory(rtl) diff --git a/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp b/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp index d69584ed7802..9cab2a372712 100644 --- a/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp +++ b/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp @@ -1121,7 +1121,7 @@ TSAN_INTERCEPTOR(void, pthread_exit, void *retval) { REAL(pthread_exit)(retval); } -#if SANITIZER_LINUX && !SANITIZER_OHOS // OHOS_LOCAL +#if SANITIZER_LINUX TSAN_INTERCEPTOR(int, pthread_tryjoin_np, void *th, void **ret) { SCOPED_INTERCEPTOR_RAW(pthread_tryjoin_np, th, ret); Tid tid = ThreadConsumeTid(thr, pc, (uptr)th); @@ -2938,7 +2938,7 @@ void InitializeInterceptors() { TSAN_INTERCEPT(pthread_join); TSAN_INTERCEPT(pthread_detach); TSAN_INTERCEPT(pthread_exit); - #if SANITIZER_LINUX && !SANITIZER_OHOS // OHOS_LOCAL + #if SANITIZER_LINUX TSAN_INTERCEPT(pthread_tryjoin_np); TSAN_INTERCEPT(pthread_timedjoin_np); #endif -- Gitee