|  | // Copyright 2012 The Go Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style | 
|  | // license that can be found in the LICENSE file. | 
|  |  | 
|  | package runtime_test | 
|  |  | 
|  | import ( | 
|  | "math/cmplx" | 
|  | "testing" | 
|  | ) | 
|  |  | 
|  | var result complex128 | 
|  |  | 
|  | func BenchmarkComplex128DivNormal(b *testing.B) { | 
|  | d := 15 + 2i | 
|  | n := 32 + 3i | 
|  | res := 0i | 
|  | for i := 0; i < b.N; i++ { | 
|  | n += 0.1i | 
|  | res += n / d | 
|  | } | 
|  | result = res | 
|  | } | 
|  |  | 
|  | func BenchmarkComplex128DivNisNaN(b *testing.B) { | 
|  | d := cmplx.NaN() | 
|  | n := 32 + 3i | 
|  | res := 0i | 
|  | for i := 0; i < b.N; i++ { | 
|  | n += 0.1i | 
|  | res += n / d | 
|  | } | 
|  | result = res | 
|  | } | 
|  |  | 
|  | func BenchmarkComplex128DivDisNaN(b *testing.B) { | 
|  | d := 15 + 2i | 
|  | n := cmplx.NaN() | 
|  | res := 0i | 
|  | for i := 0; i < b.N; i++ { | 
|  | d += 0.1i | 
|  | res += n / d | 
|  | } | 
|  | result = res | 
|  | } | 
|  |  | 
|  | func BenchmarkComplex128DivNisInf(b *testing.B) { | 
|  | d := 15 + 2i | 
|  | n := cmplx.Inf() | 
|  | res := 0i | 
|  | for i := 0; i < b.N; i++ { | 
|  | d += 0.1i | 
|  | res += n / d | 
|  | } | 
|  | result = res | 
|  | } | 
|  |  | 
|  | func BenchmarkComplex128DivDisInf(b *testing.B) { | 
|  | d := cmplx.Inf() | 
|  | n := 32 + 3i | 
|  | res := 0i | 
|  | for i := 0; i < b.N; i++ { | 
|  | n += 0.1i | 
|  | res += n / d | 
|  | } | 
|  | result = res | 
|  | } |