History log of /external/libcxxabi/src/cxa_exception_storage.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
71ba2871943cec379da0585c16f69fb5ac5a884b 03-Jan-2017 Asiri Rathnayake <asiri.rathnayake@arm.com> [libcxxabi] Introduce an externally threaded libc++abi variant.

r281179 Introduced an externally threaded variant of the libc++ library. This
patch adds support for a similar library variant for libc++abi.

Differential revision: https://reviews.llvm.org/D27575

Reviewers: EricWF

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@290888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
5180673e0abca22cdc611dc869caf82ae728f3d3 13-Oct-2016 Asiri Rathnayake <asiri.rathnayake@arm.com> [libcxxabi] Refactor pthread usage into a separate API

This patch refactors all pthread uses of libc++abi into a separate API. This
is the first step towards supporting an externlly-threaded libc++abi library.

I've followed the conventions already used in the libc++ library for the same
purpose.

Patch from: Saleem Abdulrasool and Asiri Rathnayake

Reviewed by: compnerd, EricWF

Differential revisions:
https://reviews.llvm.org/D18482 (original)
https://reviews.llvm.org/D24864 (final)

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@284128 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
ace657208972b9d29bff7e062a19f59199133a4d 07-Oct-2016 Igor Kudrin <ikudrin.dev@gmail.com> Recommit r282692: [libc++abi] Use fallback_malloc to allocate __cxa_eh_globals in case of dynamic memory exhaustion.

Throwing an exception for the first time may lead to call calloc to
allocate memory for __cxa_eh_globals. If the memory pool is exhausted
at that moment, it results in abnormal termination of the program.

This patch addresses the issue by using fallback_malloc in that case.

In this revision, some restrictions were added into the test to not
run it in unsuitable environments.

Differential Revision: https://reviews.llvm.org/D17815



git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@283531 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
336985fdf6ba0675fa56b439ce69c19aa249336b 29-Sep-2016 Igor Kudrin <ikudrin.dev@gmail.com> Revert r282692: Use fallback_malloc to allocate __cxa_eh_globals in case of dynamic memory exhaustion.

The test breaks build bots.

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@282703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
feb04d70afb8388150f2ba40df8333ca4c4817ec 29-Sep-2016 Igor Kudrin <ikudrin.dev@gmail.com> [libc++abi] Use fallback_malloc to allocate __cxa_eh_globals in case of dynamic memory exhaustion.

Throwing an exception for the first time may lead to call calloc to
allocate memory for __cxa_eh_globals. If the memory pool is exhausted
at that moment, it results in abnormal termination of the program.

This patch addresses the issue by using fallback_malloc in that case.

Differential Revision: https://reviews.llvm.org/D17815


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@282692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
b62a4dd90c2568cfc49f710d15a326b9ead3f610 21-Sep-2016 Asiri Rathnayake <asiri.rathnayake@arm.com> [libcxxabi] cleanup the use of LIBCXXABI_HAS_NO_THREADS macro (NFC)

Align the naming / use of the macro LIBCXXABI_HAS_NO_THREADS to follow what we
have in libcxx. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@282062 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
239a0322e4f377c93998230261063a048ab5b7f7 05-Sep-2014 Jonathan Roelofs <jonathan@codesourcery.com> s/LIBCXXABI_SINGLE_THREADED/LIBCXXABI_HAS_NO_THREADS/ for consistency with libcxx

Also remove the audotedection part so that if you're crazy enough to want a
single-threaded abi library, you'll say so explicitly in the build.


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@217262 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
c285efad792f81f323c18e7f7674164ad94b4059 06-May-2014 Jonathan Roelofs <jonathan@codesourcery.com> On single threaded systems, turn mutexes into nops

http://reviews.llvm.org/D3386


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@208135 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.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_exception_storage.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_exception_storage.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_exception_storage.cpp
f6d4cba78392f9248251168628c7236071ed88eb 25-Jan-2012 Howard Hinnant <hhinnant@apple.com> Add comment documenting extension behavior of __cxa_get_globals_fast().

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@148966 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
f81cdffb22a1f20a3adadccbaba60513aa29cb0d 25-Jan-2012 Howard Hinnant <hhinnant@apple.com> By changing all of the throw() specs to noexcept I've been able to compile and link all of the source files into a dylib. Prior to this substitution the changed functions were calling __cxa_call_unexpected which isn't implemented yet. However in none of these cases do we actaully want __cxa_call_unexpected to be called. Primative buildit script added.

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@148880 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
928afcd281e2bcad26baaa67dfd035e547870a8d 24-Jan-2012 Howard Hinnant <hhinnant@apple.com> A lot of the code in cxa_exception.cpp depends on __cxa_get_globals_fast() returning null if __cxa_get_globals() hasn't been called yet. However it doesn't reliably do that, at least on OS X if __cxa_get_globals_fast() is called prior to pthread_key_create() running. Our choice is to either limit our use of __cxa_get_globals_fast() more than we have, or to have __cxa_get_globals_fast() initialize with pthread_key_create() if necessary. I chose the latter, and replaced pthread_once with a C++11 local static (which should do the same thing).

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@148750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
f4429fe226241f3c537c3f5068518da9d1ab0de2 02-Aug-2011 Nick Kledzik <kledzik@apple.com> use abort_message() for pthread errors in __cxa_get_globals

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@136672 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp
61b898e4f717ecb3ce6aaa2652f7da712452d693 20-Jul-2011 Marshall Clow <mclow@qualcomm.com> Exception handling stuctures, and thread-local variables for exception handling

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@135586 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libcxxabi/src/cxa_exception_storage.cpp