summaryrefslogtreecommitdiffstats
path: root/src/math/copysign.go
blob: 719c64b9eba7961c93c3261dfade1d0e76653df8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
// Copyright 2010 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 math

// Copysign returns a value with the magnitude
// of x and the sign of y.
func Copysign(x, y float64) float64 {
	const sign = 1 << 63
	return Float64frombits(Float64bits(x)&^sign | Float64bits(y)&sign)
}