Use __builtin_operator_new/__builtin_operator_delete when available. This
allows allocations and deallocations to be optimized out.
llvm-svn: 210211
diff --git a/libcxx/include/experimental/dynarray b/libcxx/include/experimental/dynarray
index 7c5c9b3..d2a4298 100644
--- a/libcxx/include/experimental/dynarray
+++ b/libcxx/include/experimental/dynarray
@@ -147,12 +147,12 @@
assert(!"dynarray::allocation");
#endif
}
- return static_cast<value_type *> (::operator new (sizeof(value_type) * count));
+ return static_cast<value_type *> (_VSTD::__allocate (sizeof(value_type) * count));
}
static inline _LIBCPP_INLINE_VISIBILITY void __deallocate ( value_type* __ptr ) noexcept
{
- ::operator delete (static_cast<void *> (__ptr));
+ _VSTD::__deallocate (static_cast<void *> (__ptr));
}
public: