Gitiles
Code Review
Sign In
gerrit-public.fairphone.software
/
platform
/
external
/
libcxxabi
/
7da9b96afc66c4496eb8809897c1b707b574a5c4
/
src
/
cxa_exception_storage.cpp
7da9b96
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.
by Howard Hinnant
· 13 years ago
f6d4cba
Add comment documenting extension behavior of __cxa_get_globals_fast().
by Howard Hinnant
· 13 years ago
f81cdff
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.
by Howard Hinnant
· 13 years ago
928afcd
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).
by Howard Hinnant
· 13 years ago
f4429fe
use abort_message() for pthread errors in __cxa_get_globals
by Nick Kledzik
· 13 years ago
61b898e
Exception handling stuctures, and thread-local variables for exception handling
by Marshall Clow
· 13 years ago