summaryrefslogtreecommitdiff
path: root/benchmarks/stdlib_benchmark.cpp
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2019-09-26 07:42:23 -0700
committerElliott Hughes <enh@google.com>2019-09-26 07:42:23 -0700
commit96705e3712007e2739b809e02a6583c39756fc86 (patch)
tree9b0c06c53af6b526c47d33a14c8e0117ce204ba3 /benchmarks/stdlib_benchmark.cpp
parent6ebeaac69db83624e14f96f0345ceae350e87c0e (diff)
benchmarks: remove more boilerplate.
Many of our benchmarks are basically just "call one function with a fixed argument". We don't need to keep repeating all the boilerplate for that. This also ensures we don't forget the benchmark::DoNotOptimize, which -- in addition to being a good idea in general -- specifically solves the problem with gettid benchmark and provides a more accurate result by removing the indirection through a function pointer. Test: ran benchmarks Change-Id: Id67535243678cd0d48f51cf25141e2040da9af03
Diffstat (limited to 'benchmarks/stdlib_benchmark.cpp')
-rw-r--r--benchmarks/stdlib_benchmark.cpp48
1 files changed, 6 insertions, 42 deletions
diff --git a/benchmarks/stdlib_benchmark.cpp b/benchmarks/stdlib_benchmark.cpp
index 6afe7aa57..ec3f6f248 100644
--- a/benchmarks/stdlib_benchmark.cpp
+++ b/benchmarks/stdlib_benchmark.cpp
@@ -216,45 +216,9 @@ static void BM_stdlib_mbrtowc(benchmark::State& state) {
}
BIONIC_BENCHMARK_WITH_ARG(BM_stdlib_mbrtowc, "0");
-void BM_stdlib_atoi(benchmark::State& state) {
- for (auto _ : state) {
- benchmark::DoNotOptimize(atoi(" -123"));
- }
-}
-BIONIC_BENCHMARK(BM_stdlib_atoi);
-
-void BM_stdlib_atol(benchmark::State& state) {
- for (auto _ : state) {
- benchmark::DoNotOptimize(atol(" -123"));
- }
-}
-BIONIC_BENCHMARK(BM_stdlib_atol);
-
-void BM_stdlib_strtol(benchmark::State& state) {
- for (auto _ : state) {
- benchmark::DoNotOptimize(strtol(" -123", nullptr, 0));
- }
-}
-BIONIC_BENCHMARK(BM_stdlib_strtol);
-
-void BM_stdlib_strtoll(benchmark::State& state) {
- for (auto _ : state) {
- benchmark::DoNotOptimize(strtoll(" -123", nullptr, 0));
- }
-}
-BIONIC_BENCHMARK(BM_stdlib_strtoll);
-
-void BM_stdlib_strtoul(benchmark::State& state) {
- for (auto _ : state) {
- benchmark::DoNotOptimize(strtoul(" -123", nullptr, 0));
- }
-}
-BIONIC_BENCHMARK(BM_stdlib_strtoul);
-
-void BM_stdlib_strtoull(benchmark::State& state) {
- for (auto _ : state) {
- benchmark::DoNotOptimize(strtoull(" -123", nullptr, 0));
- }
-}
-BIONIC_BENCHMARK(BM_stdlib_strtoull);
-
+BIONIC_TRIVIAL_BENCHMARK(BM_stdlib_atoi, atoi(" -123"));
+BIONIC_TRIVIAL_BENCHMARK(BM_stdlib_atol, atol(" -123"));
+BIONIC_TRIVIAL_BENCHMARK(BM_stdlib_strtol, strtol(" -123", nullptr, 0));
+BIONIC_TRIVIAL_BENCHMARK(BM_stdlib_strtoll, strtoll(" -123", nullptr, 0));
+BIONIC_TRIVIAL_BENCHMARK(BM_stdlib_strtoul, strtoul(" -123", nullptr, 0));
+BIONIC_TRIVIAL_BENCHMARK(BM_stdlib_strtoull, strtoull(" -123", nullptr, 0));