mirror of
https://github.com/golang/go
synced 2024-11-21 21:54:40 -07:00
doc/go1.19: Linux race detector now requires glibc 2.17
Fixes #53522 Change-Id: Ibed838d358a733d26a6c3d89446d7fadb1012961 Reviewed-on: https://go-review.googlesource.com/c/go/+/413876 Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@golang.org> Auto-Submit: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
This commit is contained in:
parent
de5329f1de
commit
1d646a5a14
55
src/math/hypot_arm64.s
Normal file
55
src/math/hypot_arm64.s
Normal file
@ -0,0 +1,55 @@
|
||||
// Copyright 2021 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.
|
||||
|
||||
#include "textflag.h"
|
||||
|
||||
#define PosInf 0x7FF0000000000000
|
||||
#define NaN 0x7FF8000000000001
|
||||
|
||||
// func archHypot(p, q float64) float64
|
||||
TEXT ·archHypot(SB), NOSPLIT, $0-24
|
||||
FMOVD p+0(FP), F0
|
||||
FMOVD q+8(FP), F1
|
||||
MOVD $PosInf, R0
|
||||
FMOVD R0, F30 // F30 is PosInf
|
||||
|
||||
FABSD F0, F0
|
||||
FABSD F1, F1
|
||||
FCMPD F30, F0
|
||||
BGE isInf
|
||||
FCMPD F30, F1
|
||||
BGE isInf
|
||||
|
||||
FCMPED F0, F0
|
||||
BNE isNaN
|
||||
FCMPED F1, F1
|
||||
BNE isNaN
|
||||
|
||||
FMAXD F0, F1, F2 // p is greater
|
||||
FMIND F0, F1, F3 // q is less
|
||||
FCMPD F2, 0.0
|
||||
BEQ IsZero // if p == 0, return 0
|
||||
|
||||
// p q
|
||||
FDIVD F2, F3, F3
|
||||
FMULD F3, F3, F3
|
||||
FMOVD $1.0, F4
|
||||
FADDD F4, F3, F3
|
||||
FSQRTD F3, F3
|
||||
FMULD F3, F2, F3
|
||||
FMOVD F3, ret+16(FP)
|
||||
RET
|
||||
|
||||
isNaN:
|
||||
MOVD $NaN, R0
|
||||
FMOVD R0, F29 // F29 is NaN
|
||||
FMOVD F29, ret+16(FP) // return NaN
|
||||
RET
|
||||
isInf:
|
||||
FMOVD F30, ret+16(FP) // return +Inf
|
||||
RET
|
||||
isZero:
|
||||
// R0 has been set to zero
|
||||
MOVD R0, ret+16(FP) // return 0
|
||||
RET
|
@ -2,7 +2,8 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build 386 || amd64
|
||||
//go:build 386 || amd64 || arm64
|
||||
// +build 386 amd64 arm64
|
||||
|
||||
package math
|
||||
|
||||
|
@ -2,7 +2,8 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !386 && !amd64
|
||||
//go:build !386 && !amd64 && !arm64
|
||||
// +build !386,!amd64,!arm64
|
||||
|
||||
package math
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user