blob: 35b13ebbacb3ec62bf944382d2a5db1911d20b06 [file] [log] [blame]
Josh Gaoc62e49a2016-04-29 18:11:04 -07001------------------------------------------------------------------------
2-- samequantum.decTest -- check quantums match --
3-- Copyright (c) IBM Corporation, 2001, 2008. All rights reserved. --
4------------------------------------------------------------------------
5-- Please see the document "General Decimal Arithmetic Testcases" --
6-- at http://www2.hursley.ibm.com/decimal for the description of --
7-- these testcases. --
8-- --
9-- These testcases are experimental ('beta' versions), and they --
10-- may contain errors. They are offered on an as-is basis. In --
11-- particular, achieving the same results as the tests here is not --
12-- a guarantee that an implementation complies with any Standard --
13-- or specification. The tests are not exhaustive. --
14-- --
15-- Please send comments, suggestions, and corrections to the author: --
16-- Mike Cowlishaw, IBM Fellow --
17-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
18-- mfc@uk.ibm.com --
19------------------------------------------------------------------------
20version: 2.59
21
22extended: 1
23precision: 9
24rounding: half_up
25maxExponent: 999
26minExponent: -999
27
28samq001 samequantum 0 0 -> 1
29samq002 samequantum 0 1 -> 1
30samq003 samequantum 1 0 -> 1
31samq004 samequantum 1 1 -> 1
32
33samq011 samequantum 10 1E+1 -> 0
34samq012 samequantum 10E+1 10E+1 -> 1
35samq013 samequantum 100 10E+1 -> 0
36samq014 samequantum 100 1E+2 -> 0
37samq015 samequantum 0.1 1E-2 -> 0
38samq016 samequantum 0.1 1E-1 -> 1
39samq017 samequantum 0.1 1E-0 -> 0
40samq018 samequantum 999 999 -> 1
41samq019 samequantum 999E-1 99.9 -> 1
42samq020 samequantum 111E-1 22.2 -> 1
43samq021 samequantum 111E-1 1234.2 -> 1
44
45-- zeros
46samq030 samequantum 0.0 1.1 -> 1
47samq031 samequantum 0.0 1.11 -> 0
48samq032 samequantum 0.0 0 -> 0
49samq033 samequantum 0.0 0.0 -> 1
50samq034 samequantum 0.0 0.00 -> 0
51samq035 samequantum 0E+1 0E+0 -> 0
52samq036 samequantum 0E+1 0E+1 -> 1
53samq037 samequantum 0E+1 0E+2 -> 0
54samq038 samequantum 0E-17 0E-16 -> 0
55samq039 samequantum 0E-17 0E-17 -> 1
56samq040 samequantum 0E-17 0E-18 -> 0
57samq041 samequantum 0E-17 0.0E-15 -> 0
58samq042 samequantum 0E-17 0.0E-16 -> 1
59samq043 samequantum 0E-17 0.0E-17 -> 0
60samq044 samequantum -0E-17 0.0E-16 -> 1
61samq045 samequantum 0E-17 -0.0E-17 -> 0
62samq046 samequantum 0E-17 -0.0E-16 -> 1
63samq047 samequantum -0E-17 0.0E-17 -> 0
64samq048 samequantum -0E-17 -0.0E-16 -> 1
65samq049 samequantum -0E-17 -0.0E-17 -> 0
66
67-- Nmax, Nmin, Ntiny
68samq051 samequantum 9.99999999E+999 9.99999999E+999 -> 1
69samq052 samequantum 1E-999 1E-999 -> 1
70samq053 samequantum 1.00000000E-999 1.00000000E-999 -> 1
71samq054 samequantum 1E-1007 1E-1007 -> 1
72samq055 samequantum 9.99999999E+999 9.99999999E+999 -> 1
73samq056 samequantum 1E-999 1E-999 -> 1
74samq057 samequantum 1.00000000E-999 1.00000000E-999 -> 1
75samq058 samequantum 1E-1007 1E-1007 -> 1
76
77samq061 samequantum -1E-1007 -1E-1007 -> 1
78samq062 samequantum -1.00000000E-999 -1.00000000E-999 -> 1
79samq063 samequantum -1E-999 -1E-999 -> 1
80samq064 samequantum -9.99999999E+999 -9.99999999E+999 -> 1
81samq065 samequantum -1E-1007 -1E-1007 -> 1
82samq066 samequantum -1.00000000E-999 -1.00000000E-999 -> 1
83samq067 samequantum -1E-999 -1E-999 -> 1
84samq068 samequantum -9.99999999E+999 -9.99999999E+999 -> 1
85
86samq071 samequantum -4E-1007 -1E-1007 -> 1
87samq072 samequantum -4.00000000E-999 -1.00004000E-999 -> 1
88samq073 samequantum -4E-999 -1E-999 -> 1
89samq074 samequantum -4.99999999E+999 -9.99949999E+999 -> 1
90samq075 samequantum -4E-1007 -1E-1007 -> 1
91samq076 samequantum -4.00000000E-999 -1.00400000E-999 -> 1
92samq077 samequantum -4E-999 -1E-999 -> 1
93samq078 samequantum -4.99999999E+999 -9.94999999E+999 -> 1
94
95samq081 samequantum -4E-1006 -1E-1007 -> 0
96samq082 samequantum -4.00000000E-999 -1.00004000E-996 -> 0
97samq083 samequantum -4E-996 -1E-999 -> 0
98samq084 samequantum -4.99999999E+999 -9.99949999E+996 -> 0
99samq085 samequantum -4E-1006 -1E-1007 -> 0
100samq086 samequantum -4.00000000E-999 -1.00400000E-996 -> 0
101samq087 samequantum -4E-996 -1E-999 -> 0
102samq088 samequantum -4.99999999E+999 -9.94999999E+996 -> 0
103
104-- specials & combinations
105samq0110 samequantum -Inf -Inf -> 1
106samq0111 samequantum -Inf Inf -> 1
107samq0112 samequantum -Inf NaN -> 0
108samq0113 samequantum -Inf -7E+3 -> 0
109samq0114 samequantum -Inf -7 -> 0
110samq0115 samequantum -Inf -7E-3 -> 0
111samq0116 samequantum -Inf -0E-3 -> 0
112samq0117 samequantum -Inf -0 -> 0
113samq0118 samequantum -Inf -0E+3 -> 0
114samq0119 samequantum -Inf 0E-3 -> 0
115samq0120 samequantum -Inf 0 -> 0
116samq0121 samequantum -Inf 0E+3 -> 0
117samq0122 samequantum -Inf 7E-3 -> 0
118samq0123 samequantum -Inf 7 -> 0
119samq0124 samequantum -Inf 7E+3 -> 0
120samq0125 samequantum -Inf sNaN -> 0
121
122samq0210 samequantum Inf -Inf -> 1
123samq0211 samequantum Inf Inf -> 1
124samq0212 samequantum Inf NaN -> 0
125samq0213 samequantum Inf -7E+3 -> 0
126samq0214 samequantum Inf -7 -> 0
127samq0215 samequantum Inf -7E-3 -> 0
128samq0216 samequantum Inf -0E-3 -> 0
129samq0217 samequantum Inf -0 -> 0
130samq0218 samequantum Inf -0E+3 -> 0
131samq0219 samequantum Inf 0E-3 -> 0
132samq0220 samequantum Inf 0 -> 0
133samq0221 samequantum Inf 0E+3 -> 0
134samq0222 samequantum Inf 7E-3 -> 0
135samq0223 samequantum Inf 7 -> 0
136samq0224 samequantum Inf 7E+3 -> 0
137samq0225 samequantum Inf sNaN -> 0
138
139samq0310 samequantum NaN -Inf -> 0
140samq0311 samequantum NaN Inf -> 0
141samq0312 samequantum NaN NaN -> 1
142samq0313 samequantum NaN -7E+3 -> 0
143samq0314 samequantum NaN -7 -> 0
144samq0315 samequantum NaN -7E-3 -> 0
145samq0316 samequantum NaN -0E-3 -> 0
146samq0317 samequantum NaN -0 -> 0
147samq0318 samequantum NaN -0E+3 -> 0
148samq0319 samequantum NaN 0E-3 -> 0
149samq0320 samequantum NaN 0 -> 0
150samq0321 samequantum NaN 0E+3 -> 0
151samq0322 samequantum NaN 7E-3 -> 0
152samq0323 samequantum NaN 7 -> 0
153samq0324 samequantum NaN 7E+3 -> 0
154samq0325 samequantum NaN sNaN -> 1
155
156samq0410 samequantum -7E+3 -Inf -> 0
157samq0411 samequantum -7E+3 Inf -> 0
158samq0412 samequantum -7E+3 NaN -> 0
159samq0413 samequantum -7E+3 -7E+3 -> 1
160samq0414 samequantum -7E+3 -7 -> 0
161samq0415 samequantum -7E+3 -7E-3 -> 0
162samq0416 samequantum -7E+3 -0E-3 -> 0
163samq0417 samequantum -7E+3 -0 -> 0
164samq0418 samequantum -7E+3 -0E+3 -> 1
165samq0419 samequantum -7E+3 0E-3 -> 0
166samq0420 samequantum -7E+3 0 -> 0
167samq0421 samequantum -7E+3 0E+3 -> 1
168samq0422 samequantum -7E+3 7E-3 -> 0
169samq0423 samequantum -7E+3 7 -> 0
170samq0424 samequantum -7E+3 7E+3 -> 1
171samq0425 samequantum -7E+3 sNaN -> 0
172
173samq0510 samequantum -7 -Inf -> 0
174samq0511 samequantum -7 Inf -> 0
175samq0512 samequantum -7 NaN -> 0
176samq0513 samequantum -7 -7E+3 -> 0
177samq0514 samequantum -7 -7 -> 1
178samq0515 samequantum -7 -7E-3 -> 0
179samq0516 samequantum -7 -0E-3 -> 0
180samq0517 samequantum -7 -0 -> 1
181samq0518 samequantum -7 -0E+3 -> 0
182samq0519 samequantum -7 0E-3 -> 0
183samq0520 samequantum -7 0 -> 1
184samq0521 samequantum -7 0E+3 -> 0
185samq0522 samequantum -7 7E-3 -> 0
186samq0523 samequantum -7 7 -> 1
187samq0524 samequantum -7 7E+3 -> 0
188samq0525 samequantum -7 sNaN -> 0
189
190samq0610 samequantum -7E-3 -Inf -> 0
191samq0611 samequantum -7E-3 Inf -> 0
192samq0612 samequantum -7E-3 NaN -> 0
193samq0613 samequantum -7E-3 -7E+3 -> 0
194samq0614 samequantum -7E-3 -7 -> 0
195samq0615 samequantum -7E-3 -7E-3 -> 1
196samq0616 samequantum -7E-3 -0E-3 -> 1
197samq0617 samequantum -7E-3 -0 -> 0
198samq0618 samequantum -7E-3 -0E+3 -> 0
199samq0619 samequantum -7E-3 0E-3 -> 1
200samq0620 samequantum -7E-3 0 -> 0
201samq0621 samequantum -7E-3 0E+3 -> 0
202samq0622 samequantum -7E-3 7E-3 -> 1
203samq0623 samequantum -7E-3 7 -> 0
204samq0624 samequantum -7E-3 7E+3 -> 0
205samq0625 samequantum -7E-3 sNaN -> 0
206
207samq0710 samequantum -0E-3 -Inf -> 0
208samq0711 samequantum -0E-3 Inf -> 0
209samq0712 samequantum -0E-3 NaN -> 0
210samq0713 samequantum -0E-3 -7E+3 -> 0
211samq0714 samequantum -0E-3 -7 -> 0
212samq0715 samequantum -0E-3 -7E-3 -> 1
213samq0716 samequantum -0E-3 -0E-3 -> 1
214samq0717 samequantum -0E-3 -0 -> 0
215samq0718 samequantum -0E-3 -0E+3 -> 0
216samq0719 samequantum -0E-3 0E-3 -> 1
217samq0720 samequantum -0E-3 0 -> 0
218samq0721 samequantum -0E-3 0E+3 -> 0
219samq0722 samequantum -0E-3 7E-3 -> 1
220samq0723 samequantum -0E-3 7 -> 0
221samq0724 samequantum -0E-3 7E+3 -> 0
222samq0725 samequantum -0E-3 sNaN -> 0
223
224samq0810 samequantum -0 -Inf -> 0
225samq0811 samequantum -0 Inf -> 0
226samq0812 samequantum -0 NaN -> 0
227samq0813 samequantum -0 -7E+3 -> 0
228samq0814 samequantum -0 -7 -> 1
229samq0815 samequantum -0 -7E-3 -> 0
230samq0816 samequantum -0 -0E-3 -> 0
231samq0817 samequantum -0 -0 -> 1
232samq0818 samequantum -0 -0E+3 -> 0
233samq0819 samequantum -0 0E-3 -> 0
234samq0820 samequantum -0 0 -> 1
235samq0821 samequantum -0 0E+3 -> 0
236samq0822 samequantum -0 7E-3 -> 0
237samq0823 samequantum -0 7 -> 1
238samq0824 samequantum -0 7E+3 -> 0
239samq0825 samequantum -0 sNaN -> 0
240
241samq0910 samequantum -0E+3 -Inf -> 0
242samq0911 samequantum -0E+3 Inf -> 0
243samq0912 samequantum -0E+3 NaN -> 0
244samq0913 samequantum -0E+3 -7E+3 -> 1
245samq0914 samequantum -0E+3 -7 -> 0
246samq0915 samequantum -0E+3 -7E-3 -> 0
247samq0916 samequantum -0E+3 -0E-3 -> 0
248samq0917 samequantum -0E+3 -0 -> 0
249samq0918 samequantum -0E+3 -0E+3 -> 1
250samq0919 samequantum -0E+3 0E-3 -> 0
251samq0920 samequantum -0E+3 0 -> 0
252samq0921 samequantum -0E+3 0E+3 -> 1
253samq0922 samequantum -0E+3 7E-3 -> 0
254samq0923 samequantum -0E+3 7 -> 0
255samq0924 samequantum -0E+3 7E+3 -> 1
256samq0925 samequantum -0E+3 sNaN -> 0
257
258samq1110 samequantum 0E-3 -Inf -> 0
259samq1111 samequantum 0E-3 Inf -> 0
260samq1112 samequantum 0E-3 NaN -> 0
261samq1113 samequantum 0E-3 -7E+3 -> 0
262samq1114 samequantum 0E-3 -7 -> 0
263samq1115 samequantum 0E-3 -7E-3 -> 1
264samq1116 samequantum 0E-3 -0E-3 -> 1
265samq1117 samequantum 0E-3 -0 -> 0
266samq1118 samequantum 0E-3 -0E+3 -> 0
267samq1119 samequantum 0E-3 0E-3 -> 1
268samq1120 samequantum 0E-3 0 -> 0
269samq1121 samequantum 0E-3 0E+3 -> 0
270samq1122 samequantum 0E-3 7E-3 -> 1
271samq1123 samequantum 0E-3 7 -> 0
272samq1124 samequantum 0E-3 7E+3 -> 0
273samq1125 samequantum 0E-3 sNaN -> 0
274
275samq1210 samequantum 0 -Inf -> 0
276samq1211 samequantum 0 Inf -> 0
277samq1212 samequantum 0 NaN -> 0
278samq1213 samequantum 0 -7E+3 -> 0
279samq1214 samequantum 0 -7 -> 1
280samq1215 samequantum 0 -7E-3 -> 0
281samq1216 samequantum 0 -0E-3 -> 0
282samq1217 samequantum 0 -0 -> 1
283samq1218 samequantum 0 -0E+3 -> 0
284samq1219 samequantum 0 0E-3 -> 0
285samq1220 samequantum 0 0 -> 1
286samq1221 samequantum 0 0E+3 -> 0
287samq1222 samequantum 0 7E-3 -> 0
288samq1223 samequantum 0 7 -> 1
289samq1224 samequantum 0 7E+3 -> 0
290samq1225 samequantum 0 sNaN -> 0
291
292samq1310 samequantum 0E+3 -Inf -> 0
293samq1311 samequantum 0E+3 Inf -> 0
294samq1312 samequantum 0E+3 NaN -> 0
295samq1313 samequantum 0E+3 -7E+3 -> 1
296samq1314 samequantum 0E+3 -7 -> 0
297samq1315 samequantum 0E+3 -7E-3 -> 0
298samq1316 samequantum 0E+3 -0E-3 -> 0
299samq1317 samequantum 0E+3 -0 -> 0
300samq1318 samequantum 0E+3 -0E+3 -> 1
301samq1319 samequantum 0E+3 0E-3 -> 0
302samq1320 samequantum 0E+3 0 -> 0
303samq1321 samequantum 0E+3 0E+3 -> 1
304samq1322 samequantum 0E+3 7E-3 -> 0
305samq1323 samequantum 0E+3 7 -> 0
306samq1324 samequantum 0E+3 7E+3 -> 1
307samq1325 samequantum 0E+3 sNaN -> 0
308
309samq1410 samequantum 7E-3 -Inf -> 0
310samq1411 samequantum 7E-3 Inf -> 0
311samq1412 samequantum 7E-3 NaN -> 0
312samq1413 samequantum 7E-3 -7E+3 -> 0
313samq1414 samequantum 7E-3 -7 -> 0
314samq1415 samequantum 7E-3 -7E-3 -> 1
315samq1416 samequantum 7E-3 -0E-3 -> 1
316samq1417 samequantum 7E-3 -0 -> 0
317samq1418 samequantum 7E-3 -0E+3 -> 0
318samq1419 samequantum 7E-3 0E-3 -> 1
319samq1420 samequantum 7E-3 0 -> 0
320samq1421 samequantum 7E-3 0E+3 -> 0
321samq1422 samequantum 7E-3 7E-3 -> 1
322samq1423 samequantum 7E-3 7 -> 0
323samq1424 samequantum 7E-3 7E+3 -> 0
324samq1425 samequantum 7E-3 sNaN -> 0
325
326samq1510 samequantum 7 -Inf -> 0
327samq1511 samequantum 7 Inf -> 0
328samq1512 samequantum 7 NaN -> 0
329samq1513 samequantum 7 -7E+3 -> 0
330samq1514 samequantum 7 -7 -> 1
331samq1515 samequantum 7 -7E-3 -> 0
332samq1516 samequantum 7 -0E-3 -> 0
333samq1517 samequantum 7 -0 -> 1
334samq1518 samequantum 7 -0E+3 -> 0
335samq1519 samequantum 7 0E-3 -> 0
336samq1520 samequantum 7 0 -> 1
337samq1521 samequantum 7 0E+3 -> 0
338samq1522 samequantum 7 7E-3 -> 0
339samq1523 samequantum 7 7 -> 1
340samq1524 samequantum 7 7E+3 -> 0
341samq1525 samequantum 7 sNaN -> 0
342
343samq1610 samequantum 7E+3 -Inf -> 0
344samq1611 samequantum 7E+3 Inf -> 0
345samq1612 samequantum 7E+3 NaN -> 0
346samq1613 samequantum 7E+3 -7E+3 -> 1
347samq1614 samequantum 7E+3 -7 -> 0
348samq1615 samequantum 7E+3 -7E-3 -> 0
349samq1616 samequantum 7E+3 -0E-3 -> 0
350samq1617 samequantum 7E+3 -0 -> 0
351samq1618 samequantum 7E+3 -0E+3 -> 1
352samq1619 samequantum 7E+3 0E-3 -> 0
353samq1620 samequantum 7E+3 0 -> 0
354samq1621 samequantum 7E+3 0E+3 -> 1
355samq1622 samequantum 7E+3 7E-3 -> 0
356samq1623 samequantum 7E+3 7 -> 0
357samq1624 samequantum 7E+3 7E+3 -> 1
358samq1625 samequantum 7E+3 sNaN -> 0
359
360samq1710 samequantum sNaN -Inf -> 0
361samq1711 samequantum sNaN Inf -> 0
362samq1712 samequantum sNaN NaN -> 1
363samq1713 samequantum sNaN -7E+3 -> 0
364samq1714 samequantum sNaN -7 -> 0
365samq1715 samequantum sNaN -7E-3 -> 0
366samq1716 samequantum sNaN -0E-3 -> 0
367samq1717 samequantum sNaN -0 -> 0
368samq1718 samequantum sNaN -0E+3 -> 0
369samq1719 samequantum sNaN 0E-3 -> 0
370samq1720 samequantum sNaN 0 -> 0
371samq1721 samequantum sNaN 0E+3 -> 0
372samq1722 samequantum sNaN 7E-3 -> 0
373samq1723 samequantum sNaN 7 -> 0
374samq1724 samequantum sNaN 7E+3 -> 0
375samq1725 samequantum sNaN sNaN -> 1
376-- noisy NaNs
377samq1730 samequantum sNaN3 sNaN3 -> 1
378samq1731 samequantum sNaN3 sNaN4 -> 1
379samq1732 samequantum NaN3 NaN3 -> 1
380samq1733 samequantum NaN3 NaN4 -> 1
381samq1734 samequantum sNaN3 3 -> 0
382samq1735 samequantum NaN3 3 -> 0
383samq1736 samequantum 4 sNaN4 -> 0
384samq1737 samequantum 3 NaN3 -> 0
385samq1738 samequantum Inf sNaN4 -> 0
386samq1739 samequantum -Inf NaN3 -> 0
387
388
389