From 42c15ca630126cafdd646ac3874fc6b1a110a8ca Mon Sep 17 00:00:00 2001 From: Blue Gaston Date: Wed, 3 Aug 2022 15:09:50 -0700 Subject: [PATCH] [TSAN][Darwin] x86_64 specific tests requiring weak symbols Additional tests requiring weak symbol attribute work around for macOS 12.0 Differential Revision: https://reviews.llvm.org/D131119 --- compiler-rt/test/tsan/java_symbolization.cpp | 6 +++++- compiler-rt/test/tsan/java_symbolization_legacy.cpp | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/compiler-rt/test/tsan/java_symbolization.cpp b/compiler-rt/test/tsan/java_symbolization.cpp index 534dc5d..e6a3ee8 100644 --- a/compiler-rt/test/tsan/java_symbolization.cpp +++ b/compiler-rt/test/tsan/java_symbolization.cpp @@ -2,7 +2,11 @@ #include "java.h" #include -extern "C" __attribute__((disable_sanitizer_instrumentation)) void +#if (__APPLE__) +__attribute__((weak)) // Required for dyld macOS 12.0+ +#endif +__attribute__((disable_sanitizer_instrumentation)) +extern "C" void __tsan_symbolize_external_ex(jptr pc, void (*add_frame)(void *, const char *, const char *, int, int), diff --git a/compiler-rt/test/tsan/java_symbolization_legacy.cpp b/compiler-rt/test/tsan/java_symbolization_legacy.cpp index ed7ffd3..bdf986a 100644 --- a/compiler-rt/test/tsan/java_symbolization_legacy.cpp +++ b/compiler-rt/test/tsan/java_symbolization_legacy.cpp @@ -2,7 +2,11 @@ #include "java.h" #include -extern "C" __attribute__((disable_sanitizer_instrumentation)) bool +#if (__APPLE__) +__attribute__((weak)) // Required for dyld macOS 12.0+ +#endif +__attribute__((disable_sanitizer_instrumentation)) +extern "C" bool __tsan_symbolize_external(jptr pc, char *func_buf, jptr func_siz, char *file_buf, jptr file_siz, int *line, int *col) { if (pc == (1234 | kExternalPCBit)) { -- 2.7.4