From 1f7966346e4de8bda27699900e190d7925c1650c Mon Sep 17 00:00:00 2001 From: Keith Randall Date: Mon, 12 Aug 2013 10:25:18 -0700 Subject: [PATCH] math: convert textflags from numbers to symbols R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/12773044 --- src/pkg/math/abs_386.s | 4 +++- src/pkg/math/abs_amd64.s | 4 +++- src/pkg/math/abs_arm.s | 4 +++- src/pkg/math/asin_386.s | 6 ++++-- src/pkg/math/asin_amd64.s | 6 ++++-- src/pkg/math/asin_arm.s | 6 ++++-- src/pkg/math/atan2_386.s | 4 +++- src/pkg/math/atan2_amd64.s | 4 +++- src/pkg/math/atan2_arm.s | 4 +++- src/pkg/math/atan_386.s | 4 +++- src/pkg/math/atan_amd64.s | 4 +++- src/pkg/math/atan_arm.s | 4 +++- src/pkg/math/dim_386.s | 8 +++++--- src/pkg/math/dim_amd64.s | 8 +++++--- src/pkg/math/dim_arm.s | 8 +++++--- src/pkg/math/exp2_386.s | 4 +++- src/pkg/math/exp2_amd64.s | 4 +++- src/pkg/math/exp2_arm.s | 4 +++- src/pkg/math/exp_386.s | 4 +++- src/pkg/math/exp_amd64.s | 4 +++- src/pkg/math/exp_arm.s | 4 +++- src/pkg/math/expm1_386.s | 4 +++- src/pkg/math/expm1_amd64.s | 4 +++- src/pkg/math/expm1_arm.s | 4 +++- src/pkg/math/floor_386.s | 8 +++++--- src/pkg/math/floor_amd64.s | 8 +++++--- src/pkg/math/floor_arm.s | 8 +++++--- src/pkg/math/fltasm_amd64.s | 6 ++++-- src/pkg/math/frexp_386.s | 4 +++- src/pkg/math/frexp_amd64.s | 4 +++- src/pkg/math/frexp_arm.s | 4 +++- src/pkg/math/hypot_386.s | 4 +++- src/pkg/math/hypot_amd64.s | 4 +++- src/pkg/math/hypot_arm.s | 4 +++- src/pkg/math/ldexp_386.s | 4 +++- src/pkg/math/ldexp_amd64.s | 4 +++- src/pkg/math/ldexp_arm.s | 4 +++- src/pkg/math/log10_386.s | 6 ++++-- src/pkg/math/log10_amd64.s | 6 ++++-- src/pkg/math/log10_arm.s | 6 ++++-- src/pkg/math/log1p_386.s | 4 +++- src/pkg/math/log1p_amd64.s | 4 +++- src/pkg/math/log1p_arm.s | 4 +++- src/pkg/math/log_386.s | 4 +++- src/pkg/math/log_amd64.s | 4 +++- src/pkg/math/log_arm.s | 4 +++- src/pkg/math/mod_386.s | 4 +++- src/pkg/math/mod_amd64.s | 4 +++- src/pkg/math/mod_arm.s | 4 +++- src/pkg/math/modf_386.s | 4 +++- src/pkg/math/modf_amd64.s | 4 +++- src/pkg/math/modf_arm.s | 4 +++- src/pkg/math/remainder_386.s | 4 +++- src/pkg/math/remainder_amd64.s | 4 +++- src/pkg/math/remainder_arm.s | 4 +++- src/pkg/math/sin_386.s | 6 ++++-- src/pkg/math/sin_amd64.s | 6 ++++-- src/pkg/math/sin_arm.s | 6 ++++-- src/pkg/math/sincos_386.s | 4 +++- src/pkg/math/sincos_amd64.s | 4 +++- src/pkg/math/sincos_arm.s | 4 +++- src/pkg/math/sqrt_386.s | 4 +++- src/pkg/math/sqrt_amd64.s | 4 +++- src/pkg/math/sqrt_arm.s | 4 +++- src/pkg/math/tan_386.s | 4 +++- src/pkg/math/tan_amd64.s | 4 +++- src/pkg/math/tan_arm.s | 4 +++- 67 files changed, 223 insertions(+), 89 deletions(-) diff --git a/src/pkg/math/abs_386.s b/src/pkg/math/abs_386.s index 5746764756..3490cf66c7 100644 --- a/src/pkg/math/abs_386.s +++ b/src/pkg/math/abs_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Abs(x float64) float64 -TEXT ·Abs(SB),7,$0 +TEXT ·Abs(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=x FABS // F0=|x| FMOVDP F0, ret+8(FP) diff --git a/src/pkg/math/abs_amd64.s b/src/pkg/math/abs_amd64.s index 1193460458..779c8f5484 100644 --- a/src/pkg/math/abs_amd64.s +++ b/src/pkg/math/abs_amd64.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Abs(x float64) float64 -TEXT ·Abs(SB),7,$0 +TEXT ·Abs(SB),NOSPLIT,$0 MOVQ $(1<<63), BX MOVQ BX, X0 // movsd $(-0.0), x0 MOVSD x+0(FP), X1 diff --git a/src/pkg/math/abs_arm.s b/src/pkg/math/abs_arm.s index 929e1ce675..b5117ab39c 100644 --- a/src/pkg/math/abs_arm.s +++ b/src/pkg/math/abs_arm.s @@ -2,7 +2,9 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Abs(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Abs(SB),NOSPLIT,$0 MOVW x_lo+0(FP), R0 MOVW x_hi+4(FP), R1 AND $((1<<31)-1), R1 diff --git a/src/pkg/math/asin_386.s b/src/pkg/math/asin_386.s index cd3f9cd9bd..2c1d270948 100644 --- a/src/pkg/math/asin_386.s +++ b/src/pkg/math/asin_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Asin(x float64) float64 -TEXT ·Asin(SB),7,$0 +TEXT ·Asin(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=sin(x) FMOVD F0, F1 // F0=sin(x), F1=sin(x) FMULD F0, F0 // F0=sin(x)*sin(x), F1=sin(x) @@ -15,7 +17,7 @@ TEXT ·Asin(SB),7,$0 RET // func Acos(x float64) float64 -TEXT ·Acos(SB),7,$0 +TEXT ·Acos(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=cos(x) FMOVD F0, F1 // F0=cos(x), F1=cos(x) FMULD F0, F0 // F0=cos(x)*cos(x), F1=cos(x) diff --git a/src/pkg/math/asin_amd64.s b/src/pkg/math/asin_amd64.s index 42151f1e95..ea48104ac6 100644 --- a/src/pkg/math/asin_amd64.s +++ b/src/pkg/math/asin_amd64.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Asin(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Asin(SB),NOSPLIT,$0 JMP ·asin(SB) -TEXT ·Acos(SB),7,$0 +TEXT ·Acos(SB),NOSPLIT,$0 JMP ·acos(SB) diff --git a/src/pkg/math/asin_arm.s b/src/pkg/math/asin_arm.s index d27213fadc..b90526003e 100644 --- a/src/pkg/math/asin_arm.s +++ b/src/pkg/math/asin_arm.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Asin(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Asin(SB),NOSPLIT,$0 B ·asin(SB) -TEXT ·Acos(SB),7,$0 +TEXT ·Acos(SB),NOSPLIT,$0 B ·acos(SB) diff --git a/src/pkg/math/atan2_386.s b/src/pkg/math/atan2_386.s index 1bf301c4c0..fb649316a0 100644 --- a/src/pkg/math/atan2_386.s +++ b/src/pkg/math/atan2_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Atan2(y, x float64) float64 // =atan(y/x) -TEXT ·Atan2(SB),7,$0 +TEXT ·Atan2(SB),NOSPLIT,$0 FMOVD y+0(FP), F0 // F0=y FMOVD x+8(FP), F0 // F0=x, F1=y FPATAN // F0=atan(F1/F0) diff --git a/src/pkg/math/atan2_amd64.s b/src/pkg/math/atan2_amd64.s index 1c5b038c2a..f7a5a11d46 100644 --- a/src/pkg/math/atan2_amd64.s +++ b/src/pkg/math/atan2_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Atan2(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Atan2(SB),NOSPLIT,$0 JMP ·atan2(SB) diff --git a/src/pkg/math/atan2_arm.s b/src/pkg/math/atan2_arm.s index c2edafae17..24bff2c03d 100644 --- a/src/pkg/math/atan2_arm.s +++ b/src/pkg/math/atan2_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Atan2(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Atan2(SB),NOSPLIT,$0 B ·atan2(SB) diff --git a/src/pkg/math/atan_386.s b/src/pkg/math/atan_386.s index c988705bee..aad8ffcec7 100644 --- a/src/pkg/math/atan_386.s +++ b/src/pkg/math/atan_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Atan(x float64) float64 -TEXT ·Atan(SB),7,$0 +TEXT ·Atan(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=x FLD1 // F0=1, F1=x FPATAN // F0=atan(F1/F0) diff --git a/src/pkg/math/atan_amd64.s b/src/pkg/math/atan_amd64.s index 206072b931..fc4a91b0de 100644 --- a/src/pkg/math/atan_amd64.s +++ b/src/pkg/math/atan_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Atan(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Atan(SB),NOSPLIT,$0 JMP ·atan(SB) diff --git a/src/pkg/math/atan_arm.s b/src/pkg/math/atan_arm.s index ed492ab468..defa93a1ed 100644 --- a/src/pkg/math/atan_arm.s +++ b/src/pkg/math/atan_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Atan(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Atan(SB),NOSPLIT,$0 B ·atan(SB) diff --git a/src/pkg/math/dim_386.s b/src/pkg/math/dim_386.s index 6a31c75407..f715114c43 100644 --- a/src/pkg/math/dim_386.s +++ b/src/pkg/math/dim_386.s @@ -2,11 +2,13 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Dim(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Dim(SB),NOSPLIT,$0 JMP ·dim(SB) -TEXT ·Max(SB),7,$0 +TEXT ·Max(SB),NOSPLIT,$0 JMP ·max(SB) -TEXT ·Min(SB),7,$0 +TEXT ·Min(SB),NOSPLIT,$0 JMP ·min(SB) diff --git a/src/pkg/math/dim_amd64.s b/src/pkg/math/dim_amd64.s index 0ae8ad1962..38423ef028 100644 --- a/src/pkg/math/dim_amd64.s +++ b/src/pkg/math/dim_amd64.s @@ -2,12 +2,14 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + #define PosInf 0x7FF0000000000000 #define NaN 0x7FF8000000000001 #define NegInf 0xFFF0000000000000 // func Dim(x, y float64) float64 -TEXT ·Dim(SB),7,$0 +TEXT ·Dim(SB),NOSPLIT,$0 // (+Inf, +Inf) special case MOVQ x+0(FP), BX MOVQ y+8(FP), CX @@ -45,7 +47,7 @@ isDimNaN: RET // func ·Max(x, y float64) float64 -TEXT ·Max(SB),7,$0 +TEXT ·Max(SB),NOSPLIT,$0 // +Inf special cases MOVQ $PosInf, AX MOVQ x+0(FP), R8 @@ -98,7 +100,7 @@ isMaxZero: */ // func Min(x, y float64) float64 -TEXT ·Min(SB),7,$0 +TEXT ·Min(SB),NOSPLIT,$0 // -Inf special cases MOVQ $NegInf, AX MOVQ x+0(FP), R8 diff --git a/src/pkg/math/dim_arm.s b/src/pkg/math/dim_arm.s index 304fa78cde..162f08cda5 100644 --- a/src/pkg/math/dim_arm.s +++ b/src/pkg/math/dim_arm.s @@ -2,11 +2,13 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Dim(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Dim(SB),NOSPLIT,$0 B ·dim(SB) -TEXT ·Min(SB),7,$0 +TEXT ·Min(SB),NOSPLIT,$0 B ·min(SB) -TEXT ·Max(SB),7,$0 +TEXT ·Max(SB),NOSPLIT,$0 B ·max(SB) diff --git a/src/pkg/math/exp2_386.s b/src/pkg/math/exp2_386.s index 1537626319..71959d94dd 100644 --- a/src/pkg/math/exp2_386.s +++ b/src/pkg/math/exp2_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Exp2(x float64) float64 -TEXT ·Exp2(SB),7,$0 +TEXT ·Exp2(SB),NOSPLIT,$0 // test bits for not-finite MOVL x_hi+4(FP), AX ANDL $0x7ff00000, AX diff --git a/src/pkg/math/exp2_amd64.s b/src/pkg/math/exp2_amd64.s index 7bb44f78a2..77a53dad4e 100644 --- a/src/pkg/math/exp2_amd64.s +++ b/src/pkg/math/exp2_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Exp2(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Exp2(SB),NOSPLIT,$0 JMP ·exp2(SB) diff --git a/src/pkg/math/exp2_arm.s b/src/pkg/math/exp2_arm.s index 41b63bfaf8..fe51f25226 100644 --- a/src/pkg/math/exp2_arm.s +++ b/src/pkg/math/exp2_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Exp2(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Exp2(SB),NOSPLIT,$0 B ·exp2(SB) diff --git a/src/pkg/math/exp_386.s b/src/pkg/math/exp_386.s index aeceb3cadc..af2d680d55 100644 --- a/src/pkg/math/exp_386.s +++ b/src/pkg/math/exp_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Exp(x float64) float64 -TEXT ·Exp(SB),7,$0 +TEXT ·Exp(SB),NOSPLIT,$0 // test bits for not-finite MOVL x_hi+4(FP), AX ANDL $0x7ff00000, AX diff --git a/src/pkg/math/exp_amd64.s b/src/pkg/math/exp_amd64.s index eb6fb04323..070b45264a 100644 --- a/src/pkg/math/exp_amd64.s +++ b/src/pkg/math/exp_amd64.s @@ -2,6 +2,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // The method is based on a paper by Naoki Shibata: "Efficient evaluation // methods of elementary functions suitable for SIMD computation", Proc. // of International Supercomputing Conference 2010 (ISC'10), pp. 25 -- 32 @@ -31,7 +33,7 @@ #define NegInf 0xFFF0000000000000 // func Exp(x float64) float64 -TEXT ·Exp(SB),7,$0 +TEXT ·Exp(SB),NOSPLIT,$0 // test bits for not-finite MOVQ x+0(FP), BX MOVQ $~(1<<63), AX // sign bit mask diff --git a/src/pkg/math/exp_arm.s b/src/pkg/math/exp_arm.s index a95fa9342a..130b502ac1 100644 --- a/src/pkg/math/exp_arm.s +++ b/src/pkg/math/exp_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Exp(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Exp(SB),NOSPLIT,$0 B ·exp(SB) diff --git a/src/pkg/math/expm1_386.s b/src/pkg/math/expm1_386.s index 0ff9c4ab04..b268c58c63 100644 --- a/src/pkg/math/expm1_386.s +++ b/src/pkg/math/expm1_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Expm1(x float64) float64 -TEXT ·Expm1(SB),7,$0 +TEXT ·Expm1(SB),NOSPLIT,$0 FLDLN2 // F0=log(2) = 1/log2(e) ~ 0.693147 FMOVD x+0(FP), F0 // F0=x, F1=1/log2(e) FABS // F0=|x|, F1=1/log2(e) diff --git a/src/pkg/math/expm1_amd64.s b/src/pkg/math/expm1_amd64.s index a3b09e2f6d..66a75b3d55 100644 --- a/src/pkg/math/expm1_amd64.s +++ b/src/pkg/math/expm1_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Expm1(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Expm1(SB),NOSPLIT,$0 JMP ·expm1(SB) diff --git a/src/pkg/math/expm1_arm.s b/src/pkg/math/expm1_arm.s index e4e40441b5..838744447f 100644 --- a/src/pkg/math/expm1_arm.s +++ b/src/pkg/math/expm1_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Expm1(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Expm1(SB),NOSPLIT,$0 B ·expm1(SB) diff --git a/src/pkg/math/floor_386.s b/src/pkg/math/floor_386.s index 9aa71c043f..37d5a4559f 100644 --- a/src/pkg/math/floor_386.s +++ b/src/pkg/math/floor_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Ceil(x float64) float64 -TEXT ·Ceil(SB),7,$0 +TEXT ·Ceil(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=x FSTCW -2(SP) // save old Control Word MOVW -2(SP), AX @@ -17,7 +19,7 @@ TEXT ·Ceil(SB),7,$0 RET // func Floor(x float64) float64 -TEXT ·Floor(SB),7,$0 +TEXT ·Floor(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=x FSTCW -2(SP) // save old Control Word MOVW -2(SP), AX @@ -31,7 +33,7 @@ TEXT ·Floor(SB),7,$0 RET // func Trunc(x float64) float64 -TEXT ·Trunc(SB),7,$0 +TEXT ·Trunc(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=x FSTCW -2(SP) // save old Control Word MOVW -2(SP), AX diff --git a/src/pkg/math/floor_amd64.s b/src/pkg/math/floor_amd64.s index bb1a2fd22a..2fd31c4fae 100644 --- a/src/pkg/math/floor_amd64.s +++ b/src/pkg/math/floor_amd64.s @@ -2,10 +2,12 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + #define Big 0x4330000000000000 // 2**52 // func Floor(x float64) float64 -TEXT ·Floor(SB),7,$0 +TEXT ·Floor(SB),NOSPLIT,$0 MOVQ x+0(FP), AX MOVQ $~(1<<63), DX // sign bit mask ANDQ AX,DX // DX = |x| @@ -27,7 +29,7 @@ isBig_floor: RET // func Ceil(x float64) float64 -TEXT ·Ceil(SB),7,$0 +TEXT ·Ceil(SB),NOSPLIT,$0 MOVQ x+0(FP), AX MOVQ $~(1<<63), DX // sign bit mask MOVQ AX, BX // BX = copy of x @@ -53,7 +55,7 @@ isBig_ceil: RET // func Trunc(x float64) float64 -TEXT ·Trunc(SB),7,$0 +TEXT ·Trunc(SB),NOSPLIT,$0 MOVQ x+0(FP), AX MOVQ $~(1<<63), DX // sign bit mask MOVQ AX, BX // BX = copy of x diff --git a/src/pkg/math/floor_arm.s b/src/pkg/math/floor_arm.s index e3ae53f525..cb3b98e95c 100644 --- a/src/pkg/math/floor_arm.s +++ b/src/pkg/math/floor_arm.s @@ -2,11 +2,13 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Floor(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Floor(SB),NOSPLIT,$0 B ·floor(SB) -TEXT ·Ceil(SB),7,$0 +TEXT ·Ceil(SB),NOSPLIT,$0 B ·ceil(SB) -TEXT ·Trunc(SB),7,$0 +TEXT ·Trunc(SB),NOSPLIT,$0 B ·trunc(SB) diff --git a/src/pkg/math/fltasm_amd64.s b/src/pkg/math/fltasm_amd64.s index 66442cd30f..3e8bae5e20 100644 --- a/src/pkg/math/fltasm_amd64.s +++ b/src/pkg/math/fltasm_amd64.s @@ -23,7 +23,9 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. -TEXT ·SetFPControl(SB), 7, $8 +#include "../../cmd/ld/textflag.h" + +TEXT ·SetFPControl(SB), NOSPLIT, $8 // Set new MOVL p+0(FP), DI XORL $(0x3F<<7), DI @@ -37,7 +39,7 @@ TEXT ·SetFPControl(SB), 7, $8 LDMXCSR 0(SP) RET -TEXT ·GetFPControl(SB), 7, $0 +TEXT ·GetFPControl(SB), NOSPLIT, $0 WAIT STMXCSR 0(SP) MOVWLZX 0(SP), AX diff --git a/src/pkg/math/frexp_386.s b/src/pkg/math/frexp_386.s index 95e50de02f..c6d0a80eda 100644 --- a/src/pkg/math/frexp_386.s +++ b/src/pkg/math/frexp_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Frexp(f float64) (frac float64, exp int) -TEXT ·Frexp(SB),7,$0 +TEXT ·Frexp(SB),NOSPLIT,$0 FMOVD f+0(FP), F0 // F0=f FXAM FSTSW AX diff --git a/src/pkg/math/frexp_amd64.s b/src/pkg/math/frexp_amd64.s index bc52b79ab7..03d1012433 100644 --- a/src/pkg/math/frexp_amd64.s +++ b/src/pkg/math/frexp_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Frexp(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Frexp(SB),NOSPLIT,$0 JMP ·frexp(SB) diff --git a/src/pkg/math/frexp_arm.s b/src/pkg/math/frexp_arm.s index cfd5d0b525..9d40ae46a6 100644 --- a/src/pkg/math/frexp_arm.s +++ b/src/pkg/math/frexp_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Frexp(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Frexp(SB),NOSPLIT,$0 B ·frexp(SB) diff --git a/src/pkg/math/hypot_386.s b/src/pkg/math/hypot_386.s index 8edfe064f7..eec1bf5548 100644 --- a/src/pkg/math/hypot_386.s +++ b/src/pkg/math/hypot_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Hypot(p, q float64) float64 -TEXT ·Hypot(SB),7,$0 +TEXT ·Hypot(SB),NOSPLIT,$0 // test bits for not-finite MOVL p_hi+4(FP), AX // high word p ANDL $0x7ff00000, AX diff --git a/src/pkg/math/hypot_amd64.s b/src/pkg/math/hypot_amd64.s index 40ba6f41dd..5c0ff4dd83 100644 --- a/src/pkg/math/hypot_amd64.s +++ b/src/pkg/math/hypot_amd64.s @@ -2,11 +2,13 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + #define PosInf 0x7FF0000000000000 #define NaN 0x7FF8000000000001 // func Hypot(p, q float64) float64 -TEXT ·Hypot(SB),7,$0 +TEXT ·Hypot(SB),NOSPLIT,$0 // test bits for special cases MOVQ p+0(FP), BX MOVQ $~(1<<63), AX diff --git a/src/pkg/math/hypot_arm.s b/src/pkg/math/hypot_arm.s index 2c599fd551..2562aa8306 100644 --- a/src/pkg/math/hypot_arm.s +++ b/src/pkg/math/hypot_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Hypot(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Hypot(SB),NOSPLIT,$0 B ·hypot(SB) diff --git a/src/pkg/math/ldexp_386.s b/src/pkg/math/ldexp_386.s index 566245dc2e..baf377ead6 100644 --- a/src/pkg/math/ldexp_386.s +++ b/src/pkg/math/ldexp_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Ldexp(frac float64, exp int) float64 -TEXT ·Ldexp(SB),7,$0 +TEXT ·Ldexp(SB),NOSPLIT,$0 FMOVL exp+8(FP), F0 // F0=exp FMOVD frac+0(FP), F0 // F0=frac, F1=e FSCALE // F0=x*2**e, F1=e diff --git a/src/pkg/math/ldexp_amd64.s b/src/pkg/math/ldexp_amd64.s index a8d458322f..c7fc226efa 100644 --- a/src/pkg/math/ldexp_amd64.s +++ b/src/pkg/math/ldexp_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Ldexp(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Ldexp(SB),NOSPLIT,$0 JMP ·ldexp(SB) diff --git a/src/pkg/math/ldexp_arm.s b/src/pkg/math/ldexp_arm.s index 3c42f515e6..16744ea57d 100644 --- a/src/pkg/math/ldexp_arm.s +++ b/src/pkg/math/ldexp_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Ldexp(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Ldexp(SB),NOSPLIT,$0 B ·ldexp(SB) diff --git a/src/pkg/math/log10_386.s b/src/pkg/math/log10_386.s index d4f94235e1..4ae069da62 100644 --- a/src/pkg/math/log10_386.s +++ b/src/pkg/math/log10_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Log10(x float64) float64 -TEXT ·Log10(SB),7,$0 +TEXT ·Log10(SB),NOSPLIT,$0 FLDLG2 // F0=log10(2) FMOVD x+0(FP), F0 // F0=x, F1=log10(2) FYL2X // F0=log10(x)=log2(x)*log10(2) @@ -11,7 +13,7 @@ TEXT ·Log10(SB),7,$0 RET // func Log2(x float64) float64 -TEXT ·Log2(SB),7,$0 +TEXT ·Log2(SB),NOSPLIT,$0 FLD1 // F0=1 FMOVD x+0(FP), F0 // F0=x, F1=1 FYL2X // F0=log2(x) diff --git a/src/pkg/math/log10_amd64.s b/src/pkg/math/log10_amd64.s index 86a3b05777..b9ae832689 100644 --- a/src/pkg/math/log10_amd64.s +++ b/src/pkg/math/log10_amd64.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Log10(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Log10(SB),NOSPLIT,$0 JMP ·log10(SB) -TEXT ·Log2(SB),7,$0 +TEXT ·Log2(SB),NOSPLIT,$0 JMP ·log2(SB) diff --git a/src/pkg/math/log10_arm.s b/src/pkg/math/log10_arm.s index 619b0fe1e9..fa7580f6fb 100644 --- a/src/pkg/math/log10_arm.s +++ b/src/pkg/math/log10_arm.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Log10(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Log10(SB),NOSPLIT,$0 B ·log10(SB) -TEXT ·Log2(SB),7,$0 +TEXT ·Log2(SB),NOSPLIT,$0 B ·log2(SB) diff --git a/src/pkg/math/log1p_386.s b/src/pkg/math/log1p_386.s index 30dc8033d2..3b30fd5b7f 100644 --- a/src/pkg/math/log1p_386.s +++ b/src/pkg/math/log1p_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Log1p(x float64) float64 -TEXT ·Log1p(SB),7,$0 +TEXT ·Log1p(SB),NOSPLIT,$0 FMOVD $(2.928932188134524e-01), F0 FMOVD x+0(FP), F0 // F0=x, F1=1-sqrt(2)/2 = 0.29289321881345247559915564 FABS // F0=|x|, F1=1-sqrt(2)/2 diff --git a/src/pkg/math/log1p_amd64.s b/src/pkg/math/log1p_amd64.s index 65c93adad7..48c24f41f2 100644 --- a/src/pkg/math/log1p_amd64.s +++ b/src/pkg/math/log1p_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Log1p(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Log1p(SB),NOSPLIT,$0 JMP ·log1p(SB) diff --git a/src/pkg/math/log1p_arm.s b/src/pkg/math/log1p_arm.s index 0e599aaffb..fd2740d0dd 100644 --- a/src/pkg/math/log1p_arm.s +++ b/src/pkg/math/log1p_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Log1p(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Log1p(SB),NOSPLIT,$0 B ·log1p(SB) diff --git a/src/pkg/math/log_386.s b/src/pkg/math/log_386.s index 7a6f2c0525..21a0633b19 100644 --- a/src/pkg/math/log_386.s +++ b/src/pkg/math/log_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Log(x float64) float64 -TEXT ·Log(SB),7,$0 +TEXT ·Log(SB),NOSPLIT,$0 FLDLN2 // F0=log(2) FMOVD x+0(FP), F0 // F0=x, F1=log(2) FYL2X // F0=log(x)=log2(x)*log(2) diff --git a/src/pkg/math/log_amd64.s b/src/pkg/math/log_amd64.s index 6ae5fbc95e..dffc5aec88 100644 --- a/src/pkg/math/log_amd64.s +++ b/src/pkg/math/log_amd64.s @@ -2,6 +2,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + #define HSqrt2 7.07106781186547524401e-01 // sqrt(2)/2 #define Ln2Hi 6.93147180369123816490e-01 // 0x3fe62e42fee00000 #define Ln2Lo 1.90821492927058770002e-10 // 0x3dea39ef35793c76 @@ -17,7 +19,7 @@ #define PosInf 0x7FF0000000000000 // func Log(x float64) float64 -TEXT ·Log(SB),7,$0 +TEXT ·Log(SB),NOSPLIT,$0 // test bits for special cases MOVQ x+0(FP), BX MOVQ $~(1<<63), AX // sign bit mask diff --git a/src/pkg/math/log_arm.s b/src/pkg/math/log_arm.s index 3dce1e9d4e..28448aeefc 100644 --- a/src/pkg/math/log_arm.s +++ b/src/pkg/math/log_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Log(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Log(SB),NOSPLIT,$0 B ·log(SB) diff --git a/src/pkg/math/mod_386.s b/src/pkg/math/mod_386.s index bcb451b5dd..9b3b6bd06f 100644 --- a/src/pkg/math/mod_386.s +++ b/src/pkg/math/mod_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Mod(x, y float64) float64 -TEXT ·Mod(SB),7,$0 +TEXT ·Mod(SB),NOSPLIT,$0 FMOVD y+8(FP), F0 // F0=y FMOVD x+0(FP), F0 // F0=x, F1=y FPREM // F0=reduced_x, F1=y diff --git a/src/pkg/math/mod_amd64.s b/src/pkg/math/mod_amd64.s index 33b86be408..bef83fcf7f 100644 --- a/src/pkg/math/mod_amd64.s +++ b/src/pkg/math/mod_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Mod(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Mod(SB),NOSPLIT,$0 JMP ·mod(SB) diff --git a/src/pkg/math/mod_arm.s b/src/pkg/math/mod_arm.s index 47c564bf11..1f51588f8d 100644 --- a/src/pkg/math/mod_arm.s +++ b/src/pkg/math/mod_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Mod(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Mod(SB),NOSPLIT,$0 B ·mod(SB) diff --git a/src/pkg/math/modf_386.s b/src/pkg/math/modf_386.s index f5dc415c38..07a0dc5cfe 100644 --- a/src/pkg/math/modf_386.s +++ b/src/pkg/math/modf_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Modf(f float64) (int float64, frac float64) -TEXT ·Modf(SB),7,$0 +TEXT ·Modf(SB),NOSPLIT,$0 FMOVD f+0(FP), F0 // F0=f FMOVD F0, F1 // F0=f, F1=f FSTCW -2(SP) // save old Control Word diff --git a/src/pkg/math/modf_amd64.s b/src/pkg/math/modf_amd64.s index 2a6d7ea042..05feb4bf90 100644 --- a/src/pkg/math/modf_amd64.s +++ b/src/pkg/math/modf_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Modf(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Modf(SB),NOSPLIT,$0 JMP ·modf(SB) diff --git a/src/pkg/math/modf_arm.s b/src/pkg/math/modf_arm.s index 6cef187340..e6bd26d53b 100644 --- a/src/pkg/math/modf_arm.s +++ b/src/pkg/math/modf_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Modf(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Modf(SB),NOSPLIT,$0 B ·modf(SB) diff --git a/src/pkg/math/remainder_386.s b/src/pkg/math/remainder_386.s index 2238aba49f..bbe13a0d92 100644 --- a/src/pkg/math/remainder_386.s +++ b/src/pkg/math/remainder_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Remainder(x, y float64) float64 -TEXT ·Remainder(SB),7,$0 +TEXT ·Remainder(SB),NOSPLIT,$0 FMOVD y+8(FP), F0 // F0=y FMOVD x+0(FP), F0 // F0=x, F1=y FPREM1 // F0=reduced_x, F1=y diff --git a/src/pkg/math/remainder_amd64.s b/src/pkg/math/remainder_amd64.s index f04bd3de7a..e5e23c7ce3 100644 --- a/src/pkg/math/remainder_amd64.s +++ b/src/pkg/math/remainder_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Remainder(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Remainder(SB),NOSPLIT,$0 JMP ·remainder(SB) diff --git a/src/pkg/math/remainder_arm.s b/src/pkg/math/remainder_arm.s index 642af6a85a..8728afe931 100644 --- a/src/pkg/math/remainder_arm.s +++ b/src/pkg/math/remainder_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Remainder(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Remainder(SB),NOSPLIT,$0 B ·remainder(SB) diff --git a/src/pkg/math/sin_386.s b/src/pkg/math/sin_386.s index b2a836eb12..09271c0355 100644 --- a/src/pkg/math/sin_386.s +++ b/src/pkg/math/sin_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Cos(x float64) float64 -TEXT ·Cos(SB),7,$0 +TEXT ·Cos(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=x FCOS // F0=cos(x) if -2**63 < x < 2**63 FSTSW AX // AX=status word @@ -24,7 +26,7 @@ TEXT ·Cos(SB),7,$0 RET // func Sin(x float64) float64 -TEXT ·Sin(SB),7,$0 +TEXT ·Sin(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=x FSIN // F0=sin(x) if -2**63 < x < 2**63 FSTSW AX // AX=status word diff --git a/src/pkg/math/sin_amd64.s b/src/pkg/math/sin_amd64.s index c9c99e5b35..008bf4be58 100644 --- a/src/pkg/math/sin_amd64.s +++ b/src/pkg/math/sin_amd64.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Sin(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Sin(SB),NOSPLIT,$0 JMP ·sin(SB) -TEXT ·Cos(SB),7,$0 +TEXT ·Cos(SB),NOSPLIT,$0 JMP ·cos(SB) diff --git a/src/pkg/math/sin_arm.s b/src/pkg/math/sin_arm.s index 9447ca2ebc..a057b4fc9d 100644 --- a/src/pkg/math/sin_arm.s +++ b/src/pkg/math/sin_arm.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Sin(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Sin(SB),NOSPLIT,$0 B ·sin(SB) -TEXT ·Cos(SB),7,$0 +TEXT ·Cos(SB),NOSPLIT,$0 B ·cos(SB) diff --git a/src/pkg/math/sincos_386.s b/src/pkg/math/sincos_386.s index 8f5e0f8d1e..bf964b1681 100644 --- a/src/pkg/math/sincos_386.s +++ b/src/pkg/math/sincos_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Sincos(x float64) (sin, cos float64) -TEXT ·Sincos(SB),7,$0 +TEXT ·Sincos(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=x FSINCOS // F0=cos(x), F1=sin(x) if -2**63 < x < 2**63 FSTSW AX // AX=status word diff --git a/src/pkg/math/sincos_amd64.s b/src/pkg/math/sincos_amd64.s index c9dea09164..bccc1ade12 100644 --- a/src/pkg/math/sincos_amd64.s +++ b/src/pkg/math/sincos_amd64.s @@ -2,6 +2,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // The method is based on a paper by Naoki Shibata: "Efficient evaluation // methods of elementary functions suitable for SIMD computation", Proc. // of International Supercomputing Conference 2010 (ISC'10), pp. 25 -- 32 @@ -31,7 +33,7 @@ #define T4 5.51146384479717813051146e-07 // (+1.0/1814400) // func Sincos(d float64) (sin, cos float64) -TEXT ·Sincos(SB),7,$0 +TEXT ·Sincos(SB),NOSPLIT,$0 // test for special cases MOVQ $~(1<<63), DX // sign bit mask MOVQ x+0(FP), BX diff --git a/src/pkg/math/sincos_arm.s b/src/pkg/math/sincos_arm.s index 3e2b0e4e0d..b6866af54f 100644 --- a/src/pkg/math/sincos_arm.s +++ b/src/pkg/math/sincos_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Sincos(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Sincos(SB),NOSPLIT,$0 B ·sincos(SB) diff --git a/src/pkg/math/sqrt_386.s b/src/pkg/math/sqrt_386.s index 824fa634c5..2d0c786d0c 100644 --- a/src/pkg/math/sqrt_386.s +++ b/src/pkg/math/sqrt_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Sqrt(x float64) float64 -TEXT ·Sqrt(SB),7,$0 +TEXT ·Sqrt(SB),NOSPLIT,$0 FMOVD x+0(FP),F0 FSQRT FMOVDP F0,ret+8(FP) diff --git a/src/pkg/math/sqrt_amd64.s b/src/pkg/math/sqrt_amd64.s index 553c4e01b6..1508944c90 100644 --- a/src/pkg/math/sqrt_amd64.s +++ b/src/pkg/math/sqrt_amd64.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Sqrt(x float64) float64 -TEXT ·Sqrt(SB),7,$0 +TEXT ·Sqrt(SB),NOSPLIT,$0 SQRTSD x+0(FP), X0 MOVSD X0, ret+8(FP) RET diff --git a/src/pkg/math/sqrt_arm.s b/src/pkg/math/sqrt_arm.s index b965b4845c..f731ee976d 100644 --- a/src/pkg/math/sqrt_arm.s +++ b/src/pkg/math/sqrt_arm.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Sqrt(x float64) float64 -TEXT ·Sqrt(SB),7,$0 +TEXT ·Sqrt(SB),NOSPLIT,$0 MOVD x+0(FP),F0 SQRTD F0,F0 MOVD F0,ret+8(FP) diff --git a/src/pkg/math/tan_386.s b/src/pkg/math/tan_386.s index f3ad339073..2320326e37 100644 --- a/src/pkg/math/tan_386.s +++ b/src/pkg/math/tan_386.s @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +#include "../../cmd/ld/textflag.h" + // func Tan(x float64) float64 -TEXT ·Tan(SB),7,$0 +TEXT ·Tan(SB),NOSPLIT,$0 FMOVD x+0(FP), F0 // F0=x FPTAN // F0=1, F1=tan(x) if -2**63 < x < 2**63 FSTSW AX // AX=status word diff --git a/src/pkg/math/tan_amd64.s b/src/pkg/math/tan_amd64.s index 823ceb254b..9fa5f148ef 100644 --- a/src/pkg/math/tan_amd64.s +++ b/src/pkg/math/tan_amd64.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Tan(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Tan(SB),NOSPLIT,$0 JMP ·tan(SB) diff --git a/src/pkg/math/tan_arm.s b/src/pkg/math/tan_arm.s index 4be35c38b1..68fea318da 100644 --- a/src/pkg/math/tan_arm.s +++ b/src/pkg/math/tan_arm.s @@ -2,5 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -TEXT ·Tan(SB),7,$0 +#include "../../cmd/ld/textflag.h" + +TEXT ·Tan(SB),NOSPLIT,$0 B ·tan(SB) -- 2.48.1