1// Copyright 2016 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.
4
5package math
6
7import "internal/cpu"
8
9func expTrampolineSetup(x float64) float64
10func expAsm(x float64) float64
11
12func logTrampolineSetup(x float64) float64
13func logAsm(x float64) float64
14
15// Below here all functions are grouped in stubs.go for other
16// architectures.
17
18const haveArchLog10 = true
19
20func archLog10(x float64) float64
21func log10TrampolineSetup(x float64) float64
22func log10Asm(x float64) float64
23
24const haveArchCos = true
25
26func archCos(x float64) float64
27func cosTrampolineSetup(x float64) float64
28func cosAsm(x float64) float64
29
30const haveArchCosh = true
31
32func archCosh(x float64) float64
33func coshTrampolineSetup(x float64) float64
34func coshAsm(x float64) float64
35
36const haveArchSin = true
37
38func archSin(x float64) float64
39func sinTrampolineSetup(x float64) float64
40func sinAsm(x float64) float64
41
42const haveArchSinh = true
43
44func archSinh(x float64) float64
45func sinhTrampolineSetup(x float64) float64
46func sinhAsm(x float64) float64
47
48const haveArchTanh = true
49
50func archTanh(x float64) float64
51func tanhTrampolineSetup(x float64) float64
52func tanhAsm(x float64) float64
53
54const haveArchLog1p = true
55
56func archLog1p(x float64) float64
57func log1pTrampolineSetup(x float64) float64
58func log1pAsm(x float64) float64
59
60const haveArchAtanh = true
61
62func archAtanh(x float64) float64
63func atanhTrampolineSetup(x float64) float64
64func atanhAsm(x float64) float64
65
66const haveArchAcos = true
67
68func archAcos(x float64) float64
69func acosTrampolineSetup(x float64) float64
70func acosAsm(x float64) float64
71
72const haveArchAcosh = true
73
74func archAcosh(x float64) float64
75func acoshTrampolineSetup(x float64) float64
76func acoshAsm(x float64) float64
77
78const haveArchAsin = true
79
80func archAsin(x float64) float64
81func asinTrampolineSetup(x float64) float64
82func asinAsm(x float64) float64
83
84const haveArchAsinh = true
85
86func archAsinh(x float64) float64
87func asinhTrampolineSetup(x float64) float64
88func asinhAsm(x float64) float64
89
90const haveArchErf = true
91
92func archErf(x float64) float64
93func erfTrampolineSetup(x float64) float64
94func erfAsm(x float64) float64
95
96const haveArchErfc = true
97
98func archErfc(x float64) float64
99func erfcTrampolineSetup(x float64) float64
100func erfcAsm(x float64) float64
101
102const haveArchAtan = true
103
104func archAtan(x float64) float64
105func atanTrampolineSetup(x float64) float64
106func atanAsm(x float64) float64
107
108const haveArchAtan2 = true
109
110func archAtan2(y, x float64) float64
111func atan2TrampolineSetup(x, y float64) float64
112func atan2Asm(x, y float64) float64
113
114const haveArchCbrt = true
115
116func archCbrt(x float64) float64
117func cbrtTrampolineSetup(x float64) float64
118func cbrtAsm(x float64) float64
119
120const haveArchTan = true
121
122func archTan(x float64) float64
123func tanTrampolineSetup(x float64) float64
124func tanAsm(x float64) float64
125
126const haveArchExpm1 = true
127
128func archExpm1(x float64) float64
129func expm1TrampolineSetup(x float64) float64
130func expm1Asm(x float64) float64
131
132const haveArchPow = true
133
134func archPow(x, y float64) float64
135func powTrampolineSetup(x, y float64) float64
136func powAsm(x, y float64) float64
137
138const haveArchFrexp = false
139
140func archFrexp(x float64) (float64, int) {
141	panic("not implemented")
142}
143
144const haveArchLdexp = false
145
146func archLdexp(frac float64, exp int) float64 {
147	panic("not implemented")
148}
149
150const haveArchLog2 = false
151
152func archLog2(x float64) float64 {
153	panic("not implemented")
154}
155
156const haveArchMod = false
157
158func archMod(x, y float64) float64 {
159	panic("not implemented")
160}
161
162const haveArchRemainder = false
163
164func archRemainder(x, y float64) float64 {
165	panic("not implemented")
166}
167
168// hasVX reports whether the machine has the z/Architecture
169// vector facility installed and enabled.
170var hasVX = cpu.S390X.HasVX
171