llvm-project/libcxxabi/src
Dan Albert 2c012d495d Make _Unwind_Backtrace() work on ARM.
Summary: Since the personality functions do the actual unwinding on ARM,
and will also stop unwinding when they encounter a handler, we invoke
_Unwind_VRS_Interpret() directly form _Unwind_Backtrace().

To simplify, the logic for decoding an EHT is moved out of
unwindOneFrame() and into its own function, decode_eht_entry(). Unlike
unwindOneFrame(), which could only handle ARM's compact personality
function entries (section 6.3) decode_eht_entry() can handle the generic
entries (section 6.2).

Reviewers: jroelofs

Reviewed By: jroelofs

Subscribers: piman, aemerson, cfe-commits

Differential Revision: http://reviews.llvm.org/D5112

llvm-svn: 216730
2014-08-29 15:26:06 +00:00
..
Unwind Make _Unwind_Backtrace() work on ARM. 2014-08-29 15:26:06 +00:00
CMakeLists.txt Fix the CMake build on Mac when setting MACOSX_DEPLOYMENT_TARGET=10.6 2014-08-12 18:18:07 +00:00
abort_message.cpp Improve logging of aborts for Android. 2014-08-19 16:30:07 +00:00
abort_message.h Work on restricting symbol visibility. 2012-02-02 20:47:28 +00:00
config.h Add baremetal ARM support to libcxxabi/libunwind 2014-08-21 18:42:36 +00:00
cxa_aux_runtime.cpp [libcxxabi] Fix broken codesourcery.com links in comments 2014-02-12 04:49:09 +00:00
cxa_default_handlers.cpp Minor libc++abi changes to make things build better with gcc. 2014-06-25 23:55:37 +00:00
cxa_demangle.cpp Minor libc++abi changes to make things build better with gcc. 2014-06-25 23:55:37 +00:00
cxa_exception.cpp Update libc++abi to use the ARM EHABI unwinder from its libunwind. 2014-06-25 23:52:07 +00:00
cxa_exception.hpp Update libc++abi to use the ARM EHABI unwinder from its libunwind. 2014-06-25 23:52:07 +00:00
cxa_exception_storage.cpp On single threaded systems, turn mutexes into nops 2014-05-06 21:30:56 +00:00
cxa_guard.cpp Fix broken build from r208135 2014-05-08 18:48:43 +00:00
cxa_handlers.cpp Minor libc++abi changes to make things build better with gcc. 2014-06-25 23:55:37 +00:00
cxa_handlers.hpp Bruce Mitchener: Typo fixes. 2013-02-15 15:48:49 +00:00
cxa_new_delete.cpp If libc++ has not declared bad_array_length, then declare it here just so that it gets into the binary. 2013-11-07 17:16:37 +00:00
cxa_personality.cpp Make _Unwind_Backtrace() work on ARM. 2014-08-29 15:26:06 +00:00
cxa_unexpected.cpp Add a descriptive name for a constant. Also I'm at least temporarily waging war on throw specs, both old and new style. Except where we have already publicly exposed the throw spec, I'm getting rid of them. They may come back later. But they seem somewhat prone to cyclic dependencies here. The throw spec implies compiler generated code that this library has to jump to during stack unwinding. I'd like to minimize the possiblity that the code used to properly make that jump is itself creating such jumps. 2012-01-30 16:07:00 +00:00
cxa_vector.cpp [libcxxabi] Fix broken codesourcery.com links in comments 2014-02-12 04:49:09 +00:00
cxa_virtual.cpp use abort_message() 2011-08-02 01:19:07 +00:00
exception.cpp Add some needed symbols in exception.cpp and eliminate dependence upon uncaught_exception() from cxa_vector.cpp. libc++abi is very nearly a self-contained (though not complete) library now. 2012-01-24 21:48:10 +00:00
fallback_malloc.ipp On single threaded systems, turn mutexes into nops 2014-05-06 21:30:56 +00:00
private_typeinfo.cpp Fix PR17221 - can't catch virtual base classes when throwing derived NULL pointers. Specifically, libc++abi would crash when you tried it. 2014-02-06 04:47:02 +00:00
private_typeinfo.h Make the type_info for __shim_type_info visible. This should address some failing dynamic_casts that a few applications are doing on the type_info hierarchy. 2012-10-13 18:45:59 +00:00
stdexcept.cpp Make libc++abi use the implementation of __numstr from libc++. No functionality change, just removal of duplicated code. 2014-05-07 20:17:41 +00:00
typeinfo.cpp Work on restricting symbol visibility. 2012-02-02 20:47:28 +00:00