aboutsummaryrefslogtreecommitdiff
path: root/libcxxabi
diff options
context:
space:
mode:
authorLouis Dionne <ldionne.2@gmail.com>2024-01-11 10:13:21 -0500
committerGitHub <noreply@github.com>2024-01-11 10:13:21 -0500
commit8f90e6937a1fac80873bb2dab5f382c82ba1ba4e (patch)
tree8f0934cb16762c8b0ede6f366fa8ae1803ef369a /libcxxabi
parent3b3ee1f534242f06cdda276aacfa3328b7737326 (diff)
downloadllvm-8f90e6937a1fac80873bb2dab5f382c82ba1ba4e.zip
llvm-8f90e6937a1fac80873bb2dab5f382c82ba1ba4e.tar.gz
llvm-8f90e6937a1fac80873bb2dab5f382c82ba1ba4e.tar.bz2
[runtimes] Use LLVM libunwind from libc++abi by default (#77687)
I recently came across LIBCXXABI_USE_LLVM_UNWINDER and was surprised to notice it was disabled by default. Since we build libunwind by default and ship it in the LLVM toolchain, it would seem to make sense that libc++ and libc++abi rely on libunwind for unwinding instead of using the system-provided unwinding library (if any). Most importantly, using the system unwinder implies that libc++abi is ABI compatible with that system unwinder, which is not necessarily the case. Hence, it makes a lot more sense to instead default to using the known-to-be-compatible LLVM unwinder, and let vendors manually select a different unwinder if desired. As a follow-up change, we should probably apply the same default to compiler-rt. Differential Revision: https://reviews.llvm.org/D150897 Fixes #77662 rdar://120801778
Diffstat (limited to 'libcxxabi')
-rw-r--r--libcxxabi/CMakeLists.txt2
1 files changed, 1 insertions, 1 deletions
diff --git a/libcxxabi/CMakeLists.txt b/libcxxabi/CMakeLists.txt
index efe830b..c62b05b 100644
--- a/libcxxabi/CMakeLists.txt
+++ b/libcxxabi/CMakeLists.txt
@@ -46,7 +46,7 @@ option(LIBCXXABI_ENABLE_EXCEPTIONS
option(LIBCXXABI_ENABLE_ASSERTIONS "Enable assertions independent of build mode." ON)
option(LIBCXXABI_ENABLE_PEDANTIC "Compile with pedantic enabled." OFF)
option(LIBCXXABI_ENABLE_WERROR "Fail and stop if a warning is triggered." OFF)
-option(LIBCXXABI_USE_LLVM_UNWINDER "Build and use the LLVM unwinder." OFF)
+option(LIBCXXABI_USE_LLVM_UNWINDER "Build and use the LLVM unwinder." ON)
option(LIBCXXABI_ENABLE_STATIC_UNWINDER "Statically link the LLVM unwinder." OFF)
option(LIBCXXABI_USE_COMPILER_RT "Use compiler-rt instead of libgcc" OFF)
option(LIBCXXABI_ENABLE_THREADS "Build with threads enabled" ON)