aboutsummaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/bitutil/bitutil_test.go10
1 files changed, 8 insertions, 2 deletions
diff --git a/common/bitutil/bitutil_test.go b/common/bitutil/bitutil_test.go
index 93647031e..307bf731f 100644
--- a/common/bitutil/bitutil_test.go
+++ b/common/bitutil/bitutil_test.go
@@ -190,6 +190,8 @@ func benchmarkBaseOR(b *testing.B, size int) {
}
}
+var GloBool bool // Exported global will not be dead-code eliminated, at least not yet.
+
// Benchmarks the potentially optimized bit testing performance.
func BenchmarkFastTest1KB(b *testing.B) { benchmarkFastTest(b, 1024) }
func BenchmarkFastTest2KB(b *testing.B) { benchmarkFastTest(b, 2048) }
@@ -197,9 +199,11 @@ func BenchmarkFastTest4KB(b *testing.B) { benchmarkFastTest(b, 4096) }
func benchmarkFastTest(b *testing.B, size int) {
p := make([]byte, size)
+ a := false
for i := 0; i < b.N; i++ {
- TestBytes(p)
+ a = a != TestBytes(p)
}
+ GloBool = a // Use of benchmark "result" to prevent total dead code elimination.
}
// Benchmarks the baseline bit testing performance.
@@ -209,7 +213,9 @@ func BenchmarkBaseTest4KB(b *testing.B) { benchmarkBaseTest(b, 4096) }
func benchmarkBaseTest(b *testing.B, size int) {
p := make([]byte, size)
+ a := false
for i := 0; i < b.N; i++ {
- safeTestBytes(p)
+ a = a != safeTestBytes(p)
}
+ GloBool = a // Use of benchmark "result" to prevent total dead code elimination.
}