# Begin of automatic generation

# atan2
Test "atan2 (-0.75, -1.0)":
float: 1
ifloat: 1
Test "atan2 (0.75, -1.0)":
float: 1
ifloat: 1
Test "atan2 (1.390625, 0.9296875)":
float: 1
ifloat: 1

# atanh
Test "atanh (0.75)":
float: 1
ifloat: 1

# cacosh
Test "Imaginary part of: cacosh (-2 - 3 i)":
float: 1
ifloat: 1

# casin
Test "Real part of: casin (0.75 + 1.25 i)":
double: 1
float: 1
idouble: 1
ifloat: 1

# casinh
Test "Real part of: casinh (-2 - 3 i)":
double: 5
float: 1
idouble: 5
ifloat: 1
Test "Imaginary part of: casinh (-2 - 3 i)":
double: 3
float: 6
idouble: 3
ifloat: 6
Test "Real part of: casinh (0.75 + 1.25 i)":
float: 1
ifloat: 1
Test "Imaginary part of: casinh (0.75 + 1.25 i)":
double: 1
float: 1
idouble: 1
ifloat: 1

# catan
Test "Imaginary part of: catan (-2 - 3 i)":
double: 1
float: 1
idouble: 1
ifloat: 1

# catanh
Test "Real part of: catanh (-2 - 3 i)":
double: 4
idouble: 4
Test "Real part of: catanh (0.75 + 1.25 i)":
double: 1
idouble: 1

# cbrt
Test "cbrt (-27.0)":
double: 1
idouble: 1
Test "cbrt (0.75)":
double: 1
idouble: 1
Test "cbrt (0.9921875)":
double: 1
idouble: 1

# ccos
Test "Imaginary part of: ccos (-2 - 3 i)":
float: 1
ifloat: 1
Test "Real part of: ccos (0.75 + 1.25 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "Imaginary part of: ccos (0.75 + 1.25 i)":
float: 1
ifloat: 1

# ccosh
Test "Real part of: ccosh (-2 - 3 i)":
float: 1
ifloat: 1
Test "Imaginary part of: ccosh (-2 - 3 i)":
float: 1
ifloat: 1
Test "Real part of: ccosh (0.75 + 1.25 i)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "Imaginary part of: ccosh (0.75 + 1.25 i)":
float: 1
ifloat: 1

# cexp
Test "Imaginary part of: cexp (-2.0 - 3.0 i)":
float: 1
ifloat: 1
Test "Real part of: cexp (0.75 + 1.25 i)":
float: 1
ifloat: 1

# clog
Test "Real part of: clog (0.75 + 1.25 i)":
float: 1
ifloat: 1

# clog10
Test "Imaginary part of: clog10 (-0 + inf i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-0 - inf i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-2 - 3 i)":
double: 1
idouble: 1
Test "Imaginary part of: clog10 (-3 + inf i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-3 - inf i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-inf + 0 i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-inf + 1 i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-inf - 0 i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-inf - 1 i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (0 + inf i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (0 - inf i)":
float: 1
ifloat: 1
Test "Real part of: clog10 (0.75 + 1.25 i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (3 + inf i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (3 - inf i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (inf + inf i)":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (inf - inf i)":
float: 1
ifloat: 1

# cos
Test "cos (M_PI_6l * 2.0)":
double: 1
idouble: 1
Test "cos (M_PI_6l * 4.0)":
double: 2
float: 1
idouble: 2
ifloat: 1

# cpow
Test "Real part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i)":
float: 1
ifloat: 1
Test "Imaginary part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i)":
float: 1
ifloat: 1
Test "Real part of: cpow (0.75 + 1.25 i, 0.75 + 1.25 i)":
double: 1
float: 4
idouble: 1
ifloat: 4
Test "Real part of: cpow (0.75 + 1.25 i, 1.0 + 1.0 i)":
double: 2
float: 3
idouble: 2
ifloat: 3
Test "Real part of: cpow (2 + 3 i, 4 + 0 i)":
double: 1
float: 4
idouble: 1
ifloat: 4
Test "Imaginary part of: cpow (2 + 3 i, 4 + 0 i)":
float: 2
ifloat: 2
Test "Imaginary part of: cpow (e + 0 i, 0 + 2 * M_PIl i)":
double: 2
float: 2
idouble: 2
ifloat: 2

