Ensure that the no-throw variants of new and new[] have the same behaviour as the throw variants in case of overrides.

This fixes two tests in the libc++ test suite in cases where the libcxxrt versions of new and delete are used in preference to the libc++ ones:

new.delete.single/new_nothrow_replace.pass.cpp
new.delete.array/new_array_nothrow.pass.cpp

Patch by Joerg Sonnenberger.
Merge pull request #8 from mdempsky/master

Add LIBCXXRT_WEAK_LOCKS config macro
CR by David
Fix some compiler warnings by moving the definition of DW_EH_PE_absptr to the enumeration where it is used.
Add explicit store barriers when releasing locks.
Fix warnings about comparisons always evalutating to true when not using weak symbols for pthread functions.
Fixes for ARM guard initialisation.
Don't use __builtin_unreachable() for now.
Make exception specifications conditional on language dialect for new / delete operators (fixes warnings when compiling as C++11)
Implement __cxa_deleted_virtual()