605f03260ce43ec564cd0ec80ea21514e82eeeb3 |
|
29-Aug-2014 |
Dan Albert <danalbert@google.com> |
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 git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@216730 91177308-0d34-0410-b5e6-96231b3b80d8 (cherry picked from commit 14690900fcd84fbf82767890f4d7a5673654fe38) Bug: 16874447 Change-Id: Ia52c7e2a0b7167863fea29cbf4b2d3c5d58053b2
/external/libcxxabi/src/cxa_personality.cpp
|
e45805f0d3f8dafef1297cc7dc49e610713f023b |
|
03-Jul-2014 |
Dan Albert <danalbert@google.com> |
Merge to upstream r212232. Includes ARM EHABI unwinder. Change-Id: I7e40c761abc0a4c67f11b8e9f85efefa6ba292ba
/external/libcxxabi/src/cxa_personality.cpp
|
c2e9313c38fdd56ecd50d7cd21e8a14d8f16a1b7 |
|
23-Apr-2014 |
Dan Albert <danalbert@google.com> |
Fixes incorrect #ifs for SJ/LJ exceptions The was working because, given __APPLE__, _LIBUNWIND_BUILD_SJLJ_APIS was set to __arm__, but other ARM targets not using SJ/LJ will fail to compile. Change-Id: Id774f1c6aa20661e289dbe18145532dbba6791d7 git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@206941 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
e085735cbedc82b1064f05ff796e32e906a95036 |
|
08-Apr-2014 |
Dan Albert <danalbert@google.com> |
Gets libcxxabi building for Android Fixes a few configuration issues in libcxxabi and adds an Android makefile. Change-Id: I247372d87caabe0310bedc4540b68ab2ed1986c1
/external/libcxxabi/src/cxa_personality.cpp
|
c82e02dd25b36e5d05cd3644499a553709c9395d |
|
12-Feb-2014 |
Jonathan Roelofs <jonathan@codesourcery.com> |
[libcxxabi] Fix broken codesourcery.com links in comments review: http://llvm-reviews.chandlerc.com/D2718 git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@201208 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
6d00feffc82d4f8c0201242291a0e93b492e1dd4 |
|
15-Feb-2013 |
Howard Hinnant <hhinnant@apple.com> |
Bruce Mitchener: Typo fixes. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@175275 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
f8f7f7fee6ecdf9c9a0d3161621c518ffdac52cb |
|
12-Nov-2012 |
Howard Hinnant <hhinnant@apple.com> |
Wen-Han Gu: Fix for http://llvm.org/bugs/show_bug.cgi?id=14312 Exception Table out-of-range but still keep walking. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@167733 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
1321731d59f4afcab576de163f625c65eea96871 |
|
17-Mar-2012 |
Howard Hinnant <hhinnant@apple.com> |
Arm fixes in cxa_personality.cpp and a little refactoring. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@152966 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
96f01710bc5b9c37765f60b9a2e12327d2463d65 |
|
09-Mar-2012 |
Howard Hinnant <hhinnant@apple.com> |
Enable / silence -Wunused-parameter. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@152415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
dfa81caf63ec3b24c6d2ffd7d9e8e4a98b203570 |
|
08-Mar-2012 |
Howard Hinnant <hhinnant@apple.com> |
Enable/silence -Wunused-variable. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@152329 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
85bc82e6d9dd6447c2eb8414cd3ce650cfa0091a |
|
08-Mar-2012 |
Howard Hinnant <hhinnant@apple.com> |
Enable/silence -Wconversion. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@152328 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
3e5c7d0cdb8e17531d5d09f5df1d4ed85d84f356 |
|
08-Mar-2012 |
Howard Hinnant <hhinnant@apple.com> |
Enable/silence -Wsign-conversion. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@152323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
7f9d213dae9bb6aaea7fc8f697680b5f69178f84 |
|
29-Feb-2012 |
Howard Hinnant <hhinnant@apple.com> |
First attempt at arm support. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@151765 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
e045f21bc1c1e0d3e7102f6bab248f8c8959b77d |
|
17-Feb-2012 |
Howard Hinnant <hhinnant@apple.com> |
Remove outdated information from comment. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@150827 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
7ab185ea390a9ad39f512bd3e7d3ee6ea76812c8 |
|
01-Feb-2012 |
Howard Hinnant <hhinnant@apple.com> |
Treat all exceptions except that the ones that this library throws as foreign. Even other C++ exceptions. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149518 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
29ae5fcdaedec7039c65355ef35955cbeacb61c1 |
|
01-Feb-2012 |
Howard Hinnant <hhinnant@apple.com> |
Nothing but polishing comments. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
3a1009ca976989bae6308d9bc49494d22c578e79 |
|
01-Feb-2012 |
Howard Hinnant <hhinnant@apple.com> |
Move an error detector to a better place. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
3a2765fc4e360a1eea76d439d1c5fd0b4a4a7d14 |
|
31-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Back the optimization down from -O3 to -Os. I'm getting an unexplained crasher on -O3. I've looked for a libc++abi bug and can't find one. I'm suspecting clang optimizer bug. But I don't have a good test case at the moment. Deferring investigation on this for now as I will soon be developing more and smaller tests. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149414 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
2e774bf081cc1aeff076a250ade5c909f9ad79a8 |
|
31-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Fix type-o in the comment of the last commit git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
135b4bd2232cf870ec45a07970f5402ba96baddf |
|
31-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Found and fixed a bug in __cxa_call_unexpected. If the unexpected_handler rethrows the same exception then needed information gets overwritten in the original exception header. Therefore save it locally before executing the unexpected_handler. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149400 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
a5f9da203dc18d2c34909a63d12c2604f6d006d9 |
|
31-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Found and fixed bug in personality function: Don't dive into the action table if the action entry is zero. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
1a58491066c80bd4b599e49fe0930b9390807e0b |
|
31-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Minor bug fix in __cxa_call_unexpected. Changed std::terminate to detect a caught-but-unhandled exception, and choose the handler out of that if found. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149329 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
4c8d5613f35b03a3b6dc050a822e9a63e038e837 |
|
30-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Refactored personality function. Found one bug in scanning exception spec lists. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149272 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
7da9b96afc66c4496eb8809897c1b707b574a5c4 |
|
30-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
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. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149251 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
66f658093ac102462464a896e5c0f4927fed9eac |
|
28-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Sometimes it takes all day to write a decent comment. This is one of those times, and I'm still not quite sure I have them correct. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149154 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
08f419c67a30f4c03684e8f317c9234549842740 |
|
24-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Forgot to include this file in the last commit: Move kOurExceptionClass and kOurDependentExceptionClass from source to header so that they can be used in multiple sources. This is a private header, these constants are not publicly exposed. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@148829 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
c30bfdc7ff4f0ab46e614fb8891be0785ae9a753 |
|
22-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Getting started on matching a thrown exception to a catch clause, and setting the adjusted pointer to the caught object appearing in the catch clause. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@148666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
a36fb308d6767c013e6714b50e40c059be1a1911 |
|
22-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
I kept getting confused among the __cxa_exception*, the _Unwind_Exception* and the void* to the thrown object. So I've gone through these two files and attempted to institute a consistent variable naming scheme, and in a few instances, turned void* into a concrete* to have the type system help me out. No change in functionality for this commit is intended. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@148663 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
3fa75e1680116753824c47e3eba5648abbf891d0 |
|
09-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
First brush with testing __gxx_personality_v0 reveals there is still a long way to go. But my understanding of what it is supposed to do continues to improve. I am currently contemplating whether I need to implement typeinfo before completing __gxx_personality_v0 in order to get matching catch handlers correct. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@147761 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
701d94c5dd4758912ad4ce4bfec79bd0c85127a4 |
|
06-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
__gxx_personality_v0 update. This is completely untested code. But my brain is scrambled and I wanted to get it checked in. Code review from anyone who knows anything at all about personality functions would be much appreciated. What is in here is borrowed heavily from llvm/examples/ExceptionDemo/ExceptionDemo.cpp. There are some calls to abort() that should probably be changed to return an error code instead. There may be encodings under readEncodedPointer that need to be implemented. And my handling of type_info is almost a complete guess. git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@147680 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|
ed2ea9bfd2ff873061734d7fc59886901f462c00 |
|
04-Jan-2012 |
Howard Hinnant <hhinnant@apple.com> |
Just getting started on the personality routine. This is just a skeleton. Still learning how to fill it in... git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@147547 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_personality.cpp
|