[PATCH] light up UBSan for ARMv7

Greg Fitzgerald gregf at codeaurora.org
Tue May 27 13:02:40 PDT 2014


Extended this patch to include AArch64 and other compiler-rt libs that build on ARM.

Note that ASan does not include AArch64.  Build error:

    Objects of target "RTLSanCommon.aarch64" referenced but no such target exists.

Also, exactly half the UBSan test suite passes on AArch64.   The other half depends on ASan being built.

http://reviews.llvm.org/D3794

Files:
  CMakeLists.txt

Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt
+++ CMakeLists.txt
@@ -221,9 +221,9 @@
     test_target_arch(i386 ${TARGET_32_BIT_CFLAGS})
   elseif("${LLVM_NATIVE_ARCH}" STREQUAL "PowerPC")
     test_target_arch(powerpc64 ${TARGET_64_BIT_CFLAGS})
-  elseif("${LLVM_NATIVE_ARCH}" STREQUAL "ARM")
-    test_target_arch(arm "")
   endif()
+  test_target_arch(arm "-march=armv7-a")
+  test_target_arch(aarch64 "-march=armv8-a")
 endif()
 
 # We support running instrumented tests when we're not cross compiling
@@ -353,14 +353,14 @@
 # Architectures supported by Sanitizer runtimes. Specific sanitizers may
 # support only subset of these (e.g. TSan works on x86_64 only).
 filter_available_targets(SANITIZER_COMMON_SUPPORTED_ARCH
-  x86_64 i386 powerpc64 arm)
-filter_available_targets(ASAN_SUPPORTED_ARCH x86_64 i386 powerpc64)
+  x86_64 i386 powerpc64 arm aarch64)
+filter_available_targets(ASAN_SUPPORTED_ARCH x86_64 i386 powerpc64 arm)
 filter_available_targets(DFSAN_SUPPORTED_ARCH x86_64)
 filter_available_targets(LSAN_SUPPORTED_ARCH x86_64)
 filter_available_targets(MSAN_SUPPORTED_ARCH x86_64)
-filter_available_targets(PROFILE_SUPPORTED_ARCH x86_64 i386 arm)
+filter_available_targets(PROFILE_SUPPORTED_ARCH x86_64 i386 arm aarch64)
 filter_available_targets(TSAN_SUPPORTED_ARCH x86_64)
-filter_available_targets(UBSAN_SUPPORTED_ARCH x86_64 i386)
+filter_available_targets(UBSAN_SUPPORTED_ARCH x86_64 i386 arm aarch64)
 
 add_subdirectory(include)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D3794.9845.patch
Type: text/x-patch
Size: 1519 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140527/2a42f29b/attachment.bin>


More information about the llvm-commits mailing list