forked from OSchip/llvm-project
b8f5732634
Summary: This patch adds the personality and helper functions for the state table based EH used by IBM legacy compilers xlC and xlclang++ on AIX. * A high level description of the state table based EH is provided in the code comments. * Function scan_state_tab() is added to scan the state table. It is invoked by the state table personality routine __xlcxx_personality_v0() and returns scan_results like scan_eh_tab() does. * A couple of EH helper functions used by xlC and xlclang++ generated code are also added, e.g., __xlc_catch_matchv2() which checks whether the thrown object matches the catch handler's exception type. * Debugging macros _LIBCXXABI_TRACE_STATETAB, _LIBCXXABI_TRACE_STATETAB0, and _LIBCXXABI_TRACING_STATETAB are added to dump state table scanning traces if environment variable LIBCXXABI_PRINT_STATTAB is set. * The state variable and state table data is the LSDA found from the traceback table of the function during unwinding. Reviewed by: MaskRay, cebowleratibm, libc++abi Differential Revision: https://reviews.llvm.org/D100504 |
||
---|---|---|
.. | ||
cmake | ||
fuzz | ||
include | ||
lib | ||
src | ||
test | ||
www | ||
.clang-format | ||
.gitignore | ||
CMakeLists.txt | ||
CREDITS.TXT | ||
LICENSE.TXT |