1 // Copyright 2015 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
13 func TestFastLog2(t *testing.T) {
14 // Compute the euclidean distance between math.Log2 and the FastLog2
15 // implementation over the range of interest for heap sampling.
16 const randomBitCount = 26
21 // Check 1K total values, down from 64M.
24 for i := 1; i < 1<<randomBitCount; i += inc {
25 l, fl := math.Log2(float64(i)), runtime.Fastlog2(float64(i))
32 t.Fatalf("imprecision on fastlog2 implementation, want <=1.0, got %f", e)