aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhuaatian <142874007+huaatian@users.noreply.github.com>2024-02-23 10:25:02 +0800
committerGitHub <noreply@github.com>2024-02-23 10:25:02 +0800
commit5ccf54640a2bdb6f36f65c574feb312da7f75243 (patch)
tree172bad19d46d1124a0b70ce0cf4db86e691b0356
parent19e518d2623c0e87a87ebf30405e74448bd1ee70 (diff)
downloadllvm-5ccf54640a2bdb6f36f65c574feb312da7f75243.zip
llvm-5ccf54640a2bdb6f36f65c574feb312da7f75243.tar.gz
llvm-5ccf54640a2bdb6f36f65c574feb312da7f75243.tar.bz2
[llvm][cmake] Performing expensive checks requires enabling assert. (#80821)
LLVM will intercept errors using assert() when LLVM_ENABLE_EXPENSIVE_CHECKS is ON. So an explicit check is added. --------- Co-authored-by: Hua Tian <akiratian@tencent.com>
-rw-r--r--llvm/cmake/modules/HandleLLVMOptions.cmake5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/cmake/modules/HandleLLVMOptions.cmake b/llvm/cmake/modules/HandleLLVMOptions.cmake
index 4257083..40316b1 100644
--- a/llvm/cmake/modules/HandleLLVMOptions.cmake
+++ b/llvm/cmake/modules/HandleLLVMOptions.cmake
@@ -128,6 +128,11 @@ if("${LLVM_DEFAULT_TARGET_TRIPLE}" MATCHES "^amdgcn" OR
endif()
if(LLVM_ENABLE_EXPENSIVE_CHECKS)
+ # When LLVM_ENABLE_EXPENSIVE_CHECKS is ON, LLVM will intercept errors
+ # using assert(). An explicit check is performed here.
+ if (NOT LLVM_ENABLE_ASSERTIONS)
+ message(FATAL_ERROR "LLVM_ENABLE_EXPENSIVE_CHECKS requires LLVM_ENABLE_ASSERTIONS \"ON\".")
+ endif()
add_compile_definitions(EXPENSIVE_CHECKS)
# In some libstdc++ versions, std::min_element is not constexpr when