summaryrefslogtreecommitdiff
path: root/libcxxabi/include
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2022-05-07 00:37:40 +0300
committerMartin Storsjö <martin@martin.st>2022-06-06 23:19:22 +0300
commit4a3722a2c3dff1fe885cc38bf43d3c095c9851e7 (patch)
tree383503dde007d43cbd95980b4ed3c7822de8d31e /libcxxabi/include
parentdfa88927ae1411ccc3b248b7e624f2acf623d947 (diff)
downloadllvm-4a3722a2c3dff1fe885cc38bf43d3c095c9851e7.tar.gz
[libcxxabi] Check __SEH__, when checking if ARM EHABI is implied
ARM EHABI isn't signalled by any specific compiler builtin define, but is implied by the lack of defines specifying any other exception handling mechanism, `__USING_SJLJ_EXCEPTIONS__` or `__ARM_DWARF_EH__`. As Windows SEH also can be used for unwinding, check for the `__SEH__` define too, in the same way. Differential Revision: https://reviews.llvm.org/D126866
Diffstat (limited to 'libcxxabi/include')
-rw-r--r--libcxxabi/include/__cxxabi_config.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/libcxxabi/include/__cxxabi_config.h b/libcxxabi/include/__cxxabi_config.h
index 11a74db2ef97..c97dd656e165 100644
--- a/libcxxabi/include/__cxxabi_config.h
+++ b/libcxxabi/include/__cxxabi_config.h
@@ -10,7 +10,7 @@
#define ____CXXABI_CONFIG_H
#if defined(__arm__) && !defined(__USING_SJLJ_EXCEPTIONS__) && \
- !defined(__ARM_DWARF_EH__)
+ !defined(__ARM_DWARF_EH__) && !defined(__SEH__)
#define _LIBCXXABI_ARM_EHABI
#endif