diff options
author | Paul Kirth <paulkirth@google.com> | 2025-01-16 13:44:55 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-16 13:44:55 -0800 |
commit | 92f1f99d2ee9ff0f928741fef4fcb58e994302df (patch) | |
tree | 4f0e8dd263e0363417571f16064e8301b4e6ff3b /lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h | |
parent | 7ea5f195039ba357285076043ad381ed22e3842e (diff) | |
download | llvm-92f1f99d2ee9ff0f928741fef4fcb58e994302df.zip llvm-92f1f99d2ee9ff0f928741fef4fcb58e994302df.tar.gz llvm-92f1f99d2ee9ff0f928741fef4fcb58e994302df.tar.bz2 |
[libunwind][cmake] Compile _Unwind* routines with -fexceptions (#121819)
When building libunwind with LTO, we found that routines, like
_Unwind_RaiseException were marked `nounwind`. This causes problems when
libunwind is then used with exception throwing code, since many of the
routines are marked `nounwind` and the compiler infers that something
like a try/catch block cannot throw resulting in a miscompile
(see #120657). Similarly, in #56825, it was pointed out that marking
_Unwind_Resume as `nounwind` causes bad exception table generation.
This patch adds the `-fexceptions` flag to the build of the C files that
define these routines, as proposed in #56825.
Fixes #56825 #120657
---------
Co-authored-by: Petr Hosek <phosek@google.com>
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h')
0 files changed, 0 insertions, 0 deletions