summaryrefslogtreecommitdiffstats
path: root/libcxxabi/src/cxa_exception.cpp
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2012-01-23 23:55:58 +0000
committerHoward Hinnant <hhinnant@apple.com>2012-01-23 23:55:58 +0000
commitfad744dd50bfc1637f0adb8de76919256a1ae81e (patch)
tree9574a7339c293901d2d4bd9ae053ef2f1901621b /libcxxabi/src/cxa_exception.cpp
parent671caae892391bcbcd998209cbd8f0d147c98941 (diff)
downloadbcm5719-llvm-fad744dd50bfc1637f0adb8de76919256a1ae81e.tar.gz
bcm5719-llvm-fad744dd50bfc1637f0adb8de76919256a1ae81e.zip
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).
llvm-svn: 148750
Diffstat (limited to 'libcxxabi/src/cxa_exception.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud