llvm-capstone/libcxxabi
Steven Wu f2a436058f [libcxxabi] Insert padding in __cxa_exception struct for compatibility
Summary:
Preserve the old ABI for __cxa_exception and __cxa_dependent_exception
on 64 bit platforms or ARM_EHABI platforms.

After r276215, libunwind in llvm-project labels _Unwind_Exception to be
double word aligned. That change implictly adds a padding before
unwindHeader field in __cxa_exception and __cxa_dependent_exception.
Preserve the same negative offsets in those struct by moving the padding
to the beginning of the field.

The assumption here is that if the ABI is not aware of the padding before
unwindHeader and put the referenceCount/primaryException in there, no padding
should exist before unwindHeader.

Reviewers: EricWF, mclow.lists, ldionne, jroelofs, dexonsmith, rjmccall, compnerd, phosek, ahatanak

Reviewed By: rjmccall

Subscribers: hans, smeenai, kristof.beyls, christof, jkorous, ributzka, libcxx-commits

Tags: #libc

Differential Revision: https://reviews.llvm.org/D72543
2020-01-30 10:03:22 -08:00
..
cmake [libcxx{,abi}] Don't link libpthread and libdl on Fuchsia 2019-12-06 11:15:15 -08:00
fuzz add cxa_demangle_fuzzer 2016-12-28 03:28:29 +00:00
include [libc++] Update link to Itanium C++ ABI documentation 2019-10-01 18:14:27 +00:00
lib [libc++abi] Do not export some implementation-detail functions 2019-10-03 14:24:53 +00:00
src [libcxxabi] Insert padding in __cxa_exception struct for compatibility 2020-01-30 10:03:22 -08:00
test [libcxxabi] NFC: Fix trivial typos in comments 2020-01-22 11:36:31 +08:00
www [www] Change URLs to HTTPS. 2019-10-24 13:25:15 -07:00
.arcconfig [libcxxabi] Set up .arcconfig to point to new Diffusion CXXA repository 2017-12-04 23:14:03 +00:00
.clang-format Fully Reformat fallback_malloc.cpp 2017-03-04 03:23:15 +00:00
.gitignore .gitignore: ignore vim swap files 2015-12-04 02:15:02 +00:00
CMakeLists.txt [libcxxabi] Allow tests to link with static libc++abi/libc++ even if the shared version is present 2020-01-09 19:01:57 +03:00
CREDITS.TXT Try again, this time with the correct address 2017-12-29 19:26:28 +00:00
LICENSE.TXT Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00