[compiler-rt] r339719 - SafeStack: Disable Darwin support

Vlad Tsyrklevich via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 14 12:46:16 PDT 2018


Author: vlad.tsyrklevich
Date: Tue Aug 14 12:46:16 2018
New Revision: 339719

URL: http://llvm.org/viewvc/llvm-project?rev=339719&view=rev
Log:
SafeStack: Disable Darwin support

Summary:
Darwin support does not appear to be used as evidenced by the fact that
the pthread interceptors have never worked and there is no support for
other common threading mechanisms like GCD.

Reviewers: pcc, eugenis, kubamracek

Reviewed By: pcc, kubamracek

Subscribers: kubamracek, mgorny, delcypher, llvm-commits, #sanitizers, kcc

Differential Revision: https://reviews.llvm.org/D50718

Modified:
    compiler-rt/trunk/lib/safestack/CMakeLists.txt
    compiler-rt/trunk/test/safestack/lit.cfg
    compiler-rt/trunk/test/safestack/pthread.c

Modified: compiler-rt/trunk/lib/safestack/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/safestack/CMakeLists.txt?rev=339719&r1=339718&r2=339719&view=diff
==============================================================================
--- compiler-rt/trunk/lib/safestack/CMakeLists.txt (original)
+++ compiler-rt/trunk/lib/safestack/CMakeLists.txt Tue Aug 14 12:46:16 2018
@@ -6,29 +6,14 @@ include_directories(..)
 
 set(SAFESTACK_CFLAGS ${SANITIZER_COMMON_CFLAGS})
 
-if(APPLE)
-  # Build universal binary on APPLE.
+foreach(arch ${SAFESTACK_SUPPORTED_ARCH})
   add_compiler_rt_runtime(clang_rt.safestack
     STATIC
-    OS osx
-    ARCHS ${SAFESTACK_SUPPORTED_ARCH}
+    ARCHS ${arch}
     SOURCES ${SAFESTACK_SOURCES}
-            $<TARGET_OBJECTS:RTInterception.osx>
-            $<TARGET_OBJECTS:RTSanitizerCommon.osx>
-            $<TARGET_OBJECTS:RTSanitizerCommonNoLibc.osx>
+            $<TARGET_OBJECTS:RTInterception.${arch}>
+            $<TARGET_OBJECTS:RTSanitizerCommon.${arch}>
+            $<TARGET_OBJECTS:RTSanitizerCommonNoLibc.${arch}>
     CFLAGS ${SAFESTACK_CFLAGS}
     PARENT_TARGET safestack)
-else()
-  # Otherwise, build separate libraries for each target.
-  foreach(arch ${SAFESTACK_SUPPORTED_ARCH})
-    add_compiler_rt_runtime(clang_rt.safestack
-      STATIC
-      ARCHS ${arch}
-      SOURCES ${SAFESTACK_SOURCES}
-              $<TARGET_OBJECTS:RTInterception.${arch}>
-              $<TARGET_OBJECTS:RTSanitizerCommon.${arch}>
-              $<TARGET_OBJECTS:RTSanitizerCommonNoLibc.${arch}>
-      CFLAGS ${SAFESTACK_CFLAGS}
-      PARENT_TARGET safestack)
-  endforeach()
-endif()
+endforeach()

Modified: compiler-rt/trunk/test/safestack/lit.cfg
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/safestack/lit.cfg?rev=339719&r1=339718&r2=339719&view=diff
==============================================================================
--- compiler-rt/trunk/test/safestack/lit.cfg (original)
+++ compiler-rt/trunk/test/safestack/lit.cfg Tue Aug 14 12:46:16 2018
@@ -18,5 +18,5 @@ config.substitutions.append( ("%clang_sa
 if config.lto_supported:
   config.substitutions.append((r"%clang_lto_safestack ", ' '.join(config.lto_launch + [config.clang] + config.lto_flags + ['-fsanitize=safe-stack '])))
 
-if config.host_os not in ['Linux', 'FreeBSD', 'Darwin', 'NetBSD']:
+if config.host_os not in ['Linux', 'FreeBSD', 'NetBSD']:
    config.unsupported = True

Modified: compiler-rt/trunk/test/safestack/pthread.c
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/safestack/pthread.c?rev=339719&r1=339718&r2=339719&view=diff
==============================================================================
--- compiler-rt/trunk/test/safestack/pthread.c (original)
+++ compiler-rt/trunk/test/safestack/pthread.c Tue Aug 14 12:46:16 2018
@@ -1,8 +1,6 @@
 // RUN: %clang_safestack %s -pthread -o %t
 // RUN: %run %t
 
-// XFAIL: darwin
-
 // Test that pthreads receive their own unsafe stack.
 
 #include <stdlib.h>




More information about the llvm-commits mailing list