Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 710b83a

Browse files
committed
[libc++] Make benchmarks forward-compatible with the test suite
This patch fixes a few warnings and errors when running the benchmarks as part of the test suite. It also adds most of the necessary Lit annotations to make it pass on various configurations.
1 parent f855975 commit 710b83a

File tree

73 files changed

+240
-161
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+240
-161
lines changed

libcxx/test/benchmarks/CartesianBenchmarks.h

+3-3
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,11 @@ constexpr auto makeEnumValueTuple(std::index_sequence<Idxs...>) {
2727
}
2828

2929
template <class B>
30-
static auto skip(const B& Bench, int) -> decltype(Bench.skip()) {
30+
auto skip(const B& Bench, int) -> decltype(Bench.skip()) {
3131
return Bench.skip();
3232
}
3333
template <class B>
34-
static auto skip(const B& Bench, char) {
34+
auto skip(const B&, char) {
3535
return false;
3636
}
3737

@@ -51,7 +51,7 @@ void makeBenchmarkFromValues(const std::vector<std::tuple<Args...> >& A) {
5151
}
5252

5353
template <template <class...> class B, class Args, class... U>
54-
void makeBenchmarkImpl(const Args& A, std::tuple<U...> t) {
54+
void makeBenchmarkImpl(const Args& A, std::tuple<U...>) {
5555
makeBenchmarkFromValues<B<U...> >(A);
5656
}
5757

libcxx/test/benchmarks/ContainerBenchmarks.h

+5-5
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ void BM_EmplaceDuplicate(benchmark::State& st, Container c, GenInputs gen) {
150150
}
151151

152152
template <class Container, class GenInputs>
153-
static void BM_Find(benchmark::State& st, Container c, GenInputs gen) {
153+
void BM_Find(benchmark::State& st, Container c, GenInputs gen) {
154154
auto in = gen(st.range(0));
155155
c.insert(in.begin(), in.end());
156156
benchmark::DoNotOptimize(&(*c.begin()));
@@ -164,7 +164,7 @@ static void BM_Find(benchmark::State& st, Container c, GenInputs gen) {
164164
}
165165

166166
template <class Container, class GenInputs>
167-
static void BM_FindRehash(benchmark::State& st, Container c, GenInputs gen) {
167+
void BM_FindRehash(benchmark::State& st, Container c, GenInputs gen) {
168168
c.rehash(8);
169169
auto in = gen(st.range(0));
170170
c.insert(in.begin(), in.end());
@@ -179,7 +179,7 @@ static void BM_FindRehash(benchmark::State& st, Container c, GenInputs gen) {
179179
}
180180

181181
template <class Container, class GenInputs>
182-
static void BM_Rehash(benchmark::State& st, Container c, GenInputs gen) {
182+
void BM_Rehash(benchmark::State& st, Container c, GenInputs gen) {
183183
auto in = gen(st.range(0));
184184
c.max_load_factor(3.0);
185185
c.insert(in.begin(), in.end());
@@ -193,7 +193,7 @@ static void BM_Rehash(benchmark::State& st, Container c, GenInputs gen) {
193193
}
194194

195195
template <class Container, class GenInputs>
196-
static void BM_Compare_same_container(benchmark::State& st, Container, GenInputs gen) {
196+
void BM_Compare_same_container(benchmark::State& st, Container, GenInputs gen) {
197197
auto in = gen(st.range(0));
198198
Container c1(in.begin(), in.end());
199199
Container c2 = c1;
@@ -208,7 +208,7 @@ static void BM_Compare_same_container(benchmark::State& st, Container, GenInputs
208208
}
209209

210210
template <class Container, class GenInputs>
211-
static void BM_Compare_different_containers(benchmark::State& st, Container, GenInputs gen) {
211+
void BM_Compare_different_containers(benchmark::State& st, Container, GenInputs gen) {
212212
auto in1 = gen(st.range(0));
213213
auto in2 = gen(st.range(0));
214214
Container c1(in1.begin(), in1.end());

libcxx/test/benchmarks/VariantBenchmarks.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ static auto genVariants(std::index_sequence<Is...>) {
3535

3636
std::array<V, N> result = {};
3737
for (auto& v : result) {
38-
v = fs[getRandomInteger(0ul, sizeof...(Is) - 1)]();
38+
v = fs[getRandomInteger(std::size_t(0), sizeof...(Is) - 1)]();
3939
}
4040

4141
return result;

libcxx/test/benchmarks/algorithms.partition_point.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012
#include <array>
1113
#include <cassert>

libcxx/test/benchmarks/algorithms/count.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012
#include <benchmark/benchmark.h>
1113
#include <cstring>

libcxx/test/benchmarks/algorithms/equal.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012
#include <benchmark/benchmark.h>
1113
#include <vector>

libcxx/test/benchmarks/algorithms/fill.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17, c++20
10+
911
#include <algorithm>
1012
#include <benchmark/benchmark.h>
1113
#include <vector>

libcxx/test/benchmarks/algorithms/find.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012
#include <benchmark/benchmark.h>
1113
#include <cstring>

libcxx/test/benchmarks/algorithms/for_each.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012
#include <benchmark/benchmark.h>
1113
#include <deque>

libcxx/test/benchmarks/algorithms/lexicographical_compare.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012
#include <benchmark/benchmark.h>
1113
#include <vector>

libcxx/test/benchmarks/algorithms/lower_bound.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012
#include <numeric>
1113
#include <random>

libcxx/test/benchmarks/algorithms/make_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/make_heap_then_sort_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/min.bench.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,13 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012
#include <cassert>
1113

1214
#include <benchmark/benchmark.h>
15+
#include "test_macros.h"
1316

1417
void run_sizes(auto benchmark) {
1518
benchmark->Arg(1)
@@ -68,7 +71,9 @@ BENCHMARK(BM_std_min<char>)->Apply(run_sizes);
6871
BENCHMARK(BM_std_min<short>)->Apply(run_sizes);
6972
BENCHMARK(BM_std_min<int>)->Apply(run_sizes);
7073
BENCHMARK(BM_std_min<long long>)->Apply(run_sizes);
74+
#ifndef TEST_HAS_NO_INT128
7175
BENCHMARK(BM_std_min<__int128>)->Apply(run_sizes);
76+
#endif
7277
BENCHMARK(BM_std_min<unsigned char>)->Apply(run_sizes);
7378
BENCHMARK(BM_std_min<unsigned short>)->Apply(run_sizes);
7479
BENCHMARK(BM_std_min<unsigned int>)->Apply(run_sizes);

libcxx/test/benchmarks/algorithms/min_max_element.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/minmax.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012
#include <cassert>
1113

libcxx/test/benchmarks/algorithms/mismatch.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012
#include <benchmark/benchmark.h>
1113
#include <random>

libcxx/test/benchmarks/algorithms/pop_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/pstl.stable_sort.bench.cpp

+3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
// UNSUPPORTED: libcpp-has-no-incomplete-pstl
11+
912
#include <algorithm>
1013
#include <execution>
1114

libcxx/test/benchmarks/algorithms/push_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/ranges_contains.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17, c++20
10+
911
#include <algorithm>
1012
#include <benchmark/benchmark.h>
1113
#include <iterator>

libcxx/test/benchmarks/algorithms/ranges_ends_with.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17, c++20
10+
911
#include <algorithm>
1012
#include <benchmark/benchmark.h>
1113
#include <iterator>

libcxx/test/benchmarks/algorithms/ranges_make_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/ranges_make_heap_then_sort_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/ranges_pop_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/ranges_push_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/ranges_sort.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/ranges_sort_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/ranges_stable_sort.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14, c++17
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/set_intersection.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012
#include <cstdlib>
1113
#include <iterator>

libcxx/test/benchmarks/algorithms/sort.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/sort_heap.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012

1113
#include "common.h"

libcxx/test/benchmarks/algorithms/stable_sort.bench.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
// UNSUPPORTED: c++03, c++11, c++14
10+
911
#include <algorithm>
1012

1113
#include "common.h"

0 commit comments

Comments
 (0)