diff options
author | Vedant Kumar <vsk@apple.com> | 2017-09-11 21:37:53 +0000 |
---|---|---|
committer | Vedant Kumar <vsk@apple.com> | 2017-09-11 21:37:53 +0000 |
commit | d65db8479fb9ff1f4e313d7d90bb92f6f59bafe1 (patch) | |
tree | fc1de439dc9a8da489a6e7994e8e5f8f108bb6ed | |
parent | 81aed931b6ebd1c6f70920b492676c514ea99d8b (diff) |
[ubsan-minimal] Enable on Darwin
Testing: check-ubsan-minimal
Differential Revision: https://reviews.llvm.org/D37646
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@312959 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | cmake/config-ix.cmake | 2 | ||||
-rw-r--r-- | lib/ubsan_minimal/CMakeLists.txt | 5 | ||||
-rw-r--r-- | test/ubsan_minimal/lit.common.cfg | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake index d688abccb..5820946df 100644 --- a/cmake/config-ix.cmake +++ b/cmake/config-ix.cmake @@ -546,7 +546,7 @@ else() endif() if (COMPILER_RT_HAS_SANITIZER_COMMON AND UBSAN_SUPPORTED_ARCH AND - OS_NAME MATCHES "Linux|FreeBSD|NetBSD|Android") + OS_NAME MATCHES "Linux|FreeBSD|NetBSD|Android|Darwin") set(COMPILER_RT_HAS_UBSAN_MINIMAL TRUE) else() set(COMPILER_RT_HAS_UBSAN_MINIMAL FALSE) diff --git a/lib/ubsan_minimal/CMakeLists.txt b/lib/ubsan_minimal/CMakeLists.txt index adc5d184d..e26fc34ce 100644 --- a/lib/ubsan_minimal/CMakeLists.txt +++ b/lib/ubsan_minimal/CMakeLists.txt @@ -16,6 +16,7 @@ add_compiler_rt_component(ubsan-minimal) # Common parts of UBSan runtime. add_compiler_rt_object_libraries(RTUbsan_minimal + OS ${SANITIZER_COMMON_SUPPORTED_OS} ARCHS ${UBSAN_COMMON_SUPPORTED_ARCH} SOURCES ${UBSAN_MINIMAL_SOURCES} CFLAGS ${UBSAN_CFLAGS}) @@ -26,6 +27,7 @@ if(COMPILER_RT_HAS_UBSAN_MINIMAL) # Standalone UBSan runtimes. add_compiler_rt_runtime(clang_rt.ubsan_minimal STATIC + OS ${SANITIZER_COMMON_SUPPORTED_OS} ARCHS ${UBSAN_SUPPORTED_ARCH} OBJECT_LIBS RTUbsan_minimal CFLAGS ${UBSAN_CFLAGS} @@ -33,13 +35,14 @@ if(COMPILER_RT_HAS_UBSAN_MINIMAL) add_compiler_rt_runtime(clang_rt.ubsan_minimal SHARED + OS ${SANITIZER_COMMON_SUPPORTED_OS} ARCHS ${UBSAN_SUPPORTED_ARCH} OBJECT_LIBS RTUbsan_minimal CFLAGS ${UBSAN_CFLAGS} LINK_LIBS ${UBSAN_DYNAMIC_LIBS} PARENT_TARGET ubsan-minimal) - if (UNIX) + if (UNIX AND NOT APPLE) set(ARCHS_FOR_SYMBOLS ${UBSAN_SUPPORTED_ARCH}) list(REMOVE_ITEM ARCHS_FOR_SYMBOLS i386 i686) add_sanitizer_rt_symbols(clang_rt.ubsan_minimal diff --git a/test/ubsan_minimal/lit.common.cfg b/test/ubsan_minimal/lit.common.cfg index 45db6a6f6..6f239ede6 100644 --- a/test/ubsan_minimal/lit.common.cfg +++ b/test/ubsan_minimal/lit.common.cfg @@ -30,7 +30,7 @@ config.substitutions.append( ("%clangxx ", build_invocation(clang_ubsan_cxxflags config.suffixes = ['.c', '.cc', '.cpp'] # Check that the host supports UndefinedBehaviorSanitizerMinimal tests -if config.host_os not in ['Linux', 'FreeBSD', 'NetBSD']: # TODO: Darwin, Windows +if config.host_os not in ['Linux', 'FreeBSD', 'NetBSD', 'Darwin']: # TODO: Windows config.unsupported = True config.available_features.add('arch=' + config.target_arch) |