1// Copyright 2012 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. 4 5package runtime_test 6 7import ( 8 "math/cmplx" 9 "testing" 10) 11 12var result complex128 13 14func BenchmarkComplex128DivNormal(b *testing.B) { 15 d := 15 + 2i 16 n := 32 + 3i 17 res := 0i 18 for i := 0; i < b.N; i++ { 19 n += 0.1i 20 res += n / d 21 } 22 result = res 23} 24 25func BenchmarkComplex128DivNisNaN(b *testing.B) { 26 d := cmplx.NaN() 27 n := 32 + 3i 28 res := 0i 29 for i := 0; i < b.N; i++ { 30 n += 0.1i 31 res += n / d 32 } 33 result = res 34} 35 36func BenchmarkComplex128DivDisNaN(b *testing.B) { 37 d := 15 + 2i 38 n := cmplx.NaN() 39 res := 0i 40 for i := 0; i < b.N; i++ { 41 d += 0.1i 42 res += n / d 43 } 44 result = res 45} 46 47func BenchmarkComplex128DivNisInf(b *testing.B) { 48 d := 15 + 2i 49 n := cmplx.Inf() 50 res := 0i 51 for i := 0; i < b.N; i++ { 52 d += 0.1i 53 res += n / d 54 } 55 result = res 56} 57 58func BenchmarkComplex128DivDisInf(b *testing.B) { 59 d := cmplx.Inf() 60 n := 32 + 3i 61 res := 0i 62 for i := 0; i < b.N; i++ { 63 n += 0.1i 64 res += n / d 65 } 66 result = res 67} 68