[libcxx-commits] [libcxx] [libcxx] optimize sized-based vector representation to reduce binary size (PR #216822)

Nikolas Klauser via libcxx-commits libcxx-commits at lists.llvm.org
Tue Aug 18 00:00:50 PDT 2026


================
@@ -289,7 +289,7 @@ __vector_layout<_Tp, _Alloc>::__move_assign_without_allocator(__vector_layout& _
 template <class _Tp, class _Alloc>
 _LIBCPP_CONSTEXPR_SINCE_CXX20 void __vector_layout<_Tp, _Alloc>::__relocate(_SplitBuffer& __buffer) {
   __annotate_delete();
-  __buffer.__relocate(__begin_, __size_, __capacity_);
+  [[clang::always_inline]] __buffer.__relocate(__begin_, __size_, __capacity_);
----------------
philnik777 wrote:

Why does inlining this change anything? Doesn't this just cause this function to not be inlined instead? Also, this needs to by _Uglified. This also doesn't work with GCC for obvious reasons.

https://github.com/llvm/llvm-project/pull/216822


More information about the libcxx-commits mailing list