summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorFlorian Hahn <florian.hahn@arm.com>2018-07-20 10:12:31 +0000
committerFlorian Hahn <florian.hahn@arm.com>2018-07-20 10:12:31 +0000
commit9bdae65513e97fc0c6cae000a20e4fd2cda259e4 (patch)
treecc97546c75e459a9f85caadbadc535d357b0ce2c /cmake
parent8c93523c81429dff36d790e5ceecd7de4ba03afb (diff)
[UBSan] Also use blacklist for 'Address; Undefined' setting
It looks like currently the UBSan blacklist is only applied when "Undefined" is selected. This patch updates the cmake file to apply it whenever Undefined is selected (e.g. 'Address; Undefined' ). This allows us to use the workaround added in rL335525 when using AddressSan and UBSan together. Reviewers: eugenis, vitalybuka Reviewed By: eugenis Differential Revision: https://reviews.llvm.org/D49558 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@337539 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'cmake')
-rw-r--r--cmake/modules/HandleLLVMOptions.cmake12
1 files changed, 7 insertions, 5 deletions
diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake
index efaad89f20c..5fd318f0091 100644
--- a/cmake/modules/HandleLLVMOptions.cmake
+++ b/cmake/modules/HandleLLVMOptions.cmake
@@ -670,11 +670,6 @@ if(LLVM_USE_SANITIZER)
append_common_sanitizer_flags()
append("-fsanitize=undefined -fno-sanitize=vptr,function -fno-sanitize-recover=all"
CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
- set(BLACKLIST_FILE "${CMAKE_SOURCE_DIR}/utils/sanitizers/ubsan_blacklist.txt")
- if (EXISTS "${BLACKLIST_FILE}")
- append("-fsanitize-blacklist=${BLACKLIST_FILE}"
- CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
- endif()
elseif (LLVM_USE_SANITIZER STREQUAL "Thread")
append_common_sanitizer_flags()
append("-fsanitize=thread" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
@@ -706,6 +701,13 @@ if(LLVM_USE_SANITIZER)
if (LLVM_USE_SANITIZE_COVERAGE)
append("-fsanitize=fuzzer-no-link" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
endif()
+ if (LLVM_USE_SANITIZER MATCHES ".*Undefined.*")
+ set(BLACKLIST_FILE "${CMAKE_SOURCE_DIR}/utils/sanitizers/ubsan_blacklist.txt")
+ if (EXISTS "${BLACKLIST_FILE}")
+ append("-fsanitize-blacklist=${BLACKLIST_FILE}"
+ CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
+ endif()
+ endif()
endif()
# Turn on -gsplit-dwarf if requested