Merge from mainline (167278:168000).
[official-gcc/graphite-test-results.git] / libgo / go / math / copysign.go
blobee65456a1ce19a5c026d9d6a5123adca3aa038bb
1 // Copyright 2010 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.
5 package math
7 // Copysign(x, y) returns a value with the magnitude
8 // of x and the sign of y.
9 func Copysign(x, y float64) float64 {
10 const sign = 1 << 63
11 return Float64frombits(Float64bits(x)&^sign | Float64bits(y)&sign)