[libcxx-commits] [libcxx] [lldb] [libcxx] adds a size-based representation for `vector`'s unstable ABI (PR #155330)

Christopher Di Bella via libcxx-commits libcxx-commits at lists.llvm.org
Tue Jun 23 14:02:54 PDT 2026


================
@@ -462,19 +468,24 @@ class vector {
   _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI void push_back(value_type&& __x) { emplace_back(std::move(__x)); }
 
   template <class... _Args>
-  _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI
+  _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI __emplace_back_result_t emplace_back(_Args&&... __args) {
----------------
cjdb wrote:

Let's defer this change to a later PR (that I'll open ~soon). I had some fairly promising [codegen experiments](https://carbon.godbolt.org/z/PTqTrWs7d) with removing `__if_likely_else` before pushing the commit for review. I've been trying to get some macrobenchmarks since you've flagged, but it looks like there's a few blockers for a timely turnaround on that, and I don't want to block on something that can be done independently.

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


More information about the libcxx-commits mailing list