aboutsummaryrefslogtreecommitdiff
path: root/third_party/abseil-cpp/absl/time/duration_benchmark.cc
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-05-09 06:03:12 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-05-09 06:03:12 +0000
commit87460ad6f67179bae58b90808fa75cee36ff1fdb (patch)
tree2ce94d7f0804ccb77d1fa9b2a1bca00eecdff1e2 /third_party/abseil-cpp/absl/time/duration_benchmark.cc
parenta98bed7c37bbed320b1d4a270bf29fc9a538817c (diff)
parent7563023510bf04108a954596ea9393a4c11ac279 (diff)
downloadwebrtc-android13-frc-extservices-release.tar.gz
Snap for 8558685 from 7563023510bf04108a954596ea9393a4c11ac279 to tm-frc-extservices-releaset_frc_ext_330443000android13-frc-extservices-release
Change-Id: Iee8dd3827a6bd2f3d16f1fc31fee73d728883f14
Diffstat (limited to 'third_party/abseil-cpp/absl/time/duration_benchmark.cc')
-rw-r--r--third_party/abseil-cpp/absl/time/duration_benchmark.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/third_party/abseil-cpp/absl/time/duration_benchmark.cc b/third_party/abseil-cpp/absl/time/duration_benchmark.cc
index 83a836c8c8..56820f377b 100644
--- a/third_party/abseil-cpp/absl/time/duration_benchmark.cc
+++ b/third_party/abseil-cpp/absl/time/duration_benchmark.cc
@@ -18,9 +18,14 @@
#include <string>
#include "absl/base/attributes.h"
+#include "absl/flags/flag.h"
#include "absl/time/time.h"
#include "benchmark/benchmark.h"
+ABSL_FLAG(absl::Duration, absl_duration_flag_for_benchmark,
+ absl::Milliseconds(1),
+ "Flag to use for benchmarking duration flag access speed.");
+
namespace {
//
@@ -425,4 +430,15 @@ void BM_Duration_ParseDuration(benchmark::State& state) {
}
BENCHMARK(BM_Duration_ParseDuration)->DenseRange(0, kNumDurations - 1);
+//
+// Flag access
+//
+void BM_Duration_GetFlag(benchmark::State& state) {
+ while (state.KeepRunning()) {
+ benchmark::DoNotOptimize(
+ absl::GetFlag(FLAGS_absl_duration_flag_for_benchmark));
+ }
+}
+BENCHMARK(BM_Duration_GetFlag);
+
} // namespace