[libcxx-commits] [libcxx] [libc++] Implement single element vector::insert in terms of emplace (PR #210284)
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Aug 10 07:46:50 PDT 2026
================
@@ -398,6 +494,26 @@ void sequence_container_benchmarks(std::string container) {
st.ResumeTiming();
}
});
+ bench("emplace_back() (many elements)" + tostr(gen), [gen](auto& st) {
+ auto const size = st.range(0);
+ std::vector<ValueType> in;
+ std::generate_n(std::back_inserter(in), size, gen);
+ DoNotOptimizeData(in);
+
+ Container c;
+ DoNotOptimizeData(c);
+ while (st.KeepRunningBatch(size)) {
+ for (int i = 0; i != size; ++i) {
+ c.emplace_back(in[i]);
+ }
+ DoNotOptimizeData(c);
+
+ st.PauseTiming();
+ c.clear();
----------------
ldionne wrote:
```suggestion
c = Container();
```
https://github.com/llvm/llvm-project/pull/210284
More information about the libcxx-commits
mailing list