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
Make libc++abi use the implementation of __numstr from libc++. No functionality change, just removal of duplicated code.

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@208246 91177308-0d34-0410-b5e6-96231b3b80d8
Fix broken build from r208135

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@208350 91177308-0d34-0410-b5e6-96231b3b80d8
Fixes more incorrect #ifs for SJ/LJ exceptions

Replaces several `#if __arm__` with `#if __USING_SJLJ_EXCEPTIONS__`.


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@208352 91177308-0d34-0410-b5e6-96231b3b80d8
Check exception specification with __cplusplus.

To allow the compilation with gcc, we can't use the
__has_feature(cxx_noexcept) to detect the default destructor
exception specification, which is noexcept(true) by default
in C++11.  We should use __cplusplus >= 201103L instead.



git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@208465 91177308-0d34-0410-b5e6-96231b3b80d8
Implement ARM EHABI exception handling.

This commit implements the ARM zero-cost exception handling
support for libc++abi.


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@208466 91177308-0d34-0410-b5e6-96231b3b80d8
PR19091: Track whether we're demangling a function template specialization to
determine whether we get a mangling for a return type, rather than trying to
figure it out based on whether the mangled name ended with a '>'.


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@208611 91177308-0d34-0410-b5e6-96231b3b80d8
Fix typo in comment.


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@208795 91177308-0d34-0410-b5e6-96231b3b80d8
Pulled ToT libc++abi to sources/cxx-stl/llvm-libc++abi/libcxxabi

Change-Id: I8265f2372f0b5bb5f4d4dc2d874b2cabc17b6707