[compiler-rt] r281576 - [sanitizer] Fix darwin Go tsan build by unifying r281567 and r281553.

Ahmed Bougacha via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 14 21:28:20 PDT 2016


Author: ab
Date: Wed Sep 14 23:28:20 2016
New Revision: 281576

URL: http://llvm.org/viewvc/llvm-project?rev=281576&view=rev
Log:
[sanitizer] Fix darwin Go tsan build by unifying r281567 and r281553.

Avoid redefining the weak stub when building gotsan.cc

Modified:
    compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc
    compiler-rt/trunk/lib/sanitizer_common/sanitizer_mac.cc
    compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc

Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc?rev=281576&r1=281575&r2=281576&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc Wed Sep 14 23:28:20 2016
@@ -488,4 +488,11 @@ int __sanitizer_install_malloc_and_free_
                                               void (*free_hook)(const void *)) {
   return InstallMallocFreeHooks(malloc_hook, free_hook);
 }
+
+#if !SANITIZER_SUPPORTS_WEAK_HOOKS
+SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE
+void __sanitizer_print_memory_profile(int top_percent) {
+  (void)top_percent;
+}
+#endif
 } // extern "C"

Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_mac.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_mac.cc?rev=281576&r1=281575&r2=281576&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_mac.cc (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_mac.cc Wed Sep 14 23:28:20 2016
@@ -747,12 +747,4 @@ void GetMemoryProfile(fill_profile_f cb,
 
 }  // namespace __sanitizer
 
-extern "C" {
-// Provide a definition on mac, where 'weak' symbols don't behave like on linux.
-SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE
-void __sanitizer_print_memory_profile(int top_percent) {
-  (void)top_percent;
-}
-} // extern "C"
-
 #endif  // SANITIZER_MAC

Modified: compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc?rev=281576&r1=281575&r2=281576&view=diff
==============================================================================
--- compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc (original)
+++ compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc Wed Sep 14 23:28:20 2016
@@ -42,8 +42,6 @@ extern "C" void __tsan_resume() {
   __tsan_resumed = 1;
 }
 
-extern "C" void __sanitizer_print_memory_profile(int percent) {}  // Stub.
-
 namespace __tsan {
 
 #if !defined(SANITIZER_GO) && !SANITIZER_MAC




More information about the llvm-commits mailing list