tgmath fixes, better return type handling
[libm] / test / io / ucb / atan2s.input
1 /* Copyright (C) 1988-1994 Sun Microsystems, Inc. 2550 Garcia Avenue */
2 /* Mountain View, California  94043 All rights reserved. */
3 /*  */
4 /* Any person is hereby authorized to download, copy, use, create bug fixes,  */
5 /* and distribute, subject to the following conditions: */
6 /*  */
7 /*      1.  the software may not be redistributed for a fee except as */
8 /*          reasonable to cover media costs; */
9 /*      2.  any copy of the software must include this notice, as well as  */
10 /*          any other embedded copyright notices; and  */
11 /*      3.  any distribution of this software or derivative works thereof  */
12 /*          must comply with all applicable U.S. export control laws. */
13 /*  */
14 /* THE SOFTWARE IS MADE AVAILABLE "AS IS" AND WITHOUT EXPRESS OR IMPLIED */
15 /* WARRANTY OF ANY KIND, INCLUDING BUT NOT LIMITED TO THE IMPLIED */
16 /* WARRANTIES OF DESIGN, MERCHANTIBILITY, FITNESS FOR A PARTICULAR */
17 /* PURPOSE, NON-INFRINGEMENT, PERFORMANCE OR CONFORMANCE TO */
18 /* SPECIFICATIONS.   */
19 /*  */
20 /* BY DOWNLOADING AND/OR USING THIS SOFTWARE, THE USER WAIVES ALL CLAIMS */
21 /* AGAINST SUN MICROSYSTEMS, INC. AND ITS AFFILIATED COMPANIES IN ANY */
22 /* JURISDICTION, INCLUDING BUT NOT LIMITED TO CLAIMS FOR DAMAGES OR */
23 /* EQUITABLE RELIEF BASED ON LOSS OF DATA, AND SPECIFICALLY WAIVES EVEN */
24 /* UNKNOWN OR UNANTICIPATED CLAIMS OR LOSSES, PRESENT AND FUTURE. */
25 /*  */
26 /* IN NO EVENT WILL SUN MICROSYSTEMS, INC. OR ANY OF ITS AFFILIATED */
27 /* COMPANIES BE LIABLE FOR ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, */
28 /* INDIRECT AND CONSEQUENTIAL DAMAGES, EVEN IF IT HAS BEEN ADVISED OF THE */
29 /* POSSIBILITY OF SUCH DAMAGES. */
30 /*  */
31 /* This file is provided with no support and without any obligation on the */
32 /* part of Sun Microsystems, Inc. ("Sun") or any of its affiliated */
33 /* companies to assist in its use, correction, modification or */
34 /* enhancement.  Nevertheless, and without creating any obligation on its */
35 /* part, Sun welcomes your comments concerning the software and requests */
36 /* that they be sent to fdlibm-comments@sunpro.sun.com. */
37
38         /* atan2s(+-0,+anything but nan) is +-0 */
39 atan2s n eq - 0 0 0
40 atan2s n eq - 0 1 0
41 atan2s n eq - 0 00100000 0
42 atan2s n eq - 0 7f7fffff 0
43 atan2s n eq - 0 7f800000 0
44 atan2s n eq - 80000000 0 80000000
45 atan2s n eq - 80000000 1 80000000
46 atan2s n eq - 80000000 00100000 80000000
47 atan2s n eq - 80000000 7f7fffff 80000000
48 atan2s n eq - 80000000 7f800000 80000000
49         /* atan2s(+-0,-anything but nan) is +-pi */
50 atan2s n eq ?x 0 ff800000 40490fdb
51 atan2s n eq ?x 0 ff7fffff 40490fdb
52 atan2s n eq ?x 0 80100000 40490fdb
53 atan2s n eq ?x 0 80000001 40490fdb
54 atan2s n eq ?x 0 80000000 40490fdb
55 atan2s n eq ?x 80000000 ff800000 c0490fdb
56 atan2s n eq ?x 80000000 ff7fffff c0490fdb
57 atan2s n eq ?x 80000000 80100000 c0490fdb
58 atan2s n eq ?x 80000000 80000001 c0490fdb
59 atan2s n eq ?x 80000000 80000000 c0490fdb
60         /*  atan2s(+-anything but 0 and nan, 0) is +- pi/2 */
61 atan2s n eq ?x 7f800000 0 3fc90fdb
62 atan2s n eq ?x 7f800000 80000000 3fc90fdb
63 atan2s n eq ?x 7f7fffff 0 3fc90fdb
64 atan2s n eq ?x 7f7fffff 80000000 3fc90fdb
65 atan2s n eq ?x 00800000 0 3fc90fdb
66 atan2s n eq ?x 00800000 80000000 3fc90fdb
67 atan2s n eq ?x 1 0 3fc90fdb
68 atan2s n eq ?x 1 80000000 3fc90fdb
69 atan2s n eq ?x ff800000 0 bfc90fdb
70 atan2s n eq ?x ff800000 80000000 bfc90fdb
71 atan2s n eq ?x ff7fffff 0 bfc90fdb
72 atan2s n eq ?x ff7fffff 80000000 bfc90fdb
73 atan2s n eq ?x 80800000 0 bfc90fdb
74 atan2s n eq ?x 80800000 80000000 bfc90fdb
75 atan2s n eq ?x 80000001 0 bfc90fdb
76 atan2s n eq ?x 80000001 80000000 bfc90fdb
77         /* atan2s(big,small) :=: +-pi/2  */
78 atan2s n vn x 7f7fffff 00800000 3fc90fdb
79 atan2s n vn x 7f7fffff 80800000 3fc90fdb
80 atan2s n vn x ff7fffff 00800000 bfc90fdb
81 atan2s n vn x ff7fffff 80800000 bfc90fdb
82 atan2s z vn x 7f7fffff 00800000 3fc90fdb
83 atan2s z vn x 7f7fffff 80800000 3fc90fdb
84 atan2s z vn x ff7fffff 00800000 bfc90fdb
85 atan2s z vn x ff7fffff 80800000 bfc90fdb
86 atan2s p vn x 7f7fffff 00800000 3fc90fdb
87 atan2s p vn x 7f7fffff 80800000 3fc90fdb
88 atan2s p vn x ff7fffff 00800000 bfc90fdb
89 atan2s p vn x ff7fffff 80800000 bfc90fdb
90 atan2s m vn x 7f7fffff 00800000 3fc90fdb
91 atan2s m vn x 7f7fffff 80800000 3fc90fdb
92 atan2s m vn x ff7fffff 00800000 bfc90fdb
93 atan2s m vn x ff7fffff 80800000 bfc90fdb
94         /* atan2s(small,big) = small/big (big>0) 
95            else sign(small)(pi - |small/big|) */
96 atan2s n eq ux 00800000 7f7fffff 0 
97 atan2s n eq ux 80800000 7f7fffff 80000000 
98 atan2s n vn x  00800000 ff7fffff 40490fdb
99 atan2s n vn x  80800000 ff7fffff c0490fdb
100 atan2s z eq ux 00800000 7f7fffff 0
101 atan2s z eq ux 80800000 7f7fffff 80000000
102 atan2s z vn x  00800000 ff7fffff 40490fdb
103 atan2s z vn x  80800000 ff7fffff c0490fdb
104 atan2s p vn ux 00800000 7f7fffff 0
105 atan2s p vn ux 80800000 7f7fffff 80000000
106 atan2s p vn x  00800000 ff7fffff 40490fdb
107 atan2s p vn x  80800000 ff7fffff c0490fdb
108 atan2s m vn ux 00800000 7f7fffff 0
109 atan2s m vn ux 80800000 7f7fffff 80000000
110 atan2s m vn x  00800000 ff7fffff 40490fdb
111 atan2s m vn x  80800000 ff7fffff c0490fdb
112         /* atan2s(+-x,+x) = +-pi/4 for normal x */
113 atan2s n eq x 00800000 00800000 3f490fdb
114 atan2s n eq x 80800000 00800000 bf490fdb
115 atan2s n eq x 7f7fffff 7f7fffff 3f490fdb
116 atan2s n eq x ff7fffff 7f7fffff bf490fdb
117         /* atan2s(+-x,-x) = +-3pi/4 for normal x */
118 atan2s n eq x 00800000 80800000 4016cbe4
119 atan2s n eq x 80800000 80800000 c016cbe4
120 atan2s n eq x 3f800000 bf800000 4016cbe4
121 atan2s n eq x bf800000 bf800000 c016cbe4
122 atan2s n eq x 7f7fffff ff7fffff 4016cbe4
123 atan2s n eq x ff7fffff ff7fffff c016cbe4
124         /* random arguments between -2.0 and 2.0 */
125 atan2s n vn x bf099426 3fb65470 beb8b690
126 atan2s n vn x 3fe16530 bfaaf890 400e1037
127 atan2s n vn x bf0ab3cf bda0f099 bfdb7fa2
128 atan2s n vn x 3f940d87 3fdae71a 3f183c4e
129 atan2s n vn x beac1a41 bff54112 c03df284
130 atan2s n vn x bf5570c0 3dbd4ed1 bfbaedbe
131 atan2s n vn x bfc22800 3fb65191 bf511bd9
132 atan2s n vn x bfff04df bfffb63f c016e21e
133 atan2s n vn x bf692641 3f94db41 bf2a1451
134 atan2s n vn x 3f12f53f 3f7ccacc 3f06ce4b
135         /* atan2s involve nan  */
136 atan2s n uo v 0 7f800001 0
137 atan2s n uo - 3f800000 ffc00000 0
138 atan2s n uo v 7f800001 00000001 0
139 atan2s n uo - 7fc00000 ff7fffff 0
140 atan2s n uo v 7fc00000 ff800001 0
141 atan2s n uo - ffc00000 ffc00000 0
142 atan2s z uo v 0 7f800001 0
143 atan2s z uo - 3f800000 ffc00000 0
144 atan2s z uo v 7f800001 00000001 0
145 atan2s z uo - 7fc00000 ff7fffff 0
146 atan2s z uo v 7fc00000 ff800001 0
147 atan2s z uo - ffc00000 ffc00000 0
148 atan2s p uo v 0 7f800001 0
149 atan2s p uo - 3f800000 ffc00000 0
150 atan2s p uo v 7f800001 00000001 0
151 atan2s p uo - 7fc00000 ff7fffff 0
152 atan2s p uo v 7fc00000 ff800001 0
153 atan2s p uo - ffc00000 ffc00000 0
154 atan2s m uo v 0 7f800001 0
155 atan2s m uo - 3f800000 ffc00000 0
156 atan2s m uo v 7f800001 00000001 0
157 atan2s m uo - 7fc00000 ff7fffff 0
158 atan2s m uo v 7fc00000 ff800001 0
159 atan2s m uo - ffc00000 ffc00000 0
160         /*  atan2s(+-(anything but inf and nan), +inf) is +-0 */
161 atan2s n eq - 0 7f800000 0
162 atan2s n eq - 1 7f800000 0
163 atan2s n eq - 7f7fffff 7f800000 0
164 atan2s n eq - 80000000 7f800000 80000000
165 atan2s n eq - 80000001 7f800000 80000000
166 atan2s n eq - ff7fffff 7f800000 80000000
167         /*  atan2s(+-(anything but inf and nan), -inf) is +-pi */
168 atan2s n eq ?x 0 ff800000 40490fdb
169 atan2s n eq ?x 1 ff800000 40490fdb
170 atan2s n eq ?x 7f7fffff ff800000 40490fdb
171 atan2s n eq ?x 80000000 ff800000 c0490fdb
172 atan2s n eq ?x 80000001 ff800000 c0490fdb
173 atan2s n eq ?x ff7fffff ff800000 c0490fdb
174         /*  atan2s(+-inf,+inf ) is +-pi/4 */
175 atan2s n eq ?x 7f800000 7f800000 3f490fdb
176 atan2s n eq ?x ff800000 7f800000 bf490fdb
177         /*  atan2s(+-inf,-inf ) is +-3pi/4 */
178 atan2s n eq ?x 7f800000 ff800000 4016cbe4
179 atan2s n eq ?x ff800000 ff800000 c016cbe4
180         /*  atan2s(+-inf, (anything but,0,nan, and inf)) is +-pi/2 */
181 atan2s n eq ?x 7f800000 1 3fc90fdb
182 atan2s n eq ?x 7f800000 80000001 3fc90fdb
183 atan2s n eq ?x 7f800000 7f7fffff 3fc90fdb
184 atan2s n eq ?x 7f800000 ff7fffff 3fc90fdb
185 atan2s n eq ?x ff800000 1 bfc90fdb
186 atan2s n eq ?x ff800000 80000001 bfc90fdb
187 atan2s n eq ?x ff800000 7f7fffff bfc90fdb
188 atan2s n eq ?x ff800000 ff7fffff bfc90fdb
189 atan2s m uo - 3f800000 ffc00000 00000000
190 atan2s m uo - 7fc00000 ff7fffff 00000000
191 atan2s m uo - ffc00000 ffc00000 00000000
192 atan2s m uo v 00000000 7f800001 00000000
193 atan2s m uo v 7f800001 00000001 00000000
194 atan2s m uo v 7fc00000 ff800001 00000000
195 atan2s m vn x 00800000 ff7fffff 40490fdb
196 atan2s m vn x 80800000 ff7fffff c0490fdb
197 atan2s m vn xu 00800000 7f7fffff 00000000
198 atan2s m vn xu 80800000 7f7fffff 80000000
199 atan2s n eq xu 00800000 7f7fffff 00000000
200 atan2s n eq xu 80800000 7f7fffff 80000000
201 atan2s n uo - 3f800000 ffc00000 00000000
202 atan2s n uo - 7fc00000 ff7fffff 00000000
203 atan2s n uo - ffc00000 ffc00000 00000000
204 atan2s n uo v 00000000 7f800001 00000000
205 atan2s n uo v 7f800001 00000001 00000000
206 atan2s n uo v 7fc00000 ff800001 00000000
207 atan2s n vn x 00800000 ff7fffff 40490fdb
208 atan2s n vn x 80800000 ff7fffff c0490fdb
209 atan2s p uo - 3f800000 ffc00000 00000000
210 atan2s p uo - 7fc00000 ff7fffff 00000000
211 atan2s p uo - ffc00000 ffc00000 00000000
212 atan2s p uo v 00000000 7f800001 00000000
213 atan2s p uo v 7f800001 00000001 00000000
214 atan2s p uo v 7fc00000 ff800001 00000000
215 atan2s p vn x 00800000 ff7fffff 40490fdb
216 atan2s p vn x 80800000 ff7fffff c0490fdb
217 atan2s p vn xu 00800000 7f7fffff 00000000
218 atan2s p vn xu 80800000 7f7fffff 80000000
219 atan2s z eq xu 00800000 7f7fffff 00000000
220 atan2s z eq xu 80800000 7f7fffff 80000000
221 atan2s z uo - 3f800000 ffc00000 00000000
222 atan2s z uo - 7fc00000 ff7fffff 00000000
223 atan2s z uo - ffc00000 ffc00000 00000000
224 atan2s z uo v 00000000 7f800001 00000000
225 atan2s z uo v 7f800001 00000001 00000000
226 atan2s z uo v 7fc00000 ff800001 00000000
227 atan2s z vn x 00800000 ff7fffff 40490fdb
228 atan2s z vn x 80800000 ff7fffff c0490fdb