summaryrefslogtreecommitdiff
path: root/absl
diff options
context:
space:
mode:
authorGravatar Derek Mauro <dmauro@google.com>2022-12-12 13:15:40 -0800
committerGravatar Copybara-Service <copybara-worker@google.com>2022-12-12 13:16:33 -0800
commit553491a54cdb842ab583942e1058cbdcedd32018 (patch)
tree07dc831effb7532023a0582a799838858baab13c /absl
parentb23ae860ba864e4224aab7f7073d7d0d60f05a43 (diff)
Only build the section of flag_benchmark used for viewing the
disassembly under LLVM. Due to the issue described in https://github.com/abseil/abseil-cpp/issues/1340 and https://github.com/google/benchmark/commit/8545dfb3ea301f5c77626a046d4756ef9f2e4970 it no longer builds under GCC. The other changes are necessary to fix the build using the latest benchmark snapshot Fixes #1340 PiperOrigin-RevId: 494809290 Change-Id: I4a03b2e2dcbdc273e59f1f09f204322e388e7cea
Diffstat (limited to 'absl')
-rw-r--r--absl/flags/flag_benchmark.cc5
-rw-r--r--absl/numeric/bits_benchmark.cc4
2 files changed, 5 insertions, 4 deletions
diff --git a/absl/flags/flag_benchmark.cc b/absl/flags/flag_benchmark.cc
index fc572d9c..758a6a55 100644
--- a/absl/flags/flag_benchmark.cc
+++ b/absl/flags/flag_benchmark.cc
@@ -241,10 +241,11 @@ BENCHMARK(BM_ThreadedFindCommandLineFlag)->ThreadRange(1, 16);
} // namespace
+#ifdef __llvm__
+// To view disassembly use: gdb ${BINARY} -batch -ex "disassemble /s $FUNC"
#define InvokeGetFlag(T) \
T AbslInvokeGetFlag##T() { return absl::GetFlag(SINGLE_FLAG(T)); } \
int odr##T = (benchmark::DoNotOptimize(AbslInvokeGetFlag##T), 1);
BENCHMARKED_TYPES(InvokeGetFlag)
-
-// To veiw disassembly use: gdb ${BINARY} -batch -ex "disassemble /s $FUNC"
+#endif // __llvm__
diff --git a/absl/numeric/bits_benchmark.cc b/absl/numeric/bits_benchmark.cc
index 719bfa81..1b7f35dd 100644
--- a/absl/numeric/bits_benchmark.cc
+++ b/absl/numeric/bits_benchmark.cc
@@ -34,7 +34,7 @@ static void BM_bitwidth(benchmark::State& state) {
values.push_back(absl::Uniform<T>(rng, 0, std::numeric_limits<T>::max()));
}
- while (state.KeepRunningBatch(count)) {
+ while (state.KeepRunningBatch(static_cast<int64_t>(count))) {
for (size_t i = 0; i < count; ++i) {
benchmark::DoNotOptimize(values[i]);
}
@@ -56,7 +56,7 @@ static void BM_bitwidth_nonzero(benchmark::State& state) {
values.push_back(absl::Uniform<T>(rng, 1, std::numeric_limits<T>::max()));
}
- while (state.KeepRunningBatch(count)) {
+ while (state.KeepRunningBatch(static_cast<int64_t>(count))) {
for (size_t i = 0; i < count; ++i) {
const T value = values[i];
ABSL_ASSUME(value > 0);