1; powf.tst - Directed test cases for powf
2;
3; Copyright (c) 2007-2019, Arm Limited.
4; SPDX-License-Identifier: MIT
5
6func=powf op1=7f800001 op2=7f800001 result=7fc00001 errno=0 status=i
7func=powf op1=7f800001 op2=ff800001 result=7fc00001 errno=0 status=i
8func=powf op1=7f800001 op2=7fc00001 result=7fc00001 errno=0 status=i
9func=powf op1=7f800001 op2=ffc00001 result=7fc00001 errno=0 status=i
10func=powf op1=7f800001 op2=7f800000 result=7fc00001 errno=0 status=i
11func=powf op1=7f800001 op2=40800000 result=7fc00001 errno=0 status=i
12func=powf op1=7f800001 op2=40400000 result=7fc00001 errno=0 status=i
13func=powf op1=7f800001 op2=3f000000 result=7fc00001 errno=0 status=i
14func=powf op1=7f800001 op2=00000000 result=7fc00001 errno=0 status=i
15func=powf op1=7f800001 op2=80000000 result=7fc00001 errno=0 status=i
16func=powf op1=7f800001 op2=bf000000 result=7fc00001 errno=0 status=i
17func=powf op1=7f800001 op2=c0400000 result=7fc00001 errno=0 status=i
18func=powf op1=7f800001 op2=c0800000 result=7fc00001 errno=0 status=i
19func=powf op1=7f800001 op2=ff800000 result=7fc00001 errno=0 status=i
20func=powf op1=7f800001 op2=7f800001 result=7fc00001 errno=0 status=i
21func=powf op1=7f800001 op2=ff800001 result=7fc00001 errno=0 status=i
22func=powf op1=ff800001 op2=7fc00001 result=7fc00001 errno=0 status=i
23func=powf op1=ff800001 op2=ffc00001 result=7fc00001 errno=0 status=i
24func=powf op1=ff800001 op2=7f800000 result=7fc00001 errno=0 status=i
25func=powf op1=ff800001 op2=40800000 result=7fc00001 errno=0 status=i
26func=powf op1=ff800001 op2=40400000 result=7fc00001 errno=0 status=i
27func=powf op1=ff800001 op2=3f000000 result=7fc00001 errno=0 status=i
28func=powf op1=ff800001 op2=00000000 result=7fc00001 errno=0 status=i
29func=powf op1=ff800001 op2=80000000 result=7fc00001 errno=0 status=i
30func=powf op1=ff800001 op2=bf000000 result=7fc00001 errno=0 status=i
31func=powf op1=ff800001 op2=c0400000 result=7fc00001 errno=0 status=i
32func=powf op1=ff800001 op2=c0800000 result=7fc00001 errno=0 status=i
33func=powf op1=ff800001 op2=ff800000 result=7fc00001 errno=0 status=i
34func=powf op1=7fc00001 op2=7f800001 result=7fc00001 errno=0 status=i
35func=powf op1=7fc00001 op2=ff800001 result=7fc00001 errno=0 status=i
36func=powf op1=7fc00001 op2=7fc00001 result=7fc00001 errno=0
37func=powf op1=7fc00001 op2=ffc00001 result=7fc00001 errno=0
38func=powf op1=7fc00001 op2=7f800000 result=7fc00001 errno=0
39func=powf op1=7fc00001 op2=40800000 result=7fc00001 errno=0
40func=powf op1=7fc00001 op2=40400000 result=7fc00001 errno=0
41func=powf op1=7fc00001 op2=3f000000 result=7fc00001 errno=0
42func=powf op1=7fc00001 op2=00000000 result=3f800000 errno=0
43func=powf op1=7fc00001 op2=80000000 result=3f800000 errno=0
44func=powf op1=7fc00001 op2=bf000000 result=7fc00001 errno=0
45func=powf op1=7fc00001 op2=c0400000 result=7fc00001 errno=0
46func=powf op1=7fc00001 op2=c0800000 result=7fc00001 errno=0
47func=powf op1=7fc00001 op2=ff800000 result=7fc00001 errno=0
48func=powf op1=ffc00001 op2=7f800001 result=7fc00001 errno=0 status=i
49func=powf op1=ffc00001 op2=ff800001 result=7fc00001 errno=0 status=i
50func=powf op1=ffc00001 op2=7fc00001 result=7fc00001 errno=0
51func=powf op1=ffc00001 op2=ffc00001 result=7fc00001 errno=0
52func=powf op1=ffc00001 op2=7f800000 result=7fc00001 errno=0
53func=powf op1=ffc00001 op2=40800000 result=7fc00001 errno=0
54func=powf op1=ffc00001 op2=40400000 result=7fc00001 errno=0
55func=powf op1=ffc00001 op2=3f000000 result=7fc00001 errno=0
56func=powf op1=ffc00001 op2=00000000 result=3f800000 errno=0
57func=powf op1=ffc00001 op2=80000000 result=3f800000 errno=0
58func=powf op1=ffc00001 op2=bf000000 result=7fc00001 errno=0
59func=powf op1=ffc00001 op2=c0400000 result=7fc00001 errno=0
60func=powf op1=ffc00001 op2=c0800000 result=7fc00001 errno=0
61func=powf op1=ffc00001 op2=ff800000 result=7fc00001 errno=0
62func=powf op1=7f800000 op2=7f800001 result=7fc00001 errno=0 status=i
63func=powf op1=7f800000 op2=ff800001 result=7fc00001 errno=0 status=i
64func=powf op1=7f800000 op2=7fc00001 result=7fc00001 errno=0
65func=powf op1=7f800000 op2=ffc00001 result=7fc00001 errno=0
66func=powf op1=7f800000 op2=7f800000 result=7f800000 errno=0
67func=powf op1=7f800000 op2=40800000 result=7f800000 errno=0
68func=powf op1=7f800000 op2=40400000 result=7f800000 errno=0
69func=powf op1=7f800000 op2=3f000000 result=7f800000 errno=0
70func=powf op1=7f800000 op2=00000001 result=7f800000 errno=0
71func=powf op1=7f800000 op2=00000000 result=3f800000 errno=0
72func=powf op1=7f800000 op2=80000000 result=3f800000 errno=0
73func=powf op1=7f800000 op2=bf000000 result=00000000 errno=0
74func=powf op1=7f800000 op2=c0400000 result=00000000 errno=0
75func=powf op1=7f800000 op2=c0800000 result=00000000 errno=0
76func=powf op1=7f800000 op2=ff800000 result=00000000 errno=0
77func=powf op1=40800000 op2=7f800001 result=7fc00001 errno=0 status=i
78func=powf op1=40800000 op2=ff800001 result=7fc00001 errno=0 status=i
79func=powf op1=40800000 op2=7fc00001 result=7fc00001 errno=0
80func=powf op1=40800000 op2=ffc00001 result=7fc00001 errno=0
81func=powf op1=40800000 op2=7f800000 result=7f800000 errno=0
82func=powf op1=40800000 op2=40800000 result=43800000 errno=0
83func=powf op1=40800000 op2=40400000 result=42800000 errno=0
84func=powf op1=40800000 op2=3f000000 result=40000000 errno=0
85func=powf op1=40800000 op2=00000000 result=3f800000 errno=0
86func=powf op1=40800000 op2=80000000 result=3f800000 errno=0
87func=powf op1=40800000 op2=bf000000 result=3f000000 errno=0
88func=powf op1=40800000 op2=c0400000 result=3c800000 errno=0
89func=powf op1=40800000 op2=c0800000 result=3b800000 errno=0
90func=powf op1=40800000 op2=ff800000 result=00000000 errno=0
91func=powf op1=3f800000 op2=7f800001 result=7fc00001 errno=0 status=i
92func=powf op1=3f800000 op2=ff800001 result=7fc00001 errno=0 status=i
93func=powf op1=3f800000 op2=7fc00001 result=3f800000 errno=0
94func=powf op1=3f800000 op2=ffc00001 result=3f800000 errno=0
95func=powf op1=3f800000 op2=7f800000 result=3f800000 errno=0
96func=powf op1=3f800000 op2=40800000 result=3f800000 errno=0
97func=powf op1=3f800000 op2=40400000 result=3f800000 errno=0
98func=powf op1=3f800000 op2=3f000000 result=3f800000 errno=0
99func=powf op1=3f800000 op2=00000000 result=3f800000 errno=0
100func=powf op1=3f800000 op2=80000000 result=3f800000 errno=0
101func=powf op1=3f800000 op2=bf000000 result=3f800000 errno=0
102func=powf op1=3f800000 op2=c0400000 result=3f800000 errno=0
103func=powf op1=3f800000 op2=c0800000 result=3f800000 errno=0
104func=powf op1=3f800000 op2=ff800000 result=3f800000 errno=0
105func=powf op1=3e800000 op2=7f800001 result=7fc00001 errno=0 status=i
106func=powf op1=3e800000 op2=ff800001 result=7fc00001 errno=0 status=i
107func=powf op1=3e800000 op2=7fc00001 result=7fc00001 errno=0
108func=powf op1=3e800000 op2=ffc00001 result=7fc00001 errno=0
109func=powf op1=3e800000 op2=7f800000 result=00000000 errno=0
110func=powf op1=3e800000 op2=40800000 result=3b800000 errno=0
111func=powf op1=3e800000 op2=40400000 result=3c800000 errno=0
112func=powf op1=3e800000 op2=3f000000 result=3f000000 errno=0
113func=powf op1=3e800000 op2=00000000 result=3f800000 errno=0
114func=powf op1=3e800000 op2=80000000 result=3f800000 errno=0
115func=powf op1=3e800000 op2=bf000000 result=40000000 errno=0
116func=powf op1=3e800000 op2=c0400000 result=42800000 errno=0
117func=powf op1=3e800000 op2=c0800000 result=43800000 errno=0
118func=powf op1=3e800000 op2=ff800000 result=7f800000 errno=0
119func=powf op1=00000001 op2=bf800000 result=7f800000 errno=ERANGE status=ox
120func=powf op1=00000000 op2=7f800001 result=7fc00001 errno=0 status=i
121func=powf op1=00000000 op2=ff800001 result=7fc00001 errno=0 status=i
122func=powf op1=00000000 op2=7fc00001 result=7fc00001 errno=0
123func=powf op1=00000000 op2=ffc00001 result=7fc00001 errno=0
124func=powf op1=00000000 op2=7f800000 result=00000000 errno=0
125func=powf op1=00000000 op2=40800000 result=00000000 errno=0
126func=powf op1=00000000 op2=40400000 result=00000000 errno=0
127func=powf op1=00000000 op2=3f000000 result=00000000 errno=0
128func=powf op1=00000000 op2=00000000 result=3f800000 errno=0
129func=powf op1=00000000 op2=80000000 result=3f800000 errno=0
130func=powf op1=00000000 op2=bf000000 result=7f800000 errno=ERANGE status=z
131func=powf op1=00000000 op2=c0400000 result=7f800000 errno=ERANGE status=z
132func=powf op1=00000000 op2=c0800000 result=7f800000 errno=ERANGE status=z
133func=powf op1=00000000 op2=ff800000 result=7f800000 errno=ERANGE
134func=powf op1=80000000 op2=7f800001 result=7fc00001 errno=0 status=i
135func=powf op1=80000000 op2=ff800001 result=7fc00001 errno=0 status=i
136func=powf op1=80000000 op2=7fc00001 result=7fc00001 errno=0
137func=powf op1=80000000 op2=ffc00001 result=7fc00001 errno=0
138func=powf op1=80000000 op2=7f800000 result=00000000 errno=0
139func=powf op1=80000000 op2=40800000 result=00000000 errno=0
140func=powf op1=80000000 op2=40400000 result=80000000 errno=0
141func=powf op1=80000000 op2=3f000000 result=00000000 errno=0
142func=powf op1=80000000 op2=00000000 result=3f800000 errno=0
143func=powf op1=80000000 op2=80000000 result=3f800000 errno=0
144func=powf op1=80000000 op2=bf000000 result=7f800000 errno=ERANGE status=z
145func=powf op1=80000000 op2=c0400000 result=ff800000 errno=ERANGE status=z
146func=powf op1=80000000 op2=c0800000 result=7f800000 errno=ERANGE status=z
147func=powf op1=80000000 op2=ff800000 result=7f800000 errno=ERANGE
148func=powf op1=be800000 op2=7f800001 result=7fc00001 errno=0 status=i
149func=powf op1=be800000 op2=ff800001 result=7fc00001 errno=0 status=i
150func=powf op1=be800000 op2=7fc00001 result=7fc00001 errno=0
151func=powf op1=be800000 op2=ffc00001 result=7fc00001 errno=0
152func=powf op1=be800000 op2=7f800000 result=00000000 errno=0
153func=powf op1=be800000 op2=40800000 result=3b800000 errno=0
154func=powf op1=be800000 op2=40400000 result=bc800000 errno=0
155func=powf op1=be800000 op2=3f000000 result=7fc00001 errno=EDOM status=i
156func=powf op1=be800000 op2=00000000 result=3f800000 errno=0
157func=powf op1=be800000 op2=80000000 result=3f800000 errno=0
158func=powf op1=be800000 op2=bf000000 result=7fc00001 errno=EDOM status=i
159func=powf op1=be800000 op2=c0400000 result=c2800000 errno=0
160func=powf op1=be800000 op2=c0800000 result=43800000 errno=0
161func=powf op1=be800000 op2=ff800000 result=7f800000 errno=0
162func=powf op1=bf800000 op2=7f800001 result=7fc00001 errno=0 status=i
163func=powf op1=bf800000 op2=ff800001 result=7fc00001 errno=0 status=i
164func=powf op1=bf800000 op2=7fc00001 result=7fc00001 errno=0
165func=powf op1=bf800000 op2=ffc00001 result=7fc00001 errno=0
166func=powf op1=bf800000 op2=7f800000 result=3f800000 errno=0
167func=powf op1=bf800000 op2=40800000 result=3f800000 errno=0
168func=powf op1=bf800000 op2=40400000 result=bf800000 errno=0
169func=powf op1=bf800000 op2=3f000000 result=7fc00001 errno=EDOM status=i
170func=powf op1=bf800000 op2=00000000 result=3f800000 errno=0
171func=powf op1=bf800000 op2=80000000 result=3f800000 errno=0
172func=powf op1=bf800000 op2=bf000000 result=7fc00001 errno=EDOM status=i
173func=powf op1=bf800000 op2=c0400000 result=bf800000 errno=0
174func=powf op1=bf800000 op2=c0800000 result=3f800000 errno=0
175func=powf op1=bf800000 op2=ff800000 result=3f800000 errno=0
176func=powf op1=c0800000 op2=7f800001 result=7fc00001 errno=0 status=i
177func=powf op1=c0800000 op2=ff800001 result=7fc00001 errno=0 status=i
178func=powf op1=c0800000 op2=7fc00001 result=7fc00001 errno=0
179func=powf op1=c0800000 op2=ffc00001 result=7fc00001 errno=0
180func=powf op1=c0800000 op2=7f800000 result=7f800000 errno=0
181func=powf op1=c0800000 op2=40800000 result=43800000 errno=0
182func=powf op1=c0800000 op2=40400000 result=c2800000 errno=0
183func=powf op1=c0800000 op2=3f000000 result=7fc00001 errno=EDOM status=i
184func=powf op1=c0800000 op2=00000000 result=3f800000 errno=0
185func=powf op1=c0800000 op2=80000000 result=3f800000 errno=0
186func=powf op1=c0800000 op2=bf000000 result=7fc00001 errno=EDOM status=i
187func=powf op1=c0800000 op2=c0400000 result=bc800000 errno=0
188func=powf op1=c0800000 op2=c0800000 result=3b800000 errno=0
189func=powf op1=c0800000 op2=ff800000 result=00000000 errno=0
190func=powf op1=ff800000 op2=7f800001 result=7fc00001 errno=0 status=i
191func=powf op1=ff800000 op2=ff800001 result=7fc00001 errno=0 status=i
192func=powf op1=ff800000 op2=7fc00001 result=7fc00001 errno=0
193func=powf op1=ff800000 op2=ffc00001 result=7fc00001 errno=0
194func=powf op1=ff800000 op2=7f800000 result=7f800000 errno=0
195func=powf op1=ff800000 op2=40800000 result=7f800000 errno=0
196func=powf op1=ff800000 op2=40400000 result=ff800000 errno=0
197func=powf op1=ff800000 op2=3f000000 result=7f800000 errno=0
198func=powf op1=ff800000 op2=00000000 result=3f800000 errno=0
199func=powf op1=ff800000 op2=80000000 result=3f800000 errno=0
200func=powf op1=ff800000 op2=bf000000 result=00000000 errno=0
201func=powf op1=ff800000 op2=c0400000 result=80000000 errno=0
202func=powf op1=ff800000 op2=c0800000 result=00000000 errno=0
203func=powf op1=ff800000 op2=ff800000 result=00000000 errno=0
204
205
206func=powf op1=36c27f9d op2=4109fa51 result=00000000 errno=ERANGE status=ux
207func=powf op1=351738cd op2=c0c55691 result=7f800000 errno=ERANGE status=ox
208func=powf op1=42836035 op2=41a99f40 result=7f800000 errno=ERANGE status=ox
209func=powf op1=32bd53f3 op2=40bcba58 result=00000000 errno=ERANGE status=ux
210func=powf op1=32dc5bff op2=40be62ea result=00000000 errno=ERANGE status=ux
211func=powf op1=3a8a3f66 op2=4172bd43 result=00000000 errno=ERANGE status=ux
212func=powf op1=28f0e770 op2=c035b4ca result=7f800000 errno=ERANGE status=ox
213func=powf op1=40886699 op2=c28f703a result=00000000 errno=ERANGE status=ux
214func=powf op1=414bd593 op2=c22370cf result=00000000 errno=ERANGE status=ux
215func=powf op1=3a2f1163 op2=c1422d45 result=7f800000 errno=ERANGE status=ox
216func=powf op1=434f5cf3 op2=41851272 result=7f800000 errno=ERANGE status=ox
217func=powf op1=2e0e27a4 op2=c06b13f5 result=7f800000 errno=ERANGE status=ox
218func=powf op1=39aef7a6 op2=414fd60a result=00000000 errno=ERANGE status=ux
219func=powf op1=21c80729 op2=c00a04ab result=7f800000 errno=ERANGE status=ox
220func=powf op1=42455a4b op2=c1d55905 result=00000000 errno=ERANGE status=ux
221func=powf op1=2d173e0b op2=c05ee797 result=7f800000 errno=ERANGE status=ox
222func=powf op1=452edf9a op2=4132dd7f result=7f800000 errno=ERANGE status=ox
223func=powf op1=406bf67b op2=c29f5f12 result=00000000 errno=ERANGE status=ux
224func=powf op1=2d82a6fc op2=4085779e result=00000000 errno=ERANGE status=ux
225func=powf op1=4551f827 op2=41304516 result=7f800000 errno=ERANGE status=ox
226func=powf op1=3a917c51 op2=41726c0a result=00000001.37f errno=0 status=ux
227; iso c allows both errno=ERANGE and errno=0
228;func=powf op1=3b19bbaa op2=4188e6fb result=00000000.b5f errno=0 status=ux
229;func=powf op1=4088bd18 op2=c28ef056 result=00000000.986 errno=0 status=ux
230func=powf op1=3f7ffd76 op2=4a09221e result=00aa9d24.3ad error=0
231
232func=powf op1=007fffff op2=bf000001 result=5f00002c.2b2 error=0
233func=powf op1=000007ff op2=bf000001 result=62000830.96f error=0
234func=powf op1=007fffff op2=80800001 result=3f800000.000 error=0
235func=powf op1=00000000 op2=800007ff result=7f800000 errno=ERANGE status=z
236func=powf op1=00000000 op2=000007ff result=00000000 error=0
237func=powf op1=bf800000 op2=ff7fffff result=3f800000 error=0
238func=powf op1=2e4e4f30 op2=406b0dc2 result=007e9c59.eb4 errno=0 status=u
239
240; SDCOMP-25549: ensure the biggest overflow case possible is not
241; mishandled. Also check the analogous underflow, and also ensure that
242; our massive-overflow checks do not affect numbers _just within_ the
243; range.
244func=powf op1=7f7fffff op2=7f7fffff result=7f800000 error=overflow
245func=powf op1=7f7fffff op2=ff7fffff result=00000000 error=underflow
246func=powf op1=54cb3000 op2=403fffff result=7f7fffb2.a95 error=0
247