# csinh
Test "Imaginary part of: csinh (-2 - 3 i)":
double: 1
idouble: 1
Test "Real part of: csinh (0.75 + 1.25 i)":
float: 1
ifloat: 1
Test "Imaginary part of: csinh (0.75 + 1.25 i)":
float: 1
ifloat: 1

# csqrt
Test "Real part of: csqrt (-2 + 3 i)":
float: 1
ifloat: 1
Test "Real part of: csqrt (-2 - 3 i)":
float: 1
ifloat: 1

# ctan
Test "Imaginary part of: ctan (0.75 + 1.25 i)":
double: 1
idouble: 1

# ctanh
Test "Real part of: ctanh (-2 - 3 i)":
double: 1
float: 2
idouble: 1
ifloat: 2
Test "Imaginary part of: ctanh (0 + pi/4 i)":
float: 1
ifloat: 1
Test "Real part of: ctanh (0.75 + 1.25 i)":
double: 1
idouble: 1

# erf
Test "erf (1.25)":
double: 1
idouble: 1

# erfc
Test "erfc (2.0)":
double: 1
idouble: 1
Test "erfc (4.125)":
double: 1
idouble: 1

# exp10
Test "exp10 (-1)":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "exp10 (0.75)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "exp10 (3)":
double: 6
float: 2
idouble: 6
ifloat: 2

# expm1
Test "expm1 (0.75)":
double: 1
idouble: 1
Test "expm1 (1)":
float: 1
ifloat: 1

# hypot
Test "hypot (-0.7, -12.4)":
float: 1
ifloat: 1
Test "hypot (-0.7, 12.4)":
float: 1
ifloat: 1
Test "hypot (-12.4, -0.7)":
float: 1
ifloat: 1
Test "hypot (-12.4, 0.7)":
float: 1
ifloat: 1
Test "hypot (0.7, -12.4)":
float: 1
ifloat: 1
Test "hypot (0.7, 12.4)":
float: 1
ifloat: 1
Test "hypot (12.4, -0.7)":
float: 1
ifloat: 1
Test "hypot (12.4, 0.7)":
float: 1
ifloat: 1

# j0
Test "j0 (-4.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "j0 (0.75)":
float: 1
ifloat: 1
Test "j0 (10.0)":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "j0 (2.0)":
float: 2
ifloat: 2
Test "j0 (4.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "j0 (8.0)":
float: 1
ifloat: 1

# j1
Test "j1 (10.0)":
float: 2
ifloat: 2
Test "j1 (2.0)":
double: 1
idouble: 1
Test "j1 (8.0)":
double: 1
idouble: 1

# jn
Test "jn (0, -4.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "jn (0, 0.75)":
float: 1
ifloat: 1
Test "jn (0, 10.0)":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "jn (0, 2.0)":
float: 2
ifloat: 2
Test "jn (0, 4.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "jn (0, 8.0)":
float: 1
ifloat: 1
Test "jn (1, 10.0)":
float: 2
ifloat: 2
Test "jn (1, 2.0)":
double: 1
idouble: 1
Test "jn (1, 8.0)":
double: 1
idouble: 1
Test "jn (10, 0.125)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "jn (10, 0.75)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "jn (10, 10.0)":
double: 4
float: 3
idouble: 4
ifloat: 3
Test "jn (10, 2.0)":
float: 4
ifloat: 4
Test "jn (3, 0.125)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "jn (3, 0.75)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "jn (3, 10.0)":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "jn (3, 2.0)":
double: 1
float: 2
idouble: 1
ifloat: 2

# lgamma
Test "lgamma (0.7)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "lgamma (1.2)":
double: 1
float: 2
idouble: 1
ifloat: 2

# log10
Test "log10 (0.75)":
double: 1
float: 2
idouble: 1
ifloat: 2
Test "log10 (e)":
float: 1
ifloat: 1

# log1p
Test "log1p (-0.25)":
float: 1
ifloat: 1

# sincos
Test "sincos (M_PI_6l*2.0) extra output 1":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "sincos (M_PI_6l*2.0) extra output 2":
double: 1
idouble: 1
Test "sincos (pi/6) extra output 2":
float: 1
ifloat: 1

# tgamma
Test "tgamma (-0.5)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "tgamma (0.5)":
float: 1
ifloat: 1
Test "tgamma (0.7)":
double: 1
float: 1
idouble: 1
ifloat: 1

