Reexport operator new / delete from libc++abi
authorMehdi Amini <mehdi.amini@apple.com>
Thu, 30 Mar 2017 04:47:19 +0000 (04:47 +0000)
committerMehdi Amini <mehdi.amini@apple.com>
Thu, 30 Mar 2017 04:47:19 +0000 (04:47 +0000)
Both libc++ and libc++abi export a weak definition of operator
new/delete. On Darwin, this can often cause dirty __DATA in the
shared cache when having to switch from one to the other. Instead,
libc++ should reexport libc++abi's implementation of these symbols.

Patch by: Ted Kremenek <kremenek@apple.com>

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

llvm-svn: 299054

libcxx/lib/libc++abi2.exp

index 47dcbbb..6716a38 100644 (file)
@@ -209,14 +209,14 @@ __ZNSt20bad_array_new_lengthC2Ev
 __ZNSt20bad_array_new_lengthD0Ev
 __ZNSt20bad_array_new_lengthD2Ev
 __ZSt10unexpectedv
-__ZdaPv
-__ZdlPv
-__ZdlPvRKSt9nothrow_t
-__Znam
-__ZdaPvRKSt9nothrow_t
-__Znwm
-__ZnwmRKSt9nothrow_t
-__ZnamRKSt9nothrow_t
+__ZdaPv
+__ZdlPv
+__ZdlPvRKSt9nothrow_t
+__Znam
+__ZdaPvRKSt9nothrow_t
+__Znwm
+__ZnwmRKSt9nothrow_t
+__ZnamRKSt9nothrow_t
 __ZTISt10bad_typeid
 __ZTISt8bad_cast
 ___cxa_bad_typeid