Imported Upstream version 1.0
[platform/upstream/mpc.git] / tests / exp.dat
1 # Data file for mpc_exp.
2 #
3 # Copyright (C) 2008, 2010 INRIA
4 #
5 # This file is part of GNU MPC.
6 #
7 # GNU MPC is free software; you can redistribute it and/or modify it under
8 # the terms of the GNU Lesser General Public License as published by the
9 # Free Software Foundation; either version 3 of the License, or (at your
10 #o ption) any later version.
11 #
12 # GNU MPC is distributed in the hope that it will be useful, but WITHOUT ANY
13 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
14 # FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
15 # more details.
16 #
17 # You should have received a copy of the GNU Lesser General Public License
18 # along with this program. If not, see http://www.gnu.org/licenses/ .
19 #
20 # The line format respects the parameter order in function prototype as
21 # follow:
22 #
23 # INEX_RE  INEX_IM  PREC_ROP_RE  ROP_RE  PREC_ROP_IM  ROP_IM  PREC_OP_RE  OP_RE  PREC_OP_IM  OP_IM  RND_RE  RND_IM
24 #
25 # see sin.dat for precisions
26
27 # special values (following ISO C99 standard)
28 0 0 53                     0 53                    0     53 -inf 53 -inf N N
29 0 0 53                    +0 53                   +0     53 -inf 53   -6 N N
30 0 0 53                    -0 53                   +0     53 -inf 53   -4 N N
31 0 0 53                    -0 53                   -0     53 -inf 53   -2 N N
32 0 0 53                    +0 53                   -0     53 -inf 53   -1 N N
33 0 0 53                    +0 53                   -0     53 -inf 53   -0 N N
34 0 0 53                    +0 53                   +0     53 -inf 53   +0 N N
35 0 0 53                    +0 53                   +0     53 -inf 53   +1 N N
36 0 0 53                    -0 53                   +0     53 -inf 53   +2 N N
37 0 0 53                    -0 53                   -0     53 -inf 53   +4 N N
38 0 0 53                    +0 53                   -0     53 -inf 53   +6 N N
39 0 0 53                     0 53                    0     53 -inf 53 +inf N N
40 0 0 53                     0 53                    0     53 -inf 53  nan N N
41 0 0 53                   nan 53                  nan     53   -1 53 -inf N N
42 0 0 53                   nan 53                  nan     53   -1 53 +inf N N
43 0 0 53                   nan 53                  nan     53   -1 53  nan N N
44 0 0 53                   nan 53                  nan     53   -0 53 -inf N N
45 0 0 53                    +1 53                   -0     53   -0 53   -0 N N
46 0 0 53                    +1 53                   +0     53   -0 53   +0 N N
47 0 0 53                   nan 53                  nan     53   -0 53 +inf N N
48 0 0 53                   nan 53                  nan     53   -0 53  nan N N
49 0 0 53                   nan 53                  nan     53   +0 53 -inf N N
50 0 0 53                    +1 53                   -0     53   +0 53   -0 N N
51 0 0 53                    +1 53                   +0     53   +0 53   +0 N N
52 0 0 53                   nan 53                  nan     53   +0 53 +inf N N
53 0 0 53                   nan 53                  nan     53   +0 53  nan N N
54 0 0 53                   nan 53                  nan     53   +1 53 -inf N N
55 0 0 53                   nan 53                  nan     53   +1 53 +inf N N
56 0 0 53                   nan 53                  nan     53   +1 53  nan N N
57 0 0 53                   inf 53                  nan     53 +inf 53 -inf N N
58 0 0 53                  +inf 53                 +inf     53 +inf 53   -6 N N
59 0 0 53                  -inf 53                 +inf     53 +inf 53   -4 N N
60 0 0 53                  -inf 53                 -inf     53 +inf 53   -2 N N
61 0 0 53                  +inf 53                 -inf     53 +inf 53   -1 N N
62 0 0 53                  +inf 53                   -0     53 +inf 53   -0 N N
63 0 0 53                  +inf 53                   +0     53 +inf 53   +0 N N
64 0 0 53                  +inf 53                 +inf     53 +inf 53   +1 N N
65 0 0 53                  -inf 53                 +inf     53 +inf 53   +2 N N
66 0 0 53                  -inf 53                 -inf     53 +inf 53   +4 N N
67 0 0 53                  +inf 53                 -inf     53 +inf 53   +6 N N
68 0 0 53                   inf 53                  nan     53 +inf 53 +inf N N
69 0 0 53                   inf 53                  nan     53 +inf 53  nan N N
70 0 0 53                   nan 53                  nan     53  nan 53 -inf N N
71 0 0 53                   nan 53                  nan     53  nan 53   -1 N N
72 0 0 53                   nan 53                   -0     53  nan 53   -0 N N
73 0 0 53                   nan 53                   +0     53  nan 53   +0 N N
74 0 0 53                   nan 53                  nan     53  nan 53   +1 N N
75 0 0 53                   nan 53                  nan     53  nan 53 +inf N N
76 0 0 53                   nan 53                  nan     53  nan 53  nan N N
77
78 # purely real argument
79 - 0 53 0x1936dc5690c08fp-44  2 +0    53  6 17 +0 N N
80 - 0 53 0x4b0556e084f3d0p-60  3 +0    54 -4 16 +0 Z N
81 + 0 53 0xec7325c6a6ed70p-53  4 -0    55  2 15 -0 U N
82 - 0 53 0x178b56362cef37p-54  5 -0    56 -1 14 -0 D N
83 - 0 53 0x3699205c4e74b0p-48  6 +0    57  4 13 +0 Z Z
84 + 0 53 0x454aaa8efe0730p-57  7 +0    58 -2 12 +0 U Z
85 - 0 53 0x15bf0a8b145769p-51  8 -0    59  1 11 -0 D Z
86 + 0 53 0xa2728f889ea6b0p-64  9 -0    60 -6 10 -0 N Z
87 + 0 53 0xec7325c6a6ed70p-53 10 +0    61  2  9 +0 U U
88 - 0 53 0x178b56362cef37p-54 11 +0    62 -1  8 +0 D U
89 - 0 53 0x1936dc5690c08fp-44 12 -0    63  6  7 -0 N U
90 - 0 53 0x4b0556e084f3d0p-60 13 -0    64 -4  6 -0 Z U
91 - 0 53 0x15bf0a8b145769p-51 14 +0    65  1  5 +0 D D
92 + 0 53 0xa2728f889ea6b0p-64 15 +0    66 -6  4 +0 N D
93 - 0 53 0x3699205c4e74b0p-48 16 -0    67  4  3 -0 Z D
94 + 0 53 0x454aaa8efe0730p-57 17 -0    68 -2  2 -0 U D
95
96 # purely imaginary argument
97 - + 53  0x1eb9b7097822f5p-53 53 -0x4787c62ac28b0p-52     53 +0 53  6 N N
98 + + 53 -0x53aa981b6c9300p-55 53 -0xc1bdceeee0f57p-52     51 -0 54  4 Z N
99 + - 53 -0x6a88995d4dc810p-56 53 -0xe8c7b7568da23p-52     49 +0 55 -2 U N
100 - + 53  0x114a280fb5068bp-53 53 -0xd76aa47848677p-52     47 -0 56 -1 D N
101 + + 53 -0x53aa981b6c9300p-55 53 -0xc1bdceeee0f57p-52     45 +0 57  4 Z Z
102 + - 53 -0x6a88995d4dc810p-56 53  0x1d18f6ead1b445p-53    43 -0 58  2 U Z
103 - + 53  0x114a280fb5068bp-53 53 -0xd76aa47848677p-52     41 +0 59 -1 D Z
104 - - 53  0x1eb9b7097822f5p-53 53  0x4787c62ac28b0p-52     39 -0 60 -6 N Z
105 + + 53 -0x6a88995d4dc810p-56 53  0xe8c7b7568da23p-52     37 +0 61  2 U U
106 - + 53  0x114a280fb5068bp-53 53  0x1aed548f090cefp-53    35 -0 62  1 D U
107 - + 53  0x1eb9b7097822f5p-53 53  0x11e1f18ab0a2c1p-54    33 +0 63 -6 N U
108 + + 53 -0x53aa981b6c9300p-55 53  0x1837b9dddc1eafp-53    31 -0 64 -4 Z U
109 - - 53  0x114a280fb5068bp-53 53  0xd76aa47848677p-52     29 +0 65  1 D D
110 - - 53  0x1eb9b7097822f5p-53 53 -0x11e1f18ab0a2c1p-54    27 -0 66  6 N D
111 + - 53 -0x53aa981b6c9300p-55 53  0xc1bdceeee0f57p-52     25 +0 67 -4 Z D
112 + - 53 -0x6a88995d4dc810p-56 53 -0xe8c7b7568da23p-52     23 -0 68 -2 U D
113
114 # overflow
115 - - 2 -inf 2 -inf  53 0x3312ae437f94441ec@-9 53 0xe45f7bab0595dd700@-10 N N
116
117 # input close to 0
118 ? ? 53 1 53 0x5D7A2148071Fp-7213522 53 0x1E02AE0D0F6Fp-7213521 53 0x5D7A2148071Fp-7213522 N N