# y0
Test "y0 (1.0)":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "y0 (1.5)":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "y0 (10.0)":
float: 1
ifloat: 1
Test "y0 (8.0)":
double: 1
float: 1
idouble: 1
ifloat: 1

# y1
Test "y1 (0.125)":
double: 1
idouble: 1
Test "y1 (1.5)":
float: 1
ifloat: 1
Test "y1 (10.0)":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "y1 (2.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "y1 (8.0)":
double: 1
float: 2
idouble: 1
ifloat: 2

# yn
Test "yn (0, 1.0)":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "yn (0, 1.5)":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "yn (0, 10.0)":
float: 1
ifloat: 1
Test "yn (0, 8.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (1, 0.125)":
double: 1
idouble: 1
Test "yn (1, 1.5)":
float: 1
ifloat: 1
Test "yn (1, 10.0)":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "yn (1, 2.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (1, 8.0)":
double: 1
float: 2
idouble: 1
ifloat: 2
Test "yn (10, 0.125)":
double: 1
idouble: 1
Test "yn (10, 0.75)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (10, 1.0)":
double: 1
idouble: 1
Test "yn (10, 10.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (10, 2.0)":
double: 2
idouble: 2
Test "yn (3, 0.125)":
double: 1
idouble: 1
Test "yn (3, 0.75)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (3, 10.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (3, 2.0)":
double: 1
idouble: 1

# Maximal error of functions:
Function: "atan2":
float: 1
ifloat: 1

Function: "atanh":
float: 1
ifloat: 1

Function: Imaginary part of "cacosh":
float: 1
ifloat: 1

Function: Real part of "casin":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: Real part of "casinh":
double: 5
float: 1
idouble: 5
ifloat: 1

Function: Imaginary part of "casinh":
double: 3
float: 6
idouble: 3
ifloat: 6

Function: Imaginary part of "catan":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: Real part of "catanh":
double: 4
idouble: 4

Function: "cbrt":
double: 1
idouble: 1

Function: Real part of "ccos":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: Imaginary part of "ccos":
float: 1
ifloat: 1

Function: Real part of "ccosh":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: Imaginary part of "ccosh":
float: 1
ifloat: 1

Function: Real part of "cexp":
float: 1
ifloat: 1

Function: Imaginary part of "cexp":
float: 1
ifloat: 1

Function: Real part of "clog":
float: 1
ifloat: 1

Function: Real part of "clog10":
float: 1
ifloat: 1

Function: Imaginary part of "clog10":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "cos":
double: 2
float: 1
idouble: 2
ifloat: 1

Function: Real part of "cpow":
double: 2
float: 4
idouble: 2
ifloat: 4

Function: Imaginary part of "cpow":
double: 2
float: 2
idouble: 2
ifloat: 2

Function: Real part of "csinh":
float: 1
ifloat: 1

Function: Imaginary part of "csinh":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: Real part of "csqrt":
float: 1
ifloat: 1

Function: Imaginary part of "ctan":
double: 1
idouble: 1

Function: Real part of "ctanh":
double: 1
float: 2
idouble: 1
ifloat: 2

Function: Imaginary part of "ctanh":
float: 1
ifloat: 1

Function: "erf":
double: 1
idouble: 1

Function: "erfc":
double: 1
idouble: 1

Function: "exp10":
double: 6
float: 2
idouble: 6
ifloat: 2

Function: "expm1":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "hypot":
float: 1
ifloat: 1

Function: "j0":
double: 2
float: 2
idouble: 2
ifloat: 2

Function: "j1":
double: 1
float: 2
idouble: 1
ifloat: 2

Function: "jn":
double: 4
float: 4
idouble: 4
ifloat: 4

Function: "lgamma":
double: 1
float: 2
idouble: 1
ifloat: 2

Function: "log10":
double: 1
float: 2
idouble: 1
ifloat: 2

Function: "log1p":
float: 1
ifloat: 1

Function: "sincos":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "tan":
double: 1
idouble: 1

Function: "tgamma":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "y0":
double: 2
float: 1
idouble: 2
ifloat: 1

Function: "y1":
double: 3
float: 2
idouble: 3
ifloat: 2

Function: "yn":
double: 3
float: 2
idouble: 3
ifloat: 2

# end of automatic generation
