1425bb815Sopenharmony_ci/* Copyright JS Foundation and other contributors, http://js.foundation
2425bb815Sopenharmony_ci *
3425bb815Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4425bb815Sopenharmony_ci * you may not use this file except in compliance with the License.
5425bb815Sopenharmony_ci * You may obtain a copy of the License at
6425bb815Sopenharmony_ci *
7425bb815Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
8425bb815Sopenharmony_ci *
9425bb815Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10425bb815Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS
11425bb815Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12425bb815Sopenharmony_ci * See the License for the specific language governing permissions and
13425bb815Sopenharmony_ci * limitations under the License.
14425bb815Sopenharmony_ci */
15425bb815Sopenharmony_ci
16425bb815Sopenharmony_ci/*
17425bb815Sopenharmony_ci * Unit test generator for jerry-libm.
18425bb815Sopenharmony_ci * To be compiled separately from the rest of jerry and to be linked to a trusted libm.
19425bb815Sopenharmony_ci * Its output should be redirected to test-libm.inc.h.
20425bb815Sopenharmony_ci *
21425bb815Sopenharmony_ci * Example:
22425bb815Sopenharmony_ci * gcc gen-test-libm.c -o gen-test-libm -lm
23425bb815Sopenharmony_ci * ./gen-test-libm >test-libm.inc.h
24425bb815Sopenharmony_ci */
25425bb815Sopenharmony_ci
26425bb815Sopenharmony_ci#include <math.h>
27425bb815Sopenharmony_ci#include <stdio.h>
28425bb815Sopenharmony_ci
29425bb815Sopenharmony_ci#define GEN_INT_TEST(EXPR) printf("check_int (\"%s\", %s, %d);\n", #EXPR, #EXPR, EXPR);
30425bb815Sopenharmony_ci#define GEN_DBL_TEST(EXPR) printf("check_double (\"%s\", %s, %.20E);\n", #EXPR, #EXPR, EXPR);
31425bb815Sopenharmony_ci
32425bb815Sopenharmony_ciint
33425bb815Sopenharmony_cimain (int argc, char **args)
34425bb815Sopenharmony_ci{
35425bb815Sopenharmony_ci  printf ("/* Copyright JS Foundation and other contributors, http://js.foundation\n"
36425bb815Sopenharmony_ci          " *\n"
37425bb815Sopenharmony_ci          " * Licensed under the Apache License, Version 2.0 (the \"License\");\n"
38425bb815Sopenharmony_ci          " * you may not use this file except in compliance with the License.\n"
39425bb815Sopenharmony_ci          " * You may obtain a copy of the License at\n"
40425bb815Sopenharmony_ci          " *\n"
41425bb815Sopenharmony_ci          " *     http://www.apache.org/licenses/LICENSE-2.0\n"
42425bb815Sopenharmony_ci          " *\n"
43425bb815Sopenharmony_ci          " * Unless required by applicable law or agreed to in writing, software\n"
44425bb815Sopenharmony_ci          " * distributed under the License is distributed on an \"AS IS\" BASIS\n"
45425bb815Sopenharmony_ci          " * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n"
46425bb815Sopenharmony_ci          " * See the License for the specific language governing permissions and\n"
47425bb815Sopenharmony_ci          " * limitations under the License.\n"
48425bb815Sopenharmony_ci          " */\n"
49425bb815Sopenharmony_ci          "\n"
50425bb815Sopenharmony_ci          "/* This file is automatically generated by the gen-test-libm.sh script.\n"
51425bb815Sopenharmony_ci          " * Do not edit! */\n"
52425bb815Sopenharmony_ci          "\n");
53425bb815Sopenharmony_ci
54425bb815Sopenharmony_ci  /* acos tests */
55425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (0.0));
56425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-0.0));
57425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (1.0));
58425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-1.0));
59425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (0.5));
60425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-0.5));
61425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (INFINITY));
62425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-INFINITY));
63425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (NAN));
64425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (6.9e-18));
65425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-6.9e-18));
66425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (7.0e-18));
67425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-7.0e-18));
68425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (7.4e-9));
69425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-7.4e-9));
70425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (7.5e-9));
71425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-7.5e-9));
72425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (0.1));
73425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-0.1));
74425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (0.4));
75425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-0.4));
76425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (0.6));
77425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-0.6));
78425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (0.99));
79425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-0.99));
80425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (1.1));
81425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (-1.1));
82425bb815Sopenharmony_ci  GEN_DBL_TEST (acos (0.7));
83425bb815Sopenharmony_ci
84425bb815Sopenharmony_ci  /* asin tests*/
85425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (0.0));
86425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-0.0));
87425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (1.0));
88425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-1.0));
89425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (0.5));
90425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-0.5));
91425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (0.98));
92425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-0.98));
93425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (INFINITY));
94425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-INFINITY));
95425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (NAN));
96425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (6.9e-18));
97425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-6.9e-18));
98425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (7.0e-18));
99425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-7.0e-18));
100425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (7.4e-9));
101425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-7.4e-9));
102425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (7.5e-9));
103425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-7.5e-9));
104425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (0.1));
105425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-0.1));
106425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (0.4));
107425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-0.4));
108425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (0.6));
109425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-0.6));
110425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (0.97));
111425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-0.97));
112425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (0.99));
113425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-0.99));
114425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (1.1));
115425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (-1.1));
116425bb815Sopenharmony_ci  GEN_DBL_TEST (asin (0.7));
117425bb815Sopenharmony_ci
118425bb815Sopenharmony_ci  /* atan tests*/
119425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (0.0));
120425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-0.0));
121425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (7.0 / 16.0));
122425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-7.0 / 16.0));
123425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (11.0 / 16.0));
124425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-11.0 / 16.0));
125425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (19.0 / 16.0));
126425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-19.0 / 16.0));
127425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (39.0 / 16.0));
128425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-39.0 / 16.0));
129425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (1.0));
130425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-1.0));
131425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (INFINITY));
132425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-INFINITY));
133425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (NAN));
134425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (6.9 / 16.0));
135425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-6.9 / 16.0));
136425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (7.1 / 16.0));
137425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-7.1 / 16.0));
138425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (10.9 / 16.0));
139425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-10.9 / 16.0));
140425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (11.1 / 16.0));
141425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-11.1 / 16.0));
142425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (18.9 / 16.0));
143425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-18.9 / 16.0));
144425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (19.1 / 16.0));
145425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-19.1 / 16.0));
146425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (38.9 / 16.0));
147425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-38.9 / 16.0));
148425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (39.1 / 16.0));
149425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-39.1 / 16.0));
150425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (0.99));
151425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-0.99));
152425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (1.1));
153425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-1.1));
154425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (7.37e+19));
155425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-7.37e+19));
156425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (7.38e+19));
157425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (-7.38e+19));
158425bb815Sopenharmony_ci  GEN_DBL_TEST (atan (0.7));
159425bb815Sopenharmony_ci
160425bb815Sopenharmony_ci  /* atan2 tests*/
161425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (NAN, NAN));
162425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.0, NAN));
163425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-0.0, NAN));
164425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (1.0, NAN));
165425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-1.0, NAN));
166425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (INFINITY, NAN));
167425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-INFINITY, NAN));
168425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (NAN, 0.0));
169425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (NAN, -0.0));
170425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (NAN, 1.0));
171425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (NAN, -1.0));
172425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (NAN, INFINITY));
173425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (NAN, -INFINITY));
174425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.0, 0.0));
175425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.0, -0.0));
176425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-0.0, 0.0));
177425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-0.0, -0.0));
178425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.0, 1.0));
179425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.0, -1.0));
180425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.0, INFINITY));
181425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.0, -INFINITY));
182425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-0.0, 1.0));
183425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-0.0, -1.0));
184425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-0.0, INFINITY));
185425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-0.0, -INFINITY));
186425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (1.0, 0.0));
187425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (1.0, -0.0));
188425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (INFINITY, 0.0));
189425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (INFINITY, -0.0));
190425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-1.0, 0.0));
191425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-1.0, -0.0));
192425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-INFINITY, 0.0));
193425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-INFINITY, -0.0));
194425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (1.0, INFINITY));
195425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-1.0, INFINITY));
196425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (1.0, -INFINITY));
197425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-1.0, -INFINITY));
198425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (INFINITY, INFINITY));
199425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (INFINITY, -INFINITY));
200425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-INFINITY, INFINITY));
201425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-INFINITY, -INFINITY));
202425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (INFINITY, 1.0));
203425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (INFINITY, -1.0));
204425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-INFINITY, 1.0));
205425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-INFINITY, -1.0));
206425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.7, 1.0));
207425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-0.7, 1.0));
208425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.7, -1.0));
209425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (-0.7, -1.0));
210425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (0.4, 0.0003));
211425bb815Sopenharmony_ci  GEN_DBL_TEST (atan2 (1.4, -0.93));
212425bb815Sopenharmony_ci
213425bb815Sopenharmony_ci  /* acosh tests */
214425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (0.0));
215425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-0.0));
216425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (1.0));
217425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-1.0));
218425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (INFINITY));
219425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-INFINITY));
220425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (NAN));
221425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (7.08e+02));
222425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (7.10e+02));
223425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-7.40e+02));
224425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-7.50e+02));
225425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (0.34));
226425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-0.34));
227425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (0.35));
228425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-0.35));
229425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (1.03));
230425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-1.03));
231425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (1.04));
232425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-1.04));
233425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (3.72e-09));
234425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-3.72e-09));
235425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (3.73e-09));
236425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (-3.73e-09));
237425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (2.0));
238425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (3.0));
239425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (0.7));
240425bb815Sopenharmony_ci  GEN_DBL_TEST (acosh (38.0));
241425bb815Sopenharmony_ci
242425bb815Sopenharmony_ci  /* asinh tests */
243425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (0.0));
244425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-0.0));
245425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (1.0));
246425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-1.0));
247425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (INFINITY));
248425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-INFINITY));
249425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (NAN));
250425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (7.08e+02));
251425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (7.10e+02));
252425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-7.40e+02));
253425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-7.50e+02));
254425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (0.34));
255425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-0.34));
256425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (0.35));
257425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-0.35));
258425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (1.03));
259425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-1.03));
260425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (1.04));
261425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-1.04));
262425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (3.72e-09));
263425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-3.72e-09));
264425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (3.73e-09));
265425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (-3.73e-09));
266425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (2.0));
267425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (3.0));
268425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (0.7));
269425bb815Sopenharmony_ci  GEN_DBL_TEST (asinh (38.0));
270425bb815Sopenharmony_ci
271425bb815Sopenharmony_ci  /* atanh tests */
272425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (0.0));
273425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-0.0));
274425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (1.0));
275425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-1.0));
276425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (INFINITY));
277425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-INFINITY));
278425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (NAN));
279425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (7.08e+02));
280425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (7.10e+02));
281425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-7.40e+02));
282425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-7.50e+02));
283425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (0.34));
284425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-0.34));
285425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (0.35));
286425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-0.35));
287425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (1.03));
288425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-1.03));
289425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (1.04));
290425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-1.04));
291425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (3.72e-09));
292425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-3.72e-09));
293425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (3.73e-09));
294425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (-3.73e-09));
295425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (2.0));
296425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (3.0));
297425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (0.7));
298425bb815Sopenharmony_ci  GEN_DBL_TEST (atanh (38.0));
299425bb815Sopenharmony_ci
300425bb815Sopenharmony_ci  /* ceil tests */
301425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (0.0));
302425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (-0.0));
303425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (INFINITY));
304425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (-INFINITY));
305425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (NAN));
306425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (3.14));
307425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (-3.14));
308425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (3.72e-09));
309425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (-3.72e-09));
310425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (7.37e+19));
311425bb815Sopenharmony_ci  GEN_DBL_TEST (ceil (-7.37e+19));
312425bb815Sopenharmony_ci
313425bb815Sopenharmony_ci  /* copysign tests */
314425bb815Sopenharmony_ci  /* SKIPPED: not publicly declared in jerry-libm
315425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (0.0, 0.0));
316425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (0.0, -0.0));
317425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-0.0, 0.0));
318425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-0.0, -0.0));
319425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (0.0, 1.0));
320425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (0.0, -1.0));
321425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-0.0, 1.0));
322425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-0.0, -1.0));
323425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (0.0, INFINITY));
324425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (0.0, -INFINITY));
325425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-0.0, INFINITY));
326425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-0.0, -INFINITY));
327425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (0.0, NAN));
328425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-0.0, NAN));
329425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (1.0, 0.0));
330425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (1.0, -0.0));
331425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-1.0, 0.0));
332425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-1.0, -0.0));
333425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (1.0, 1.0));
334425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (1.0, -1.0));
335425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-1.0, 1.0));
336425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-1.0, -1.0));
337425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (1.0, INFINITY));
338425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (1.0, -INFINITY));
339425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-1.0, INFINITY));
340425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-1.0, -INFINITY));
341425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (1.0, NAN));
342425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-1.0, NAN));
343425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (INFINITY, 0.0));
344425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (INFINITY, -0.0));
345425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-INFINITY, 0.0));
346425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-INFINITY, -0.0));
347425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (INFINITY, 1.0));
348425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (INFINITY, -1.0));
349425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-INFINITY, 1.0));
350425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-INFINITY, -1.0));
351425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (INFINITY, INFINITY));
352425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (INFINITY, -INFINITY));
353425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-INFINITY, INFINITY));
354425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-INFINITY, -INFINITY));
355425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (INFINITY, NAN));
356425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-INFINITY, NAN));
357425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (NAN, 0.0));
358425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (NAN, -0.0));
359425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (NAN, 1.0));
360425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (NAN, -1.0));
361425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (NAN, INFINITY));
362425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (NAN, -INFINITY));
363425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (NAN, NAN));
364425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (3.14, -1.0));
365425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-3.14, 1.0));
366425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (1.0, -3.14));
367425bb815Sopenharmony_ci  GEN_DBL_TEST (copysign (-1.0, 3.14));
368425bb815Sopenharmony_ci  */
369425bb815Sopenharmony_ci
370425bb815Sopenharmony_ci  /* exp tests */
371425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (0.0));
372425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-0.0));
373425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (1.0));
374425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-1.0));
375425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (INFINITY));
376425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-INFINITY));
377425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (NAN));
378425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (7.08e+02));
379425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (7.10e+02));
380425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-7.40e+02));
381425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-7.50e+02));
382425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (0.34));
383425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-0.34));
384425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (0.35));
385425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-0.35));
386425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (1.03));
387425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-1.03));
388425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (1.04));
389425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-1.04));
390425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (3.72e-09));
391425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-3.72e-09));
392425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (3.73e-09));
393425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (-3.73e-09));
394425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (2.0));
395425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (3.0));
396425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (0.7));
397425bb815Sopenharmony_ci  GEN_DBL_TEST (exp (38.0));
398425bb815Sopenharmony_ci
399425bb815Sopenharmony_ci  /* expm1 tests */
400425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (0.0));
401425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-0.0));
402425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (1.0));
403425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-1.0));
404425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (INFINITY));
405425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-INFINITY));
406425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (NAN));
407425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (7.08e+02));
408425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (7.10e+02));
409425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-7.40e+02));
410425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-7.50e+02));
411425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (0.34));
412425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-0.34));
413425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (0.35));
414425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-0.35));
415425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (1.03));
416425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-1.03));
417425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (1.04));
418425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-1.04));
419425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (3.72e-09));
420425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-3.72e-09));
421425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (3.73e-09));
422425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (-3.73e-09));
423425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (2.0));
424425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (3.0));
425425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (0.7));
426425bb815Sopenharmony_ci  GEN_DBL_TEST (expm1 (38.0));
427425bb815Sopenharmony_ci
428425bb815Sopenharmony_ci  /* fabs tests */
429425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (0.0));
430425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (-0.0));
431425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (1.0));
432425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (-1.0));
433425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (INFINITY));
434425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (-INFINITY));
435425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (NAN));
436425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (3.14));
437425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (-3.14));
438425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (0.7));
439425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (-0.7));
440425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (3.72e-09));
441425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (-3.72e-09));
442425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (7.37e+19));
443425bb815Sopenharmony_ci  GEN_DBL_TEST (fabs (-7.37e+19));
444425bb815Sopenharmony_ci
445425bb815Sopenharmony_ci  /* finite tests */
446425bb815Sopenharmony_ci  /* SKIPPED: not publicly declared in jerry-libm
447425bb815Sopenharmony_ci  GEN_INT_TEST (finite (0.0));
448425bb815Sopenharmony_ci  GEN_INT_TEST (finite (-0.0));
449425bb815Sopenharmony_ci  GEN_INT_TEST (finite (1.0));
450425bb815Sopenharmony_ci  GEN_INT_TEST (finite (-1.0));
451425bb815Sopenharmony_ci  GEN_INT_TEST (finite (INFINITY));
452425bb815Sopenharmony_ci  GEN_INT_TEST (finite (-INFINITY));
453425bb815Sopenharmony_ci  GEN_INT_TEST (finite (NAN));
454425bb815Sopenharmony_ci  GEN_INT_TEST (finite (3.14));
455425bb815Sopenharmony_ci  GEN_INT_TEST (finite (-3.14));
456425bb815Sopenharmony_ci  GEN_INT_TEST (finite (0.7));
457425bb815Sopenharmony_ci  GEN_INT_TEST (finite (-0.7));
458425bb815Sopenharmony_ci  GEN_INT_TEST (finite (3.72e-09));
459425bb815Sopenharmony_ci  GEN_INT_TEST (finite (-3.72e-09));
460425bb815Sopenharmony_ci  GEN_INT_TEST (finite (7.37e+19));
461425bb815Sopenharmony_ci  GEN_INT_TEST (finite (-7.37e+19));
462425bb815Sopenharmony_ci  */
463425bb815Sopenharmony_ci
464425bb815Sopenharmony_ci  /* floor tests */
465425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (0.0));
466425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (-0.0));
467425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (INFINITY));
468425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (-INFINITY));
469425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (NAN));
470425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (3.14));
471425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (-3.14));
472425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (3.72e-09));
473425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (-3.72e-09));
474425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (7.37e+19));
475425bb815Sopenharmony_ci  GEN_DBL_TEST (floor (-7.37e+19));
476425bb815Sopenharmony_ci
477425bb815Sopenharmony_ci  /* fmod tests */
478425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (0.0, 0.0));
479425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (0.0, -0.0));
480425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-0.0, 0.0));
481425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-0.0, -0.0));
482425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (0.0, 3.0));
483425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (0.0, -3.0));
484425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-0.0, 3.0));
485425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-0.0, -3.0));
486425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (0.0, INFINITY));
487425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (0.0, -INFINITY));
488425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-0.0, INFINITY));
489425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-0.0, -INFINITY));
490425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (0.0, NAN));
491425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-0.0, NAN));
492425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (3.0, 0.0));
493425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (3.0, -0.0));
494425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-3.0, 0.0));
495425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-3.0, -0.0));
496425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (3.0, 3.0));
497425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (3.0, -3.0));
498425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-3.0, 3.0));
499425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-3.0, -3.0));
500425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (3.0, INFINITY));
501425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (3.0, -INFINITY));
502425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-3.0, INFINITY));
503425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-3.0, -INFINITY));
504425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (3.0, NAN));
505425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-3.0, NAN));
506425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (INFINITY, 0.0));
507425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (INFINITY, -0.0));
508425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-INFINITY, 0.0));
509425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-INFINITY, -0.0));
510425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (INFINITY, 3.0));
511425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (INFINITY, -3.0));
512425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-INFINITY, 3.0));
513425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-INFINITY, -3.0));
514425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (INFINITY, INFINITY));
515425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (INFINITY, -INFINITY));
516425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-INFINITY, INFINITY));
517425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-INFINITY, -INFINITY));
518425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (INFINITY, NAN));
519425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-INFINITY, NAN));
520425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (NAN, 0.0));
521425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (NAN, -0.0));
522425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (NAN, 3.0));
523425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (NAN, -3.0));
524425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (NAN, INFINITY));
525425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (NAN, -INFINITY));
526425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (NAN, NAN));
527425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (3.0, 1.0));
528425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (3.0, -1.0));
529425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-3.0, 1.0));
530425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-3.0, -1.0));
531425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (6.5, 2.3));
532425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (6.5, -2.3));
533425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-6.5, 2.3));
534425bb815Sopenharmony_ci  GEN_DBL_TEST (fmod (-6.5, -2.3));
535425bb815Sopenharmony_ci
536425bb815Sopenharmony_ci  /* isnan tests */
537425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (0.0));
538425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (-0.0));
539425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (1.0));
540425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (-1.0));
541425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (INFINITY));
542425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (-INFINITY));
543425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (NAN));
544425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (3.14));
545425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (-3.14));
546425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (0.7));
547425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (-0.7));
548425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (3.72e-09));
549425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (-3.72e-09));
550425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (7.37e+19));
551425bb815Sopenharmony_ci  GEN_INT_TEST (isnan (-7.37e+19));
552425bb815Sopenharmony_ci
553425bb815Sopenharmony_ci  /* log tests */
554425bb815Sopenharmony_ci  GEN_DBL_TEST (log (0.0));
555425bb815Sopenharmony_ci  GEN_DBL_TEST (log (-0.0));
556425bb815Sopenharmony_ci  GEN_DBL_TEST (log (1.0));
557425bb815Sopenharmony_ci  GEN_DBL_TEST (log (-1.0));
558425bb815Sopenharmony_ci  GEN_DBL_TEST (log (INFINITY));
559425bb815Sopenharmony_ci  GEN_DBL_TEST (log (-INFINITY));
560425bb815Sopenharmony_ci  GEN_DBL_TEST (log (NAN));
561425bb815Sopenharmony_ci  GEN_DBL_TEST (log (M_E));
562425bb815Sopenharmony_ci  GEN_DBL_TEST (log (1.0 / M_E));
563425bb815Sopenharmony_ci  GEN_DBL_TEST (log (2));
564425bb815Sopenharmony_ci  GEN_DBL_TEST (log (10));
565425bb815Sopenharmony_ci  GEN_DBL_TEST (log (0.7));
566425bb815Sopenharmony_ci  GEN_DBL_TEST (log (2.22e-308));
567425bb815Sopenharmony_ci  GEN_DBL_TEST (log (2.23e-308));
568425bb815Sopenharmony_ci  GEN_DBL_TEST (log (0.17));
569425bb815Sopenharmony_ci  GEN_DBL_TEST (log (0.18));
570425bb815Sopenharmony_ci  GEN_DBL_TEST (log (1999.0));
571425bb815Sopenharmony_ci  GEN_DBL_TEST (log (2000.0));
572425bb815Sopenharmony_ci  GEN_DBL_TEST (log (2001.0));
573425bb815Sopenharmony_ci
574425bb815Sopenharmony_ci  /* log1p tests */
575425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (0.0));
576425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (-0.0));
577425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (1.0));
578425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (-1.0));
579425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (INFINITY));
580425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (-INFINITY));
581425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (NAN));
582425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (M_E));
583425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (1.0 / M_E));
584425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (2));
585425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (10));
586425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (0.7));
587425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (2.22e-308));
588425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (2.23e-308));
589425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (0.17));
590425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (0.18));
591425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (1999.0));
592425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (2000.0));
593425bb815Sopenharmony_ci  GEN_DBL_TEST (log1p (2001.0));
594425bb815Sopenharmony_ci
595425bb815Sopenharmony_ci  /* log2 tests */
596425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (0.0));
597425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (-0.0));
598425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (1.0));
599425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (-1.0));
600425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (INFINITY));
601425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (-INFINITY));
602425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (NAN));
603425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (M_E));
604425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (1.0 / M_E));
605425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (2));
606425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (10));
607425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (0.7));
608425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (2.22e-308));
609425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (2.23e-308));
610425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (0.17));
611425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (0.18));
612425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (1999.0));
613425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (2000.0));
614425bb815Sopenharmony_ci  GEN_DBL_TEST (log2 (2001.0));
615425bb815Sopenharmony_ci
616425bb815Sopenharmony_ci  /* log10 tests */
617425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (0.0));
618425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (-0.0));
619425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (1.0));
620425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (-1.0));
621425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (INFINITY));
622425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (-INFINITY));
623425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (NAN));
624425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (M_E));
625425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (1.0 / M_E));
626425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (2));
627425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (10));
628425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (0.7));
629425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (2.22e-308));
630425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (2.23e-308));
631425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (0.17));
632425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (0.18));
633425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (1999.0));
634425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (2000.0));
635425bb815Sopenharmony_ci  GEN_DBL_TEST (log10 (2001.0));
636425bb815Sopenharmony_ci
637425bb815Sopenharmony_ci  /* pow tests */
638425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, 0.0));
639425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, -0.0));
640425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, 0.0));
641425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, -0.0));
642425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, 1.0));
643425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, -1.0));
644425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, 1.0));
645425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, -1.0));
646425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, INFINITY));
647425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, -INFINITY));
648425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, INFINITY));
649425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, -INFINITY));
650425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, NAN));
651425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, NAN));
652425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.0, 0.0));
653425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.0, -0.0));
654425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.0, 0.0));
655425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.0, -0.0));
656425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.0, 1.0));
657425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.0, -1.0));
658425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.0, 1.0));
659425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.0, -1.0));
660425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.0, INFINITY));
661425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.0, -INFINITY));
662425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.0, INFINITY));
663425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.0, -INFINITY));
664425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.0, NAN));
665425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.0, NAN));
666425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, 0.0));
667425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, -0.0));
668425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, 0.0));
669425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, -0.0));
670425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, 1.0));
671425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, -1.0));
672425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, 1.0));
673425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, -1.0));
674425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, INFINITY));
675425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, -INFINITY));
676425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, INFINITY));
677425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, -INFINITY));
678425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, NAN));
679425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, NAN));
680425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (NAN, 0.0));
681425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (NAN, -0.0));
682425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (NAN, 1.0));
683425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (NAN, -1.0));
684425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (NAN, INFINITY));
685425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (NAN, -INFINITY));
686425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (NAN, NAN));
687425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.9, INFINITY));
688425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.9, -INFINITY));
689425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.9, INFINITY));
690425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.9, -INFINITY));
691425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.1, INFINITY));
692425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.1, -INFINITY));
693425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.1, INFINITY));
694425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.1, -INFINITY));
695425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, 2.0));
696425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, -2.0));
697425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, 2.0));
698425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, -2.0));
699425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, 3.0));
700425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, -3.0));
701425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, 3.0));
702425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, -3.0));
703425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, 3.14));
704425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.0, -3.14));
705425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, 3.14));
706425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-0.0, -3.14));
707425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.0, 3.14));
708425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (1.0, -3.14));
709425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.0, 3.14));
710425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-1.0, -3.14));
711425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, 0.0));
712425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, -0.0));
713425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, 0.0));
714425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, -0.0));
715425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, 1.0));
716425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, -1.0));
717425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, 1.0));
718425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, -1.0));
719425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, 2.0));
720425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, -2.0));
721425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, 2.0));
722425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, -2.0));
723425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, 3.0));
724425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, -3.0));
725425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, 3.0));
726425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, -3.0));
727425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, 3.14));
728425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (3.14, -3.14));
729425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, 3.14));
730425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-3.14, -3.14));
731425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, 2.0));
732425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, -2.0));
733425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, 2.0));
734425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, -2.0));
735425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, 3.0));
736425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, -3.0));
737425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, 3.0));
738425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, -3.0));
739425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, 3.14));
740425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (INFINITY, -3.14));
741425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, 3.14));
742425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (-INFINITY, -3.14));
743425bb815Sopenharmony_ci  GEN_DBL_TEST (pow (0.7, 1.2));
744425bb815Sopenharmony_ci
745425bb815Sopenharmony_ci  /* scalbn tests */
746425bb815Sopenharmony_ci  /* SKIPPED: not publicly declared in jerry-libm
747425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (0.0, 0));
748425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-0.0, 0));
749425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (0.0, 1));
750425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (0.0, -1));
751425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-0.0, 1));
752425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-0.0, -1));
753425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (1.0, 0));
754425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-1.0, 0));
755425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (1.0, 1));
756425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (1.0, -1));
757425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-1.0, 1));
758425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-1.0, -1));
759425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (INFINITY, 0));
760425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-INFINITY, 0));
761425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (INFINITY, 1));
762425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (INFINITY, -1));
763425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-INFINITY, 1));
764425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-INFINITY, -1));
765425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (NAN, 0));
766425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (NAN, 1));
767425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (NAN, -1));
768425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (3.14, -1));
769425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-3.14, 1));
770425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (0.7, 4));
771425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (0.7, -4));
772425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-0.7, 4));
773425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-0.7, -4));
774425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (0.8, 5));
775425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (0.8, -5));
776425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-0.8, 5));
777425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (-0.8, -5));
778425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (5.55e-18, 49999));
779425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (5.55e-18, 50000));
780425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (5.55e-18, 50001));
781425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (1.0, -49999));
782425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (1.0, -50000));
783425bb815Sopenharmony_ci  GEN_DBL_TEST (scalbn (1.0, -50001));
784425bb815Sopenharmony_ci  */
785425bb815Sopenharmony_ci
786425bb815Sopenharmony_ci  /* sqrt tests */
787425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (0.0));
788425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (-0.0));
789425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (1.0));
790425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (-1.0));
791425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (INFINITY));
792425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (-INFINITY));
793425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (NAN));
794425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (0.7));
795425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (2));
796425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (10));
797425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (2.22e-308));
798425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (2.23e-308));
799425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (3.72e-09));
800425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (7.37e+19));
801425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (2209));
802425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (4));
803425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (0.25));
804425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (6642.25));
805425bb815Sopenharmony_ci  GEN_DBL_TEST (sqrt (15239.9025));
806425bb815Sopenharmony_ci
807425bb815Sopenharmony_ci  /* cbrt tests */
808425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (0.0));
809425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (-0.0));
810425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (1.0));
811425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (-1.0));
812425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (INFINITY));
813425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (-INFINITY));
814425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (NAN));
815425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (0.7));
816425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (2));
817425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (10));
818425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (2.22e-308));
819425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (2.23e-308));
820425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (3.72e-09));
821425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (7.37e+19));
822425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (2209));
823425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (4));
824425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (0.25));
825425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (6642.25));
826425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (15239.9025));
827425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (3));
828425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (9));
829425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (-17.87));
830425bb815Sopenharmony_ci  GEN_DBL_TEST (cbrt (-8941));
831425bb815Sopenharmony_ci
832425bb815Sopenharmony_ci  /* sin tests */
833425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (0.0));
834425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-0.0));
835425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (1.0));
836425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-1.0));
837425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (INFINITY));
838425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-INFINITY));
839425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (NAN));
840425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (M_PI));
841425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-M_PI));
842425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (2.0 * M_PI));
843425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-2.0 * M_PI));
844425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (M_PI / 2.0));
845425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-M_PI / 2.0));
846425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (M_PI / 3.0));
847425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-M_PI / 3.0));
848425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (M_PI / 4.0));
849425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-M_PI / 4.0));
850425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (M_PI / 6.0));
851425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-M_PI / 6.0));
852425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (M_PI * 2.0 / 3.0));
853425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-M_PI * 2.0 / 3.0));
854425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (M_PI * 5.0 / 6.0));
855425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-M_PI * 5.0 / 6.0));
856425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (6.9e-18));
857425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-6.9e-18));
858425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (7.0e-18));
859425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-7.0e-18));
860425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (7.4e-9));
861425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-7.4e-9));
862425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (7.5e-9));
863425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-7.5e-9));
864425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (0.2));
865425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-0.2));
866425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (0.4));
867425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-0.4));
868425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (0.7));
869425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-0.7));
870425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (0.8));
871425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-0.8));
872425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (3.0));
873425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-3.0));
874425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (4.0));
875425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-4.0));
876425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (6.0));
877425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-6.0));
878425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (7.0));
879425bb815Sopenharmony_ci  GEN_DBL_TEST (sin (-7.0));
880425bb815Sopenharmony_ci
881425bb815Sopenharmony_ci  /* cos tests */
882425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (0.0));
883425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-0.0));
884425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (1.0));
885425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-1.0));
886425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (INFINITY));
887425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-INFINITY));
888425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (NAN));
889425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (M_PI));
890425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-M_PI));
891425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (2.0 * M_PI));
892425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-2.0 * M_PI));
893425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (M_PI / 2.0));
894425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-M_PI / 2.0));
895425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (M_PI / 3.0));
896425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-M_PI / 3.0));
897425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (M_PI / 4.0));
898425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-M_PI / 4.0));
899425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (M_PI / 6.0));
900425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-M_PI / 6.0));
901425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (M_PI * 2.0 / 3.0));
902425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-M_PI * 2.0 / 3.0));
903425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (M_PI * 5.0 / 6.0));
904425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-M_PI * 5.0 / 6.0));
905425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (6.9e-18));
906425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-6.9e-18));
907425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (7.0e-18));
908425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-7.0e-18));
909425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (7.4e-9));
910425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-7.4e-9));
911425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (7.5e-9));
912425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-7.5e-9));
913425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (0.2));
914425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-0.2));
915425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (0.4));
916425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-0.4));
917425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (0.7));
918425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-0.7));
919425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (0.8));
920425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-0.8));
921425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (3.0));
922425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-3.0));
923425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (4.0));
924425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-4.0));
925425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (6.0));
926425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-6.0));
927425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (7.0));
928425bb815Sopenharmony_ci  GEN_DBL_TEST (cos (-7.0));
929425bb815Sopenharmony_ci
930425bb815Sopenharmony_ci  /* tan tests */
931425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (0.0));
932425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-0.0));
933425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (1.0));
934425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-1.0));
935425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (INFINITY));
936425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-INFINITY));
937425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (NAN));
938425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (M_PI));
939425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-M_PI));
940425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (2.0 * M_PI));
941425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-2.0 * M_PI));
942425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (M_PI / 2.0));
943425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-M_PI / 2.0));
944425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (M_PI / 3.0));
945425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-M_PI / 3.0));
946425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (M_PI / 4.0));
947425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-M_PI / 4.0));
948425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (M_PI / 6.0));
949425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-M_PI / 6.0));
950425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (M_PI * 2.0 / 3.0));
951425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-M_PI * 2.0 / 3.0));
952425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (M_PI * 5.0 / 6.0));
953425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-M_PI * 5.0 / 6.0));
954425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (3.7e-9));
955425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-3.7e-9));
956425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (3.8e-9));
957425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-3.8e-9));
958425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (0.6));
959425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-0.6));
960425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (0.7));
961425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-0.7));
962425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (3.0));
963425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-3.0));
964425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (4.0));
965425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-4.0));
966425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (6.0));
967425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-6.0));
968425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (7.0));
969425bb815Sopenharmony_ci  GEN_DBL_TEST (tan (-7.0));
970425bb815Sopenharmony_ci
971425bb815Sopenharmony_ci    /* cosh tests */
972425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (0.0));
973425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-0.0));
974425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (1.0));
975425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-1.0));
976425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (INFINITY));
977425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-INFINITY));
978425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (NAN));
979425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (M_PI));
980425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-M_PI));
981425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (2.0 * M_PI));
982425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-2.0 * M_PI));
983425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (M_PI / 2.0));
984425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-M_PI / 2.0));
985425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (M_PI / 3.0));
986425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-M_PI / 3.0));
987425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (M_PI / 4.0));
988425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-M_PI / 4.0));
989425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (M_PI / 6.0));
990425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-M_PI / 6.0));
991425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (M_PI * 2.0 / 3.0));
992425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-M_PI * 2.0 / 3.0));
993425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (M_PI * 5.0 / 6.0));
994425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-M_PI * 5.0 / 6.0));
995425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (6.9e-18));
996425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-6.9e-18));
997425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (7.0e-18));
998425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-7.0e-18));
999425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (7.4e-9));
1000425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-7.4e-9));
1001425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (7.5e-9));
1002425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-7.5e-9));
1003425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (0.2));
1004425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-0.2));
1005425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (0.4));
1006425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-0.4));
1007425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (0.7));
1008425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-0.7));
1009425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (0.8));
1010425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-0.8));
1011425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (3.0));
1012425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-3.0));
1013425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (4.0));
1014425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-4.0));
1015425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (6.0));
1016425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-6.0));
1017425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (7.0));
1018425bb815Sopenharmony_ci  GEN_DBL_TEST (cosh (-7.0));
1019425bb815Sopenharmony_ci
1020425bb815Sopenharmony_ci  /* sinh tests */
1021425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (0.0));
1022425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-0.0));
1023425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (1.0));
1024425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-1.0));
1025425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (INFINITY));
1026425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-INFINITY));
1027425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (NAN));
1028425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (M_PI));
1029425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-M_PI));
1030425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (2.0 * M_PI));
1031425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-2.0 * M_PI));
1032425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (M_PI / 2.0));
1033425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-M_PI / 2.0));
1034425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (M_PI / 3.0));
1035425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-M_PI / 3.0));
1036425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (M_PI / 4.0));
1037425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-M_PI / 4.0));
1038425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (M_PI / 6.0));
1039425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-M_PI / 6.0));
1040425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (M_PI * 2.0 / 3.0));
1041425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-M_PI * 2.0 / 3.0));
1042425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (M_PI * 5.0 / 6.0));
1043425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-M_PI * 5.0 / 6.0));
1044425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (6.9e-18));
1045425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-6.9e-18));
1046425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (7.0e-18));
1047425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-7.0e-18));
1048425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (7.4e-9));
1049425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-7.4e-9));
1050425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (7.5e-9));
1051425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-7.5e-9));
1052425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (0.2));
1053425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-0.2));
1054425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (0.4));
1055425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-0.4));
1056425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (0.7));
1057425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-0.7));
1058425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (0.8));
1059425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-0.8));
1060425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (3.0));
1061425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-3.0));
1062425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (4.0));
1063425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-4.0));
1064425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (6.0));
1065425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-6.0));
1066425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (7.0));
1067425bb815Sopenharmony_ci  GEN_DBL_TEST (sinh (-7.0));
1068425bb815Sopenharmony_ci
1069425bb815Sopenharmony_ci  /* tanh tests */
1070425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (0.0));
1071425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-0.0));
1072425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (1.0));
1073425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-1.0));
1074425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (INFINITY));
1075425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-INFINITY));
1076425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (NAN));
1077425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (M_PI));
1078425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-M_PI));
1079425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (2.0 * M_PI));
1080425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-2.0 * M_PI));
1081425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (M_PI / 2.0));
1082425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-M_PI / 2.0));
1083425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (M_PI / 3.0));
1084425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-M_PI / 3.0));
1085425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (M_PI / 4.0));
1086425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-M_PI / 4.0));
1087425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (M_PI / 6.0));
1088425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-M_PI / 6.0));
1089425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (M_PI * 2.0 / 3.0));
1090425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-M_PI * 2.0 / 3.0));
1091425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (M_PI * 5.0 / 6.0));
1092425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-M_PI * 5.0 / 6.0));
1093425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (6.9e-18));
1094425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-6.9e-18));
1095425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (7.0e-18));
1096425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-7.0e-18));
1097425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (7.4e-9));
1098425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-7.4e-9));
1099425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (7.5e-9));
1100425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-7.5e-9));
1101425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (0.2));
1102425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-0.2));
1103425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (0.4));
1104425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-0.4));
1105425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (0.7));
1106425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-0.7));
1107425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (0.8));
1108425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-0.8));
1109425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (3.0));
1110425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-3.0));
1111425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (4.0));
1112425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-4.0));
1113425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (6.0));
1114425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-6.0));
1115425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (7.0));
1116425bb815Sopenharmony_ci  GEN_DBL_TEST (tanh (-7.0));
1117425bb815Sopenharmony_ci} /* main */
1118