diff options
author | Vlad Tsyrklevich <vlad@tsyrklevich.net> | 2018-04-09 22:11:28 +0000 |
---|---|---|
committer | Vlad Tsyrklevich <vlad@tsyrklevich.net> | 2018-04-09 22:11:28 +0000 |
commit | d409efa7c7f8ae57b541b7a7e7e17ff9057257f6 (patch) | |
tree | ab572e31fc24ef72abc6788db33bc7dad4f37972 /libcxxabi/src | |
parent | c22a537dba7d180b223e17189778fa3144d2e340 (diff) |
[CFI] Disable CFI checks for __cxa_decrement_exception_refcount
Summary:
exception_header->exceptionDestructor is a void(*)(void*) function
pointer; however, it can point to destructors like std::
exception::~exception that don't match that type signature.
Reviewers: pcc, vitalybuka
Reviewed By: vitalybuka
Subscribers: kcc, christof, cfe-commits
Differential Revision: https://reviews.llvm.org/D45455
Diffstat (limited to 'libcxxabi/src')
-rw-r--r-- | libcxxabi/src/cxa_exception.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libcxxabi/src/cxa_exception.cpp b/libcxxabi/src/cxa_exception.cpp index b77f3a80796..679c32fda72 100644 --- a/libcxxabi/src/cxa_exception.cpp +++ b/libcxxabi/src/cxa_exception.cpp @@ -630,8 +630,8 @@ __cxa_increment_exception_refcount(void *thrown_object) throw() { Requires: If thrown_object is not NULL, it is a native exception. */ -void -__cxa_decrement_exception_refcount(void *thrown_object) throw() { +_LIBCXXABI_NO_CFI +void __cxa_decrement_exception_refcount(void *thrown_object) throw() { if (thrown_object != NULL ) { __cxa_exception* exception_header = cxa_exception_from_thrown_object(thrown_object); |