Start adding benchmarks for vector
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276552 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/benchmarks/ContainerBenchmarks.hpp b/benchmarks/ContainerBenchmarks.hpp
index 8321caf..6350e6b 100644
--- a/benchmarks/ContainerBenchmarks.hpp
+++ b/benchmarks/ContainerBenchmarks.hpp
@@ -7,6 +7,18 @@
namespace ContainerBenchmarks {
+
+template <class Container, class GenInputs>
+void BM_ConstructIterIter(benchmark::State& st, Container, GenInputs gen) {
+ auto in = gen(st.range_x());
+ const auto end = in.end();
+ benchmark::DoNotOptimize(&in);
+ while (st.KeepRunning()) {
+ Container c(in.begin(), in.end());
+ benchmark::DoNotOptimize(c.data());
+ }
+}
+
template <class Container, class GenInputs>
void BM_InsertValue(benchmark::State& st, Container c, GenInputs gen) {
auto in = gen(st.range_x());
@@ -93,7 +105,6 @@
}
benchmark::ClobberMemory();
}
-
}
} // end namespace ContainerBenchmarks