17db96d56Sopenharmony_ci------------------------------------------------------------------------ 27db96d56Sopenharmony_ci-- comparetotal.decTest -- decimal comparison using total ordering -- 37db96d56Sopenharmony_ci-- Copyright (c) IBM Corporation, 1981, 2008. All rights reserved. -- 47db96d56Sopenharmony_ci------------------------------------------------------------------------ 57db96d56Sopenharmony_ci-- Please see the document "General Decimal Arithmetic Testcases" -- 67db96d56Sopenharmony_ci-- at http://www2.hursley.ibm.com/decimal for the description of -- 77db96d56Sopenharmony_ci-- these testcases. -- 87db96d56Sopenharmony_ci-- -- 97db96d56Sopenharmony_ci-- These testcases are experimental ('beta' versions), and they -- 107db96d56Sopenharmony_ci-- may contain errors. They are offered on an as-is basis. In -- 117db96d56Sopenharmony_ci-- particular, achieving the same results as the tests here is not -- 127db96d56Sopenharmony_ci-- a guarantee that an implementation complies with any Standard -- 137db96d56Sopenharmony_ci-- or specification. The tests are not exhaustive. -- 147db96d56Sopenharmony_ci-- -- 157db96d56Sopenharmony_ci-- Please send comments, suggestions, and corrections to the author: -- 167db96d56Sopenharmony_ci-- Mike Cowlishaw, IBM Fellow -- 177db96d56Sopenharmony_ci-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK -- 187db96d56Sopenharmony_ci-- mfc@uk.ibm.com -- 197db96d56Sopenharmony_ci------------------------------------------------------------------------ 207db96d56Sopenharmony_civersion: 2.59 217db96d56Sopenharmony_ci 227db96d56Sopenharmony_ci-- Note that we cannot assume add/subtract tests cover paths adequately, 237db96d56Sopenharmony_ci-- here, because the code might be quite different (comparison cannot 247db96d56Sopenharmony_ci-- overflow or underflow, so actual subtractions are not necessary). 257db96d56Sopenharmony_ci-- Similarly, comparetotal will have some radically different paths 267db96d56Sopenharmony_ci-- than compare. 277db96d56Sopenharmony_ci 287db96d56Sopenharmony_ciextended: 1 297db96d56Sopenharmony_ciprecision: 16 307db96d56Sopenharmony_cirounding: half_up 317db96d56Sopenharmony_cimaxExponent: 384 327db96d56Sopenharmony_ciminExponent: -383 337db96d56Sopenharmony_ci 347db96d56Sopenharmony_ci-- sanity checks 357db96d56Sopenharmony_cicotx001 comparetotal -2 -2 -> 0 367db96d56Sopenharmony_cicotx002 comparetotal -2 -1 -> -1 377db96d56Sopenharmony_cicotx003 comparetotal -2 0 -> -1 387db96d56Sopenharmony_cicotx004 comparetotal -2 1 -> -1 397db96d56Sopenharmony_cicotx005 comparetotal -2 2 -> -1 407db96d56Sopenharmony_cicotx006 comparetotal -1 -2 -> 1 417db96d56Sopenharmony_cicotx007 comparetotal -1 -1 -> 0 427db96d56Sopenharmony_cicotx008 comparetotal -1 0 -> -1 437db96d56Sopenharmony_cicotx009 comparetotal -1 1 -> -1 447db96d56Sopenharmony_cicotx010 comparetotal -1 2 -> -1 457db96d56Sopenharmony_cicotx011 comparetotal 0 -2 -> 1 467db96d56Sopenharmony_cicotx012 comparetotal 0 -1 -> 1 477db96d56Sopenharmony_cicotx013 comparetotal 0 0 -> 0 487db96d56Sopenharmony_cicotx014 comparetotal 0 1 -> -1 497db96d56Sopenharmony_cicotx015 comparetotal 0 2 -> -1 507db96d56Sopenharmony_cicotx016 comparetotal 1 -2 -> 1 517db96d56Sopenharmony_cicotx017 comparetotal 1 -1 -> 1 527db96d56Sopenharmony_cicotx018 comparetotal 1 0 -> 1 537db96d56Sopenharmony_cicotx019 comparetotal 1 1 -> 0 547db96d56Sopenharmony_cicotx020 comparetotal 1 2 -> -1 557db96d56Sopenharmony_cicotx021 comparetotal 2 -2 -> 1 567db96d56Sopenharmony_cicotx022 comparetotal 2 -1 -> 1 577db96d56Sopenharmony_cicotx023 comparetotal 2 0 -> 1 587db96d56Sopenharmony_cicotx025 comparetotal 2 1 -> 1 597db96d56Sopenharmony_cicotx026 comparetotal 2 2 -> 0 607db96d56Sopenharmony_ci 617db96d56Sopenharmony_cicotx031 comparetotal -20 -20 -> 0 627db96d56Sopenharmony_cicotx032 comparetotal -20 -10 -> -1 637db96d56Sopenharmony_cicotx033 comparetotal -20 00 -> -1 647db96d56Sopenharmony_cicotx034 comparetotal -20 10 -> -1 657db96d56Sopenharmony_cicotx035 comparetotal -20 20 -> -1 667db96d56Sopenharmony_cicotx036 comparetotal -10 -20 -> 1 677db96d56Sopenharmony_cicotx037 comparetotal -10 -10 -> 0 687db96d56Sopenharmony_cicotx038 comparetotal -10 00 -> -1 697db96d56Sopenharmony_cicotx039 comparetotal -10 10 -> -1 707db96d56Sopenharmony_cicotx040 comparetotal -10 20 -> -1 717db96d56Sopenharmony_cicotx041 comparetotal 00 -20 -> 1 727db96d56Sopenharmony_cicotx042 comparetotal 00 -10 -> 1 737db96d56Sopenharmony_cicotx043 comparetotal 00 00 -> 0 747db96d56Sopenharmony_cicotx044 comparetotal 00 10 -> -1 757db96d56Sopenharmony_cicotx045 comparetotal 00 20 -> -1 767db96d56Sopenharmony_cicotx046 comparetotal 10 -20 -> 1 777db96d56Sopenharmony_cicotx047 comparetotal 10 -10 -> 1 787db96d56Sopenharmony_cicotx048 comparetotal 10 00 -> 1 797db96d56Sopenharmony_cicotx049 comparetotal 10 10 -> 0 807db96d56Sopenharmony_cicotx050 comparetotal 10 20 -> -1 817db96d56Sopenharmony_cicotx051 comparetotal 20 -20 -> 1 827db96d56Sopenharmony_cicotx052 comparetotal 20 -10 -> 1 837db96d56Sopenharmony_cicotx053 comparetotal 20 00 -> 1 847db96d56Sopenharmony_cicotx055 comparetotal 20 10 -> 1 857db96d56Sopenharmony_cicotx056 comparetotal 20 20 -> 0 867db96d56Sopenharmony_ci 877db96d56Sopenharmony_cicotx061 comparetotal -2.0 -2.0 -> 0 887db96d56Sopenharmony_cicotx062 comparetotal -2.0 -1.0 -> -1 897db96d56Sopenharmony_cicotx063 comparetotal -2.0 0.0 -> -1 907db96d56Sopenharmony_cicotx064 comparetotal -2.0 1.0 -> -1 917db96d56Sopenharmony_cicotx065 comparetotal -2.0 2.0 -> -1 927db96d56Sopenharmony_cicotx066 comparetotal -1.0 -2.0 -> 1 937db96d56Sopenharmony_cicotx067 comparetotal -1.0 -1.0 -> 0 947db96d56Sopenharmony_cicotx068 comparetotal -1.0 0.0 -> -1 957db96d56Sopenharmony_cicotx069 comparetotal -1.0 1.0 -> -1 967db96d56Sopenharmony_cicotx070 comparetotal -1.0 2.0 -> -1 977db96d56Sopenharmony_cicotx071 comparetotal 0.0 -2.0 -> 1 987db96d56Sopenharmony_cicotx072 comparetotal 0.0 -1.0 -> 1 997db96d56Sopenharmony_cicotx073 comparetotal 0.0 0.0 -> 0 1007db96d56Sopenharmony_cicotx074 comparetotal 0.0 1.0 -> -1 1017db96d56Sopenharmony_cicotx075 comparetotal 0.0 2.0 -> -1 1027db96d56Sopenharmony_cicotx076 comparetotal 1.0 -2.0 -> 1 1037db96d56Sopenharmony_cicotx077 comparetotal 1.0 -1.0 -> 1 1047db96d56Sopenharmony_cicotx078 comparetotal 1.0 0.0 -> 1 1057db96d56Sopenharmony_cicotx079 comparetotal 1.0 1.0 -> 0 1067db96d56Sopenharmony_cicotx080 comparetotal 1.0 2.0 -> -1 1077db96d56Sopenharmony_cicotx081 comparetotal 2.0 -2.0 -> 1 1087db96d56Sopenharmony_cicotx082 comparetotal 2.0 -1.0 -> 1 1097db96d56Sopenharmony_cicotx083 comparetotal 2.0 0.0 -> 1 1107db96d56Sopenharmony_cicotx085 comparetotal 2.0 1.0 -> 1 1117db96d56Sopenharmony_cicotx086 comparetotal 2.0 2.0 -> 0 1127db96d56Sopenharmony_ci 1137db96d56Sopenharmony_ci-- now some cases which might overflow if subtract were used 1147db96d56Sopenharmony_cimaxexponent: 999999999 1157db96d56Sopenharmony_ciminexponent: -999999999 1167db96d56Sopenharmony_cicotx090 comparetotal 9.99999999E+999999999 9.99999999E+999999999 -> 0 1177db96d56Sopenharmony_cicotx091 comparetotal -9.99999999E+999999999 9.99999999E+999999999 -> -1 1187db96d56Sopenharmony_cicotx092 comparetotal 9.99999999E+999999999 -9.99999999E+999999999 -> 1 1197db96d56Sopenharmony_cicotx093 comparetotal -9.99999999E+999999999 -9.99999999E+999999999 -> 0 1207db96d56Sopenharmony_ci 1217db96d56Sopenharmony_ci-- Examples 1227db96d56Sopenharmony_cicotx094 comparetotal 12.73 127.9 -> -1 1237db96d56Sopenharmony_cicotx095 comparetotal -127 12 -> -1 1247db96d56Sopenharmony_cicotx096 comparetotal 12.30 12.3 -> -1 1257db96d56Sopenharmony_cicotx097 comparetotal 12.30 12.30 -> 0 1267db96d56Sopenharmony_cicotx098 comparetotal 12.3 12.300 -> 1 1277db96d56Sopenharmony_cicotx099 comparetotal 12.3 NaN -> -1 1287db96d56Sopenharmony_ci 1297db96d56Sopenharmony_ci-- some differing length/exponent cases 1307db96d56Sopenharmony_ci-- in this first group, compare would compare all equal 1317db96d56Sopenharmony_cicotx100 comparetotal 7.0 7.0 -> 0 1327db96d56Sopenharmony_cicotx101 comparetotal 7.0 7 -> -1 1337db96d56Sopenharmony_cicotx102 comparetotal 7 7.0 -> 1 1347db96d56Sopenharmony_cicotx103 comparetotal 7E+0 7.0 -> 1 1357db96d56Sopenharmony_cicotx104 comparetotal 70E-1 7.0 -> 0 1367db96d56Sopenharmony_cicotx105 comparetotal 0.7E+1 7 -> 0 1377db96d56Sopenharmony_cicotx106 comparetotal 70E-1 7 -> -1 1387db96d56Sopenharmony_cicotx107 comparetotal 7.0 7E+0 -> -1 1397db96d56Sopenharmony_cicotx108 comparetotal 7.0 70E-1 -> 0 1407db96d56Sopenharmony_cicotx109 comparetotal 7 0.7E+1 -> 0 1417db96d56Sopenharmony_cicotx110 comparetotal 7 70E-1 -> 1 1427db96d56Sopenharmony_ci 1437db96d56Sopenharmony_cicotx120 comparetotal 8.0 7.0 -> 1 1447db96d56Sopenharmony_cicotx121 comparetotal 8.0 7 -> 1 1457db96d56Sopenharmony_cicotx122 comparetotal 8 7.0 -> 1 1467db96d56Sopenharmony_cicotx123 comparetotal 8E+0 7.0 -> 1 1477db96d56Sopenharmony_cicotx124 comparetotal 80E-1 7.0 -> 1 1487db96d56Sopenharmony_cicotx125 comparetotal 0.8E+1 7 -> 1 1497db96d56Sopenharmony_cicotx126 comparetotal 80E-1 7 -> 1 1507db96d56Sopenharmony_cicotx127 comparetotal 8.0 7E+0 -> 1 1517db96d56Sopenharmony_cicotx128 comparetotal 8.0 70E-1 -> 1 1527db96d56Sopenharmony_cicotx129 comparetotal 8 0.7E+1 -> 1 1537db96d56Sopenharmony_cicotx130 comparetotal 8 70E-1 -> 1 1547db96d56Sopenharmony_ci 1557db96d56Sopenharmony_cicotx140 comparetotal 8.0 9.0 -> -1 1567db96d56Sopenharmony_cicotx141 comparetotal 8.0 9 -> -1 1577db96d56Sopenharmony_cicotx142 comparetotal 8 9.0 -> -1 1587db96d56Sopenharmony_cicotx143 comparetotal 8E+0 9.0 -> -1 1597db96d56Sopenharmony_cicotx144 comparetotal 80E-1 9.0 -> -1 1607db96d56Sopenharmony_cicotx145 comparetotal 0.8E+1 9 -> -1 1617db96d56Sopenharmony_cicotx146 comparetotal 80E-1 9 -> -1 1627db96d56Sopenharmony_cicotx147 comparetotal 8.0 9E+0 -> -1 1637db96d56Sopenharmony_cicotx148 comparetotal 8.0 90E-1 -> -1 1647db96d56Sopenharmony_cicotx149 comparetotal 8 0.9E+1 -> -1 1657db96d56Sopenharmony_cicotx150 comparetotal 8 90E-1 -> -1 1667db96d56Sopenharmony_ci 1677db96d56Sopenharmony_ci-- and again, with sign changes -+ .. 1687db96d56Sopenharmony_cicotx200 comparetotal -7.0 7.0 -> -1 1697db96d56Sopenharmony_cicotx201 comparetotal -7.0 7 -> -1 1707db96d56Sopenharmony_cicotx202 comparetotal -7 7.0 -> -1 1717db96d56Sopenharmony_cicotx203 comparetotal -7E+0 7.0 -> -1 1727db96d56Sopenharmony_cicotx204 comparetotal -70E-1 7.0 -> -1 1737db96d56Sopenharmony_cicotx205 comparetotal -0.7E+1 7 -> -1 1747db96d56Sopenharmony_cicotx206 comparetotal -70E-1 7 -> -1 1757db96d56Sopenharmony_cicotx207 comparetotal -7.0 7E+0 -> -1 1767db96d56Sopenharmony_cicotx208 comparetotal -7.0 70E-1 -> -1 1777db96d56Sopenharmony_cicotx209 comparetotal -7 0.7E+1 -> -1 1787db96d56Sopenharmony_cicotx210 comparetotal -7 70E-1 -> -1 1797db96d56Sopenharmony_ci 1807db96d56Sopenharmony_cicotx220 comparetotal -8.0 7.0 -> -1 1817db96d56Sopenharmony_cicotx221 comparetotal -8.0 7 -> -1 1827db96d56Sopenharmony_cicotx222 comparetotal -8 7.0 -> -1 1837db96d56Sopenharmony_cicotx223 comparetotal -8E+0 7.0 -> -1 1847db96d56Sopenharmony_cicotx224 comparetotal -80E-1 7.0 -> -1 1857db96d56Sopenharmony_cicotx225 comparetotal -0.8E+1 7 -> -1 1867db96d56Sopenharmony_cicotx226 comparetotal -80E-1 7 -> -1 1877db96d56Sopenharmony_cicotx227 comparetotal -8.0 7E+0 -> -1 1887db96d56Sopenharmony_cicotx228 comparetotal -8.0 70E-1 -> -1 1897db96d56Sopenharmony_cicotx229 comparetotal -8 0.7E+1 -> -1 1907db96d56Sopenharmony_cicotx230 comparetotal -8 70E-1 -> -1 1917db96d56Sopenharmony_ci 1927db96d56Sopenharmony_cicotx240 comparetotal -8.0 9.0 -> -1 1937db96d56Sopenharmony_cicotx241 comparetotal -8.0 9 -> -1 1947db96d56Sopenharmony_cicotx242 comparetotal -8 9.0 -> -1 1957db96d56Sopenharmony_cicotx243 comparetotal -8E+0 9.0 -> -1 1967db96d56Sopenharmony_cicotx244 comparetotal -80E-1 9.0 -> -1 1977db96d56Sopenharmony_cicotx245 comparetotal -0.8E+1 9 -> -1 1987db96d56Sopenharmony_cicotx246 comparetotal -80E-1 9 -> -1 1997db96d56Sopenharmony_cicotx247 comparetotal -8.0 9E+0 -> -1 2007db96d56Sopenharmony_cicotx248 comparetotal -8.0 90E-1 -> -1 2017db96d56Sopenharmony_cicotx249 comparetotal -8 0.9E+1 -> -1 2027db96d56Sopenharmony_cicotx250 comparetotal -8 90E-1 -> -1 2037db96d56Sopenharmony_ci 2047db96d56Sopenharmony_ci-- and again, with sign changes +- .. 2057db96d56Sopenharmony_cicotx300 comparetotal 7.0 -7.0 -> 1 2067db96d56Sopenharmony_cicotx301 comparetotal 7.0 -7 -> 1 2077db96d56Sopenharmony_cicotx302 comparetotal 7 -7.0 -> 1 2087db96d56Sopenharmony_cicotx303 comparetotal 7E+0 -7.0 -> 1 2097db96d56Sopenharmony_cicotx304 comparetotal 70E-1 -7.0 -> 1 2107db96d56Sopenharmony_cicotx305 comparetotal .7E+1 -7 -> 1 2117db96d56Sopenharmony_cicotx306 comparetotal 70E-1 -7 -> 1 2127db96d56Sopenharmony_cicotx307 comparetotal 7.0 -7E+0 -> 1 2137db96d56Sopenharmony_cicotx308 comparetotal 7.0 -70E-1 -> 1 2147db96d56Sopenharmony_cicotx309 comparetotal 7 -.7E+1 -> 1 2157db96d56Sopenharmony_cicotx310 comparetotal 7 -70E-1 -> 1 2167db96d56Sopenharmony_ci 2177db96d56Sopenharmony_cicotx320 comparetotal 8.0 -7.0 -> 1 2187db96d56Sopenharmony_cicotx321 comparetotal 8.0 -7 -> 1 2197db96d56Sopenharmony_cicotx322 comparetotal 8 -7.0 -> 1 2207db96d56Sopenharmony_cicotx323 comparetotal 8E+0 -7.0 -> 1 2217db96d56Sopenharmony_cicotx324 comparetotal 80E-1 -7.0 -> 1 2227db96d56Sopenharmony_cicotx325 comparetotal .8E+1 -7 -> 1 2237db96d56Sopenharmony_cicotx326 comparetotal 80E-1 -7 -> 1 2247db96d56Sopenharmony_cicotx327 comparetotal 8.0 -7E+0 -> 1 2257db96d56Sopenharmony_cicotx328 comparetotal 8.0 -70E-1 -> 1 2267db96d56Sopenharmony_cicotx329 comparetotal 8 -.7E+1 -> 1 2277db96d56Sopenharmony_cicotx330 comparetotal 8 -70E-1 -> 1 2287db96d56Sopenharmony_ci 2297db96d56Sopenharmony_cicotx340 comparetotal 8.0 -9.0 -> 1 2307db96d56Sopenharmony_cicotx341 comparetotal 8.0 -9 -> 1 2317db96d56Sopenharmony_cicotx342 comparetotal 8 -9.0 -> 1 2327db96d56Sopenharmony_cicotx343 comparetotal 8E+0 -9.0 -> 1 2337db96d56Sopenharmony_cicotx344 comparetotal 80E-1 -9.0 -> 1 2347db96d56Sopenharmony_cicotx345 comparetotal .8E+1 -9 -> 1 2357db96d56Sopenharmony_cicotx346 comparetotal 80E-1 -9 -> 1 2367db96d56Sopenharmony_cicotx347 comparetotal 8.0 -9E+0 -> 1 2377db96d56Sopenharmony_cicotx348 comparetotal 8.0 -90E-1 -> 1 2387db96d56Sopenharmony_cicotx349 comparetotal 8 -.9E+1 -> 1 2397db96d56Sopenharmony_cicotx350 comparetotal 8 -90E-1 -> 1 2407db96d56Sopenharmony_ci 2417db96d56Sopenharmony_ci-- and again, with sign changes -- .. 2427db96d56Sopenharmony_cicotx400 comparetotal -7.0 -7.0 -> 0 2437db96d56Sopenharmony_cicotx401 comparetotal -7.0 -7 -> 1 2447db96d56Sopenharmony_cicotx402 comparetotal -7 -7.0 -> -1 2457db96d56Sopenharmony_cicotx403 comparetotal -7E+0 -7.0 -> -1 2467db96d56Sopenharmony_cicotx404 comparetotal -70E-1 -7.0 -> 0 2477db96d56Sopenharmony_cicotx405 comparetotal -.7E+1 -7 -> 0 2487db96d56Sopenharmony_cicotx406 comparetotal -70E-1 -7 -> 1 2497db96d56Sopenharmony_cicotx407 comparetotal -7.0 -7E+0 -> 1 2507db96d56Sopenharmony_cicotx408 comparetotal -7.0 -70E-1 -> 0 2517db96d56Sopenharmony_cicotx409 comparetotal -7 -.7E+1 -> 0 2527db96d56Sopenharmony_cicotx410 comparetotal -7 -70E-1 -> -1 2537db96d56Sopenharmony_ci 2547db96d56Sopenharmony_cicotx420 comparetotal -8.0 -7.0 -> -1 2557db96d56Sopenharmony_cicotx421 comparetotal -8.0 -7 -> -1 2567db96d56Sopenharmony_cicotx422 comparetotal -8 -7.0 -> -1 2577db96d56Sopenharmony_cicotx423 comparetotal -8E+0 -7.0 -> -1 2587db96d56Sopenharmony_cicotx424 comparetotal -80E-1 -7.0 -> -1 2597db96d56Sopenharmony_cicotx425 comparetotal -.8E+1 -7 -> -1 2607db96d56Sopenharmony_cicotx426 comparetotal -80E-1 -7 -> -1 2617db96d56Sopenharmony_cicotx427 comparetotal -8.0 -7E+0 -> -1 2627db96d56Sopenharmony_cicotx428 comparetotal -8.0 -70E-1 -> -1 2637db96d56Sopenharmony_cicotx429 comparetotal -8 -.7E+1 -> -1 2647db96d56Sopenharmony_cicotx430 comparetotal -8 -70E-1 -> -1 2657db96d56Sopenharmony_ci 2667db96d56Sopenharmony_cicotx440 comparetotal -8.0 -9.0 -> 1 2677db96d56Sopenharmony_cicotx441 comparetotal -8.0 -9 -> 1 2687db96d56Sopenharmony_cicotx442 comparetotal -8 -9.0 -> 1 2697db96d56Sopenharmony_cicotx443 comparetotal -8E+0 -9.0 -> 1 2707db96d56Sopenharmony_cicotx444 comparetotal -80E-1 -9.0 -> 1 2717db96d56Sopenharmony_cicotx445 comparetotal -.8E+1 -9 -> 1 2727db96d56Sopenharmony_cicotx446 comparetotal -80E-1 -9 -> 1 2737db96d56Sopenharmony_cicotx447 comparetotal -8.0 -9E+0 -> 1 2747db96d56Sopenharmony_cicotx448 comparetotal -8.0 -90E-1 -> 1 2757db96d56Sopenharmony_cicotx449 comparetotal -8 -.9E+1 -> 1 2767db96d56Sopenharmony_cicotx450 comparetotal -8 -90E-1 -> 1 2777db96d56Sopenharmony_ci 2787db96d56Sopenharmony_ci 2797db96d56Sopenharmony_ci-- testcases that subtract to lots of zeros at boundaries [pgr] 2807db96d56Sopenharmony_ciprecision: 40 2817db96d56Sopenharmony_cicotx470 comparetotal 123.4560000000000000E789 123.456E789 -> -1 2827db96d56Sopenharmony_cicotx471 comparetotal 123.456000000000000E-89 123.456E-89 -> -1 2837db96d56Sopenharmony_cicotx472 comparetotal 123.45600000000000E789 123.456E789 -> -1 2847db96d56Sopenharmony_cicotx473 comparetotal 123.4560000000000E-89 123.456E-89 -> -1 2857db96d56Sopenharmony_cicotx474 comparetotal 123.456000000000E789 123.456E789 -> -1 2867db96d56Sopenharmony_cicotx475 comparetotal 123.45600000000E-89 123.456E-89 -> -1 2877db96d56Sopenharmony_cicotx476 comparetotal 123.4560000000E789 123.456E789 -> -1 2887db96d56Sopenharmony_cicotx477 comparetotal 123.456000000E-89 123.456E-89 -> -1 2897db96d56Sopenharmony_cicotx478 comparetotal 123.45600000E789 123.456E789 -> -1 2907db96d56Sopenharmony_cicotx479 comparetotal 123.4560000E-89 123.456E-89 -> -1 2917db96d56Sopenharmony_cicotx480 comparetotal 123.456000E789 123.456E789 -> -1 2927db96d56Sopenharmony_cicotx481 comparetotal 123.45600E-89 123.456E-89 -> -1 2937db96d56Sopenharmony_cicotx482 comparetotal 123.4560E789 123.456E789 -> -1 2947db96d56Sopenharmony_cicotx483 comparetotal 123.456E-89 123.456E-89 -> 0 2957db96d56Sopenharmony_cicotx484 comparetotal 123.456E-89 123.4560000000000000E-89 -> 1 2967db96d56Sopenharmony_cicotx485 comparetotal 123.456E789 123.456000000000000E789 -> 1 2977db96d56Sopenharmony_cicotx486 comparetotal 123.456E-89 123.45600000000000E-89 -> 1 2987db96d56Sopenharmony_cicotx487 comparetotal 123.456E789 123.4560000000000E789 -> 1 2997db96d56Sopenharmony_cicotx488 comparetotal 123.456E-89 123.456000000000E-89 -> 1 3007db96d56Sopenharmony_cicotx489 comparetotal 123.456E789 123.45600000000E789 -> 1 3017db96d56Sopenharmony_cicotx490 comparetotal 123.456E-89 123.4560000000E-89 -> 1 3027db96d56Sopenharmony_cicotx491 comparetotal 123.456E789 123.456000000E789 -> 1 3037db96d56Sopenharmony_cicotx492 comparetotal 123.456E-89 123.45600000E-89 -> 1 3047db96d56Sopenharmony_cicotx493 comparetotal 123.456E789 123.4560000E789 -> 1 3057db96d56Sopenharmony_cicotx494 comparetotal 123.456E-89 123.456000E-89 -> 1 3067db96d56Sopenharmony_cicotx495 comparetotal 123.456E789 123.45600E789 -> 1 3077db96d56Sopenharmony_cicotx496 comparetotal 123.456E-89 123.4560E-89 -> 1 3087db96d56Sopenharmony_cicotx497 comparetotal 123.456E789 123.456E789 -> 0 3097db96d56Sopenharmony_ci 3107db96d56Sopenharmony_ci-- wide-ranging, around precision; signs equal 3117db96d56Sopenharmony_ciprecision: 9 3127db96d56Sopenharmony_cicotx500 comparetotal 1 1E-15 -> 1 3137db96d56Sopenharmony_cicotx501 comparetotal 1 1E-14 -> 1 3147db96d56Sopenharmony_cicotx502 comparetotal 1 1E-13 -> 1 3157db96d56Sopenharmony_cicotx503 comparetotal 1 1E-12 -> 1 3167db96d56Sopenharmony_cicotx504 comparetotal 1 1E-11 -> 1 3177db96d56Sopenharmony_cicotx505 comparetotal 1 1E-10 -> 1 3187db96d56Sopenharmony_cicotx506 comparetotal 1 1E-9 -> 1 3197db96d56Sopenharmony_cicotx507 comparetotal 1 1E-8 -> 1 3207db96d56Sopenharmony_cicotx508 comparetotal 1 1E-7 -> 1 3217db96d56Sopenharmony_cicotx509 comparetotal 1 1E-6 -> 1 3227db96d56Sopenharmony_cicotx510 comparetotal 1 1E-5 -> 1 3237db96d56Sopenharmony_cicotx511 comparetotal 1 1E-4 -> 1 3247db96d56Sopenharmony_cicotx512 comparetotal 1 1E-3 -> 1 3257db96d56Sopenharmony_cicotx513 comparetotal 1 1E-2 -> 1 3267db96d56Sopenharmony_cicotx514 comparetotal 1 1E-1 -> 1 3277db96d56Sopenharmony_cicotx515 comparetotal 1 1E-0 -> 0 3287db96d56Sopenharmony_cicotx516 comparetotal 1 1E+1 -> -1 3297db96d56Sopenharmony_cicotx517 comparetotal 1 1E+2 -> -1 3307db96d56Sopenharmony_cicotx518 comparetotal 1 1E+3 -> -1 3317db96d56Sopenharmony_cicotx519 comparetotal 1 1E+4 -> -1 3327db96d56Sopenharmony_cicotx521 comparetotal 1 1E+5 -> -1 3337db96d56Sopenharmony_cicotx522 comparetotal 1 1E+6 -> -1 3347db96d56Sopenharmony_cicotx523 comparetotal 1 1E+7 -> -1 3357db96d56Sopenharmony_cicotx524 comparetotal 1 1E+8 -> -1 3367db96d56Sopenharmony_cicotx525 comparetotal 1 1E+9 -> -1 3377db96d56Sopenharmony_cicotx526 comparetotal 1 1E+10 -> -1 3387db96d56Sopenharmony_cicotx527 comparetotal 1 1E+11 -> -1 3397db96d56Sopenharmony_cicotx528 comparetotal 1 1E+12 -> -1 3407db96d56Sopenharmony_cicotx529 comparetotal 1 1E+13 -> -1 3417db96d56Sopenharmony_cicotx530 comparetotal 1 1E+14 -> -1 3427db96d56Sopenharmony_cicotx531 comparetotal 1 1E+15 -> -1 3437db96d56Sopenharmony_ci-- LR swap 3447db96d56Sopenharmony_cicotx540 comparetotal 1E-15 1 -> -1 3457db96d56Sopenharmony_cicotx541 comparetotal 1E-14 1 -> -1 3467db96d56Sopenharmony_cicotx542 comparetotal 1E-13 1 -> -1 3477db96d56Sopenharmony_cicotx543 comparetotal 1E-12 1 -> -1 3487db96d56Sopenharmony_cicotx544 comparetotal 1E-11 1 -> -1 3497db96d56Sopenharmony_cicotx545 comparetotal 1E-10 1 -> -1 3507db96d56Sopenharmony_cicotx546 comparetotal 1E-9 1 -> -1 3517db96d56Sopenharmony_cicotx547 comparetotal 1E-8 1 -> -1 3527db96d56Sopenharmony_cicotx548 comparetotal 1E-7 1 -> -1 3537db96d56Sopenharmony_cicotx549 comparetotal 1E-6 1 -> -1 3547db96d56Sopenharmony_cicotx550 comparetotal 1E-5 1 -> -1 3557db96d56Sopenharmony_cicotx551 comparetotal 1E-4 1 -> -1 3567db96d56Sopenharmony_cicotx552 comparetotal 1E-3 1 -> -1 3577db96d56Sopenharmony_cicotx553 comparetotal 1E-2 1 -> -1 3587db96d56Sopenharmony_cicotx554 comparetotal 1E-1 1 -> -1 3597db96d56Sopenharmony_cicotx555 comparetotal 1E-0 1 -> 0 3607db96d56Sopenharmony_cicotx556 comparetotal 1E+1 1 -> 1 3617db96d56Sopenharmony_cicotx557 comparetotal 1E+2 1 -> 1 3627db96d56Sopenharmony_cicotx558 comparetotal 1E+3 1 -> 1 3637db96d56Sopenharmony_cicotx559 comparetotal 1E+4 1 -> 1 3647db96d56Sopenharmony_cicotx561 comparetotal 1E+5 1 -> 1 3657db96d56Sopenharmony_cicotx562 comparetotal 1E+6 1 -> 1 3667db96d56Sopenharmony_cicotx563 comparetotal 1E+7 1 -> 1 3677db96d56Sopenharmony_cicotx564 comparetotal 1E+8 1 -> 1 3687db96d56Sopenharmony_cicotx565 comparetotal 1E+9 1 -> 1 3697db96d56Sopenharmony_cicotx566 comparetotal 1E+10 1 -> 1 3707db96d56Sopenharmony_cicotx567 comparetotal 1E+11 1 -> 1 3717db96d56Sopenharmony_cicotx568 comparetotal 1E+12 1 -> 1 3727db96d56Sopenharmony_cicotx569 comparetotal 1E+13 1 -> 1 3737db96d56Sopenharmony_cicotx570 comparetotal 1E+14 1 -> 1 3747db96d56Sopenharmony_cicotx571 comparetotal 1E+15 1 -> 1 3757db96d56Sopenharmony_ci-- similar with an useful coefficient, one side only 3767db96d56Sopenharmony_cicotx580 comparetotal 0.000000987654321 1E-15 -> 1 3777db96d56Sopenharmony_cicotx581 comparetotal 0.000000987654321 1E-14 -> 1 3787db96d56Sopenharmony_cicotx582 comparetotal 0.000000987654321 1E-13 -> 1 3797db96d56Sopenharmony_cicotx583 comparetotal 0.000000987654321 1E-12 -> 1 3807db96d56Sopenharmony_cicotx584 comparetotal 0.000000987654321 1E-11 -> 1 3817db96d56Sopenharmony_cicotx585 comparetotal 0.000000987654321 1E-10 -> 1 3827db96d56Sopenharmony_cicotx586 comparetotal 0.000000987654321 1E-9 -> 1 3837db96d56Sopenharmony_cicotx587 comparetotal 0.000000987654321 1E-8 -> 1 3847db96d56Sopenharmony_cicotx588 comparetotal 0.000000987654321 1E-7 -> 1 3857db96d56Sopenharmony_cicotx589 comparetotal 0.000000987654321 1E-6 -> -1 3867db96d56Sopenharmony_cicotx590 comparetotal 0.000000987654321 1E-5 -> -1 3877db96d56Sopenharmony_cicotx591 comparetotal 0.000000987654321 1E-4 -> -1 3887db96d56Sopenharmony_cicotx592 comparetotal 0.000000987654321 1E-3 -> -1 3897db96d56Sopenharmony_cicotx593 comparetotal 0.000000987654321 1E-2 -> -1 3907db96d56Sopenharmony_cicotx594 comparetotal 0.000000987654321 1E-1 -> -1 3917db96d56Sopenharmony_cicotx595 comparetotal 0.000000987654321 1E-0 -> -1 3927db96d56Sopenharmony_cicotx596 comparetotal 0.000000987654321 1E+1 -> -1 3937db96d56Sopenharmony_cicotx597 comparetotal 0.000000987654321 1E+2 -> -1 3947db96d56Sopenharmony_cicotx598 comparetotal 0.000000987654321 1E+3 -> -1 3957db96d56Sopenharmony_cicotx599 comparetotal 0.000000987654321 1E+4 -> -1 3967db96d56Sopenharmony_ci 3977db96d56Sopenharmony_ci-- check some unit-y traps 3987db96d56Sopenharmony_ciprecision: 20 3997db96d56Sopenharmony_cicotx600 comparetotal 12 12.2345 -> -1 4007db96d56Sopenharmony_cicotx601 comparetotal 12.0 12.2345 -> -1 4017db96d56Sopenharmony_cicotx602 comparetotal 12.00 12.2345 -> -1 4027db96d56Sopenharmony_cicotx603 comparetotal 12.000 12.2345 -> -1 4037db96d56Sopenharmony_cicotx604 comparetotal 12.0000 12.2345 -> -1 4047db96d56Sopenharmony_cicotx605 comparetotal 12.00000 12.2345 -> -1 4057db96d56Sopenharmony_cicotx606 comparetotal 12.000000 12.2345 -> -1 4067db96d56Sopenharmony_cicotx607 comparetotal 12.0000000 12.2345 -> -1 4077db96d56Sopenharmony_cicotx608 comparetotal 12.00000000 12.2345 -> -1 4087db96d56Sopenharmony_cicotx609 comparetotal 12.000000000 12.2345 -> -1 4097db96d56Sopenharmony_cicotx610 comparetotal 12.1234 12 -> 1 4107db96d56Sopenharmony_cicotx611 comparetotal 12.1234 12.0 -> 1 4117db96d56Sopenharmony_cicotx612 comparetotal 12.1234 12.00 -> 1 4127db96d56Sopenharmony_cicotx613 comparetotal 12.1234 12.000 -> 1 4137db96d56Sopenharmony_cicotx614 comparetotal 12.1234 12.0000 -> 1 4147db96d56Sopenharmony_cicotx615 comparetotal 12.1234 12.00000 -> 1 4157db96d56Sopenharmony_cicotx616 comparetotal 12.1234 12.000000 -> 1 4167db96d56Sopenharmony_cicotx617 comparetotal 12.1234 12.0000000 -> 1 4177db96d56Sopenharmony_cicotx618 comparetotal 12.1234 12.00000000 -> 1 4187db96d56Sopenharmony_cicotx619 comparetotal 12.1234 12.000000000 -> 1 4197db96d56Sopenharmony_cicotx620 comparetotal -12 -12.2345 -> 1 4207db96d56Sopenharmony_cicotx621 comparetotal -12.0 -12.2345 -> 1 4217db96d56Sopenharmony_cicotx622 comparetotal -12.00 -12.2345 -> 1 4227db96d56Sopenharmony_cicotx623 comparetotal -12.000 -12.2345 -> 1 4237db96d56Sopenharmony_cicotx624 comparetotal -12.0000 -12.2345 -> 1 4247db96d56Sopenharmony_cicotx625 comparetotal -12.00000 -12.2345 -> 1 4257db96d56Sopenharmony_cicotx626 comparetotal -12.000000 -12.2345 -> 1 4267db96d56Sopenharmony_cicotx627 comparetotal -12.0000000 -12.2345 -> 1 4277db96d56Sopenharmony_cicotx628 comparetotal -12.00000000 -12.2345 -> 1 4287db96d56Sopenharmony_cicotx629 comparetotal -12.000000000 -12.2345 -> 1 4297db96d56Sopenharmony_cicotx630 comparetotal -12.1234 -12 -> -1 4307db96d56Sopenharmony_cicotx631 comparetotal -12.1234 -12.0 -> -1 4317db96d56Sopenharmony_cicotx632 comparetotal -12.1234 -12.00 -> -1 4327db96d56Sopenharmony_cicotx633 comparetotal -12.1234 -12.000 -> -1 4337db96d56Sopenharmony_cicotx634 comparetotal -12.1234 -12.0000 -> -1 4347db96d56Sopenharmony_cicotx635 comparetotal -12.1234 -12.00000 -> -1 4357db96d56Sopenharmony_cicotx636 comparetotal -12.1234 -12.000000 -> -1 4367db96d56Sopenharmony_cicotx637 comparetotal -12.1234 -12.0000000 -> -1 4377db96d56Sopenharmony_cicotx638 comparetotal -12.1234 -12.00000000 -> -1 4387db96d56Sopenharmony_cicotx639 comparetotal -12.1234 -12.000000000 -> -1 4397db96d56Sopenharmony_ciprecision: 9 4407db96d56Sopenharmony_ci 4417db96d56Sopenharmony_ci-- extended zeros 4427db96d56Sopenharmony_cicotx640 comparetotal 0 0 -> 0 4437db96d56Sopenharmony_cicotx641 comparetotal 0 -0 -> 1 4447db96d56Sopenharmony_cicotx642 comparetotal 0 -0.0 -> 1 4457db96d56Sopenharmony_cicotx643 comparetotal 0 0.0 -> 1 4467db96d56Sopenharmony_cicotx644 comparetotal -0 0 -> -1 4477db96d56Sopenharmony_cicotx645 comparetotal -0 -0 -> 0 4487db96d56Sopenharmony_cicotx646 comparetotal -0 -0.0 -> -1 4497db96d56Sopenharmony_cicotx647 comparetotal -0 0.0 -> -1 4507db96d56Sopenharmony_cicotx648 comparetotal 0.0 0 -> -1 4517db96d56Sopenharmony_cicotx649 comparetotal 0.0 -0 -> 1 4527db96d56Sopenharmony_cicotx650 comparetotal 0.0 -0.0 -> 1 4537db96d56Sopenharmony_cicotx651 comparetotal 0.0 0.0 -> 0 4547db96d56Sopenharmony_cicotx652 comparetotal -0.0 0 -> -1 4557db96d56Sopenharmony_cicotx653 comparetotal -0.0 -0 -> 1 4567db96d56Sopenharmony_cicotx654 comparetotal -0.0 -0.0 -> 0 4577db96d56Sopenharmony_cicotx655 comparetotal -0.0 0.0 -> -1 4587db96d56Sopenharmony_ci 4597db96d56Sopenharmony_cicotx656 comparetotal -0E1 0.0 -> -1 4607db96d56Sopenharmony_cicotx657 comparetotal -0E2 0.0 -> -1 4617db96d56Sopenharmony_cicotx658 comparetotal 0E1 0.0 -> 1 4627db96d56Sopenharmony_cicotx659 comparetotal 0E2 0.0 -> 1 4637db96d56Sopenharmony_cicotx660 comparetotal -0E1 0 -> -1 4647db96d56Sopenharmony_cicotx661 comparetotal -0E2 0 -> -1 4657db96d56Sopenharmony_cicotx662 comparetotal 0E1 0 -> 1 4667db96d56Sopenharmony_cicotx663 comparetotal 0E2 0 -> 1 4677db96d56Sopenharmony_cicotx664 comparetotal -0E1 -0E1 -> 0 4687db96d56Sopenharmony_cicotx665 comparetotal -0E2 -0E1 -> -1 4697db96d56Sopenharmony_cicotx666 comparetotal 0E1 -0E1 -> 1 4707db96d56Sopenharmony_cicotx667 comparetotal 0E2 -0E1 -> 1 4717db96d56Sopenharmony_cicotx668 comparetotal -0E1 -0E2 -> 1 4727db96d56Sopenharmony_cicotx669 comparetotal -0E2 -0E2 -> 0 4737db96d56Sopenharmony_cicotx670 comparetotal 0E1 -0E2 -> 1 4747db96d56Sopenharmony_cicotx671 comparetotal 0E2 -0E2 -> 1 4757db96d56Sopenharmony_cicotx672 comparetotal -0E1 0E1 -> -1 4767db96d56Sopenharmony_cicotx673 comparetotal -0E2 0E1 -> -1 4777db96d56Sopenharmony_cicotx674 comparetotal 0E1 0E1 -> 0 4787db96d56Sopenharmony_cicotx675 comparetotal 0E2 0E1 -> 1 4797db96d56Sopenharmony_cicotx676 comparetotal -0E1 0E2 -> -1 4807db96d56Sopenharmony_cicotx677 comparetotal -0E2 0E2 -> -1 4817db96d56Sopenharmony_cicotx678 comparetotal 0E1 0E2 -> -1 4827db96d56Sopenharmony_cicotx679 comparetotal 0E2 0E2 -> 0 4837db96d56Sopenharmony_ci 4847db96d56Sopenharmony_ci-- trailing zeros; unit-y 4857db96d56Sopenharmony_ciprecision: 20 4867db96d56Sopenharmony_cicotx680 comparetotal 12 12 -> 0 4877db96d56Sopenharmony_cicotx681 comparetotal 12 12.0 -> 1 4887db96d56Sopenharmony_cicotx682 comparetotal 12 12.00 -> 1 4897db96d56Sopenharmony_cicotx683 comparetotal 12 12.000 -> 1 4907db96d56Sopenharmony_cicotx684 comparetotal 12 12.0000 -> 1 4917db96d56Sopenharmony_cicotx685 comparetotal 12 12.00000 -> 1 4927db96d56Sopenharmony_cicotx686 comparetotal 12 12.000000 -> 1 4937db96d56Sopenharmony_cicotx687 comparetotal 12 12.0000000 -> 1 4947db96d56Sopenharmony_cicotx688 comparetotal 12 12.00000000 -> 1 4957db96d56Sopenharmony_cicotx689 comparetotal 12 12.000000000 -> 1 4967db96d56Sopenharmony_cicotx690 comparetotal 12 12 -> 0 4977db96d56Sopenharmony_cicotx691 comparetotal 12.0 12 -> -1 4987db96d56Sopenharmony_cicotx692 comparetotal 12.00 12 -> -1 4997db96d56Sopenharmony_cicotx693 comparetotal 12.000 12 -> -1 5007db96d56Sopenharmony_cicotx694 comparetotal 12.0000 12 -> -1 5017db96d56Sopenharmony_cicotx695 comparetotal 12.00000 12 -> -1 5027db96d56Sopenharmony_cicotx696 comparetotal 12.000000 12 -> -1 5037db96d56Sopenharmony_cicotx697 comparetotal 12.0000000 12 -> -1 5047db96d56Sopenharmony_cicotx698 comparetotal 12.00000000 12 -> -1 5057db96d56Sopenharmony_cicotx699 comparetotal 12.000000000 12 -> -1 5067db96d56Sopenharmony_ci 5077db96d56Sopenharmony_ci-- long operand checks 5087db96d56Sopenharmony_cimaxexponent: 999 5097db96d56Sopenharmony_ciminexponent: -999 5107db96d56Sopenharmony_ciprecision: 9 5117db96d56Sopenharmony_cicotx701 comparetotal 12345678000 1 -> 1 5127db96d56Sopenharmony_cicotx702 comparetotal 1 12345678000 -> -1 5137db96d56Sopenharmony_cicotx703 comparetotal 1234567800 1 -> 1 5147db96d56Sopenharmony_cicotx704 comparetotal 1 1234567800 -> -1 5157db96d56Sopenharmony_cicotx705 comparetotal 1234567890 1 -> 1 5167db96d56Sopenharmony_cicotx706 comparetotal 1 1234567890 -> -1 5177db96d56Sopenharmony_cicotx707 comparetotal 1234567891 1 -> 1 5187db96d56Sopenharmony_cicotx708 comparetotal 1 1234567891 -> -1 5197db96d56Sopenharmony_cicotx709 comparetotal 12345678901 1 -> 1 5207db96d56Sopenharmony_cicotx710 comparetotal 1 12345678901 -> -1 5217db96d56Sopenharmony_cicotx711 comparetotal 1234567896 1 -> 1 5227db96d56Sopenharmony_cicotx712 comparetotal 1 1234567896 -> -1 5237db96d56Sopenharmony_cicotx713 comparetotal -1234567891 1 -> -1 5247db96d56Sopenharmony_cicotx714 comparetotal 1 -1234567891 -> 1 5257db96d56Sopenharmony_cicotx715 comparetotal -12345678901 1 -> -1 5267db96d56Sopenharmony_cicotx716 comparetotal 1 -12345678901 -> 1 5277db96d56Sopenharmony_cicotx717 comparetotal -1234567896 1 -> -1 5287db96d56Sopenharmony_cicotx718 comparetotal 1 -1234567896 -> 1 5297db96d56Sopenharmony_ci 5307db96d56Sopenharmony_ciprecision: 15 5317db96d56Sopenharmony_ci-- same with plenty of precision 5327db96d56Sopenharmony_cicotx721 comparetotal 12345678000 1 -> 1 5337db96d56Sopenharmony_cicotx722 comparetotal 1 12345678000 -> -1 5347db96d56Sopenharmony_cicotx723 comparetotal 1234567800 1 -> 1 5357db96d56Sopenharmony_cicotx724 comparetotal 1 1234567800 -> -1 5367db96d56Sopenharmony_cicotx725 comparetotal 1234567890 1 -> 1 5377db96d56Sopenharmony_cicotx726 comparetotal 1 1234567890 -> -1 5387db96d56Sopenharmony_cicotx727 comparetotal 1234567891 1 -> 1 5397db96d56Sopenharmony_cicotx728 comparetotal 1 1234567891 -> -1 5407db96d56Sopenharmony_cicotx729 comparetotal 12345678901 1 -> 1 5417db96d56Sopenharmony_cicotx730 comparetotal 1 12345678901 -> -1 5427db96d56Sopenharmony_cicotx731 comparetotal 1234567896 1 -> 1 5437db96d56Sopenharmony_cicotx732 comparetotal 1 1234567896 -> -1 5447db96d56Sopenharmony_ci 5457db96d56Sopenharmony_ci-- residue cases 5467db96d56Sopenharmony_ciprecision: 5 5477db96d56Sopenharmony_cicotx740 comparetotal 1 0.9999999 -> 1 5487db96d56Sopenharmony_cicotx741 comparetotal 1 0.999999 -> 1 5497db96d56Sopenharmony_cicotx742 comparetotal 1 0.99999 -> 1 5507db96d56Sopenharmony_cicotx743 comparetotal 1 1.0000 -> 1 5517db96d56Sopenharmony_cicotx744 comparetotal 1 1.00001 -> -1 5527db96d56Sopenharmony_cicotx745 comparetotal 1 1.000001 -> -1 5537db96d56Sopenharmony_cicotx746 comparetotal 1 1.0000001 -> -1 5547db96d56Sopenharmony_cicotx750 comparetotal 0.9999999 1 -> -1 5557db96d56Sopenharmony_cicotx751 comparetotal 0.999999 1 -> -1 5567db96d56Sopenharmony_cicotx752 comparetotal 0.99999 1 -> -1 5577db96d56Sopenharmony_cicotx753 comparetotal 1.0000 1 -> -1 5587db96d56Sopenharmony_cicotx754 comparetotal 1.00001 1 -> 1 5597db96d56Sopenharmony_cicotx755 comparetotal 1.000001 1 -> 1 5607db96d56Sopenharmony_cicotx756 comparetotal 1.0000001 1 -> 1 5617db96d56Sopenharmony_ci 5627db96d56Sopenharmony_ci-- a selection of longies 5637db96d56Sopenharmony_cicotx760 comparetotal -36852134.84194296250843579428931 -5830629.8347085025808756560357940 -> -1 5647db96d56Sopenharmony_cicotx761 comparetotal -36852134.84194296250843579428931 -36852134.84194296250843579428931 -> 0 5657db96d56Sopenharmony_cicotx762 comparetotal -36852134.94194296250843579428931 -36852134.84194296250843579428931 -> -1 5667db96d56Sopenharmony_cicotx763 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5677db96d56Sopenharmony_ci-- precisions above or below the difference should have no effect 5687db96d56Sopenharmony_ciprecision: 11 5697db96d56Sopenharmony_cicotx764 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5707db96d56Sopenharmony_ciprecision: 10 5717db96d56Sopenharmony_cicotx765 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5727db96d56Sopenharmony_ciprecision: 9 5737db96d56Sopenharmony_cicotx766 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5747db96d56Sopenharmony_ciprecision: 8 5757db96d56Sopenharmony_cicotx767 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5767db96d56Sopenharmony_ciprecision: 7 5777db96d56Sopenharmony_cicotx768 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5787db96d56Sopenharmony_ciprecision: 6 5797db96d56Sopenharmony_cicotx769 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5807db96d56Sopenharmony_ciprecision: 5 5817db96d56Sopenharmony_cicotx770 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5827db96d56Sopenharmony_ciprecision: 4 5837db96d56Sopenharmony_cicotx771 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5847db96d56Sopenharmony_ciprecision: 3 5857db96d56Sopenharmony_cicotx772 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5867db96d56Sopenharmony_ciprecision: 2 5877db96d56Sopenharmony_cicotx773 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5887db96d56Sopenharmony_ciprecision: 1 5897db96d56Sopenharmony_cicotx774 comparetotal -36852134.84194296250843579428931 -36852134.94194296250843579428931 -> 1 5907db96d56Sopenharmony_ci 5917db96d56Sopenharmony_ci-- Specials 5927db96d56Sopenharmony_ciprecision: 9 5937db96d56Sopenharmony_cicotx780 comparetotal Inf -Inf -> 1 5947db96d56Sopenharmony_cicotx781 comparetotal Inf -1000 -> 1 5957db96d56Sopenharmony_cicotx782 comparetotal Inf -1 -> 1 5967db96d56Sopenharmony_cicotx783 comparetotal Inf -0 -> 1 5977db96d56Sopenharmony_cicotx784 comparetotal Inf 0 -> 1 5987db96d56Sopenharmony_cicotx785 comparetotal Inf 1 -> 1 5997db96d56Sopenharmony_cicotx786 comparetotal Inf 1000 -> 1 6007db96d56Sopenharmony_cicotx787 comparetotal Inf Inf -> 0 6017db96d56Sopenharmony_cicotx788 comparetotal -1000 Inf -> -1 6027db96d56Sopenharmony_cicotx789 comparetotal -Inf Inf -> -1 6037db96d56Sopenharmony_cicotx790 comparetotal -1 Inf -> -1 6047db96d56Sopenharmony_cicotx791 comparetotal -0 Inf -> -1 6057db96d56Sopenharmony_cicotx792 comparetotal 0 Inf -> -1 6067db96d56Sopenharmony_cicotx793 comparetotal 1 Inf -> -1 6077db96d56Sopenharmony_cicotx794 comparetotal 1000 Inf -> -1 6087db96d56Sopenharmony_cicotx795 comparetotal Inf Inf -> 0 6097db96d56Sopenharmony_ci 6107db96d56Sopenharmony_cicotx800 comparetotal -Inf -Inf -> 0 6117db96d56Sopenharmony_cicotx801 comparetotal -Inf -1000 -> -1 6127db96d56Sopenharmony_cicotx802 comparetotal -Inf -1 -> -1 6137db96d56Sopenharmony_cicotx803 comparetotal -Inf -0 -> -1 6147db96d56Sopenharmony_cicotx804 comparetotal -Inf 0 -> -1 6157db96d56Sopenharmony_cicotx805 comparetotal -Inf 1 -> -1 6167db96d56Sopenharmony_cicotx806 comparetotal -Inf 1000 -> -1 6177db96d56Sopenharmony_cicotx807 comparetotal -Inf Inf -> -1 6187db96d56Sopenharmony_cicotx808 comparetotal -Inf -Inf -> 0 6197db96d56Sopenharmony_cicotx809 comparetotal -1000 -Inf -> 1 6207db96d56Sopenharmony_cicotx810 comparetotal -1 -Inf -> 1 6217db96d56Sopenharmony_cicotx811 comparetotal -0 -Inf -> 1 6227db96d56Sopenharmony_cicotx812 comparetotal 0 -Inf -> 1 6237db96d56Sopenharmony_cicotx813 comparetotal 1 -Inf -> 1 6247db96d56Sopenharmony_cicotx814 comparetotal 1000 -Inf -> 1 6257db96d56Sopenharmony_cicotx815 comparetotal Inf -Inf -> 1 6267db96d56Sopenharmony_ci 6277db96d56Sopenharmony_cicotx821 comparetotal NaN -Inf -> 1 6287db96d56Sopenharmony_cicotx822 comparetotal NaN -1000 -> 1 6297db96d56Sopenharmony_cicotx823 comparetotal NaN -1 -> 1 6307db96d56Sopenharmony_cicotx824 comparetotal NaN -0 -> 1 6317db96d56Sopenharmony_cicotx825 comparetotal NaN 0 -> 1 6327db96d56Sopenharmony_cicotx826 comparetotal NaN 1 -> 1 6337db96d56Sopenharmony_cicotx827 comparetotal NaN 1000 -> 1 6347db96d56Sopenharmony_cicotx828 comparetotal NaN Inf -> 1 6357db96d56Sopenharmony_cicotx829 comparetotal NaN NaN -> 0 6367db96d56Sopenharmony_cicotx830 comparetotal -Inf NaN -> -1 6377db96d56Sopenharmony_cicotx831 comparetotal -1000 NaN -> -1 6387db96d56Sopenharmony_cicotx832 comparetotal -1 NaN -> -1 6397db96d56Sopenharmony_cicotx833 comparetotal -0 NaN -> -1 6407db96d56Sopenharmony_cicotx834 comparetotal 0 NaN -> -1 6417db96d56Sopenharmony_cicotx835 comparetotal 1 NaN -> -1 6427db96d56Sopenharmony_cicotx836 comparetotal 1000 NaN -> -1 6437db96d56Sopenharmony_cicotx837 comparetotal Inf NaN -> -1 6447db96d56Sopenharmony_cicotx838 comparetotal -NaN -NaN -> 0 6457db96d56Sopenharmony_cicotx839 comparetotal +NaN -NaN -> 1 6467db96d56Sopenharmony_cicotx840 comparetotal -NaN +NaN -> -1 6477db96d56Sopenharmony_ci 6487db96d56Sopenharmony_cicotx841 comparetotal sNaN -sNaN -> 1 6497db96d56Sopenharmony_cicotx842 comparetotal sNaN -NaN -> 1 6507db96d56Sopenharmony_cicotx843 comparetotal sNaN -Inf -> 1 6517db96d56Sopenharmony_cicotx844 comparetotal sNaN -1000 -> 1 6527db96d56Sopenharmony_cicotx845 comparetotal sNaN -1 -> 1 6537db96d56Sopenharmony_cicotx846 comparetotal sNaN -0 -> 1 6547db96d56Sopenharmony_cicotx847 comparetotal sNaN 0 -> 1 6557db96d56Sopenharmony_cicotx848 comparetotal sNaN 1 -> 1 6567db96d56Sopenharmony_cicotx849 comparetotal sNaN 1000 -> 1 6577db96d56Sopenharmony_cicotx850 comparetotal sNaN NaN -> -1 6587db96d56Sopenharmony_cicotx851 comparetotal sNaN sNaN -> 0 6597db96d56Sopenharmony_ci 6607db96d56Sopenharmony_cicotx852 comparetotal -sNaN sNaN -> -1 6617db96d56Sopenharmony_cicotx853 comparetotal -NaN sNaN -> -1 6627db96d56Sopenharmony_cicotx854 comparetotal -Inf sNaN -> -1 6637db96d56Sopenharmony_cicotx855 comparetotal -1000 sNaN -> -1 6647db96d56Sopenharmony_cicotx856 comparetotal -1 sNaN -> -1 6657db96d56Sopenharmony_cicotx857 comparetotal -0 sNaN -> -1 6667db96d56Sopenharmony_cicotx858 comparetotal 0 sNaN -> -1 6677db96d56Sopenharmony_cicotx859 comparetotal 1 sNaN -> -1 6687db96d56Sopenharmony_cicotx860 comparetotal 1000 sNaN -> -1 6697db96d56Sopenharmony_cicotx861 comparetotal Inf sNaN -> -1 6707db96d56Sopenharmony_cicotx862 comparetotal NaN sNaN -> 1 6717db96d56Sopenharmony_cicotx863 comparetotal sNaN sNaN -> 0 6727db96d56Sopenharmony_ci 6737db96d56Sopenharmony_cicotx871 comparetotal -sNaN -sNaN -> 0 6747db96d56Sopenharmony_cicotx872 comparetotal -sNaN -NaN -> 1 6757db96d56Sopenharmony_cicotx873 comparetotal -sNaN -Inf -> -1 6767db96d56Sopenharmony_cicotx874 comparetotal -sNaN -1000 -> -1 6777db96d56Sopenharmony_cicotx875 comparetotal -sNaN -1 -> -1 6787db96d56Sopenharmony_cicotx876 comparetotal -sNaN -0 -> -1 6797db96d56Sopenharmony_cicotx877 comparetotal -sNaN 0 -> -1 6807db96d56Sopenharmony_cicotx878 comparetotal -sNaN 1 -> -1 6817db96d56Sopenharmony_cicotx879 comparetotal -sNaN 1000 -> -1 6827db96d56Sopenharmony_cicotx880 comparetotal -sNaN NaN -> -1 6837db96d56Sopenharmony_cicotx881 comparetotal -sNaN sNaN -> -1 6847db96d56Sopenharmony_ci 6857db96d56Sopenharmony_cicotx882 comparetotal -sNaN -sNaN -> 0 6867db96d56Sopenharmony_cicotx883 comparetotal -NaN -sNaN -> -1 6877db96d56Sopenharmony_cicotx884 comparetotal -Inf -sNaN -> 1 6887db96d56Sopenharmony_cicotx885 comparetotal -1000 -sNaN -> 1 6897db96d56Sopenharmony_cicotx886 comparetotal -1 -sNaN -> 1 6907db96d56Sopenharmony_cicotx887 comparetotal -0 -sNaN -> 1 6917db96d56Sopenharmony_cicotx888 comparetotal 0 -sNaN -> 1 6927db96d56Sopenharmony_cicotx889 comparetotal 1 -sNaN -> 1 6937db96d56Sopenharmony_cicotx890 comparetotal 1000 -sNaN -> 1 6947db96d56Sopenharmony_cicotx891 comparetotal Inf -sNaN -> 1 6957db96d56Sopenharmony_cicotx892 comparetotal NaN -sNaN -> 1 6967db96d56Sopenharmony_cicotx893 comparetotal sNaN -sNaN -> 1 6977db96d56Sopenharmony_ci 6987db96d56Sopenharmony_ci-- NaNs with payload 6997db96d56Sopenharmony_cicotx960 comparetotal NaN9 -Inf -> 1 7007db96d56Sopenharmony_cicotx961 comparetotal NaN8 999 -> 1 7017db96d56Sopenharmony_cicotx962 comparetotal NaN77 Inf -> 1 7027db96d56Sopenharmony_cicotx963 comparetotal -NaN67 NaN5 -> -1 7037db96d56Sopenharmony_cicotx964 comparetotal -Inf -NaN4 -> 1 7047db96d56Sopenharmony_cicotx965 comparetotal -999 -NaN33 -> 1 7057db96d56Sopenharmony_cicotx966 comparetotal Inf NaN2 -> -1 7067db96d56Sopenharmony_ci 7077db96d56Sopenharmony_cicotx970 comparetotal -NaN41 -NaN42 -> 1 7087db96d56Sopenharmony_cicotx971 comparetotal +NaN41 -NaN42 -> 1 7097db96d56Sopenharmony_cicotx972 comparetotal -NaN41 +NaN42 -> -1 7107db96d56Sopenharmony_cicotx973 comparetotal +NaN41 +NaN42 -> -1 7117db96d56Sopenharmony_cicotx974 comparetotal -NaN42 -NaN01 -> -1 7127db96d56Sopenharmony_cicotx975 comparetotal +NaN42 -NaN01 -> 1 7137db96d56Sopenharmony_cicotx976 comparetotal -NaN42 +NaN01 -> -1 7147db96d56Sopenharmony_cicotx977 comparetotal +NaN42 +NaN01 -> 1 7157db96d56Sopenharmony_ci 7167db96d56Sopenharmony_cicotx980 comparetotal -sNaN771 -sNaN772 -> 1 7177db96d56Sopenharmony_cicotx981 comparetotal +sNaN771 -sNaN772 -> 1 7187db96d56Sopenharmony_cicotx982 comparetotal -sNaN771 +sNaN772 -> -1 7197db96d56Sopenharmony_cicotx983 comparetotal +sNaN771 +sNaN772 -> -1 7207db96d56Sopenharmony_cicotx984 comparetotal -sNaN772 -sNaN771 -> -1 7217db96d56Sopenharmony_cicotx985 comparetotal +sNaN772 -sNaN771 -> 1 7227db96d56Sopenharmony_cicotx986 comparetotal -sNaN772 +sNaN771 -> -1 7237db96d56Sopenharmony_cicotx987 comparetotal +sNaN772 +sNaN771 -> 1 7247db96d56Sopenharmony_ci 7257db96d56Sopenharmony_cicotx991 comparetotal -sNaN99 -Inf -> -1 7267db96d56Sopenharmony_cicotx992 comparetotal sNaN98 -11 -> 1 7277db96d56Sopenharmony_cicotx993 comparetotal sNaN97 NaN -> -1 7287db96d56Sopenharmony_cicotx994 comparetotal sNaN16 sNaN94 -> -1 7297db96d56Sopenharmony_cicotx995 comparetotal NaN85 sNaN83 -> 1 7307db96d56Sopenharmony_cicotx996 comparetotal -Inf sNaN92 -> -1 7317db96d56Sopenharmony_cicotx997 comparetotal 088 sNaN81 -> -1 7327db96d56Sopenharmony_cicotx998 comparetotal Inf sNaN90 -> -1 7337db96d56Sopenharmony_cicotx999 comparetotal NaN -sNaN89 -> 1 7347db96d56Sopenharmony_ci 7357db96d56Sopenharmony_ci-- overflow and underflow tests .. subnormal results now allowed 7367db96d56Sopenharmony_cimaxExponent: 999999999 7377db96d56Sopenharmony_ciminexponent: -999999999 7387db96d56Sopenharmony_cicotx1080 comparetotal +1.23456789012345E-0 9E+999999999 -> -1 7397db96d56Sopenharmony_cicotx1081 comparetotal 9E+999999999 +1.23456789012345E-0 -> 1 7407db96d56Sopenharmony_cicotx1082 comparetotal +0.100 9E-999999999 -> 1 7417db96d56Sopenharmony_cicotx1083 comparetotal 9E-999999999 +0.100 -> -1 7427db96d56Sopenharmony_cicotx1085 comparetotal -1.23456789012345E-0 9E+999999999 -> -1 7437db96d56Sopenharmony_cicotx1086 comparetotal 9E+999999999 -1.23456789012345E-0 -> 1 7447db96d56Sopenharmony_cicotx1087 comparetotal -0.100 9E-999999999 -> -1 7457db96d56Sopenharmony_cicotx1088 comparetotal 9E-999999999 -0.100 -> 1 7467db96d56Sopenharmony_ci 7477db96d56Sopenharmony_cicotx1089 comparetotal 1e-599999999 1e-400000001 -> -1 7487db96d56Sopenharmony_cicotx1090 comparetotal 1e-599999999 1e-400000000 -> -1 7497db96d56Sopenharmony_cicotx1091 comparetotal 1e-600000000 1e-400000000 -> -1 7507db96d56Sopenharmony_cicotx1092 comparetotal 9e-999999998 0.01 -> -1 7517db96d56Sopenharmony_cicotx1093 comparetotal 9e-999999998 0.1 -> -1 7527db96d56Sopenharmony_cicotx1094 comparetotal 0.01 9e-999999998 -> 1 7537db96d56Sopenharmony_cicotx1095 comparetotal 1e599999999 1e400000001 -> 1 7547db96d56Sopenharmony_cicotx1096 comparetotal 1e599999999 1e400000000 -> 1 7557db96d56Sopenharmony_cicotx1097 comparetotal 1e600000000 1e400000000 -> 1 7567db96d56Sopenharmony_cicotx1098 comparetotal 9e999999998 100 -> 1 7577db96d56Sopenharmony_cicotx1099 comparetotal 9e999999998 10 -> 1 7587db96d56Sopenharmony_cicotx1100 comparetotal 100 9e999999998 -> -1 7597db96d56Sopenharmony_ci-- signs 7607db96d56Sopenharmony_cicotx1101 comparetotal 1e+777777777 1e+411111111 -> 1 7617db96d56Sopenharmony_cicotx1102 comparetotal 1e+777777777 -1e+411111111 -> 1 7627db96d56Sopenharmony_cicotx1103 comparetotal -1e+777777777 1e+411111111 -> -1 7637db96d56Sopenharmony_cicotx1104 comparetotal -1e+777777777 -1e+411111111 -> -1 7647db96d56Sopenharmony_cicotx1105 comparetotal 1e-777777777 1e-411111111 -> -1 7657db96d56Sopenharmony_cicotx1106 comparetotal 1e-777777777 -1e-411111111 -> 1 7667db96d56Sopenharmony_cicotx1107 comparetotal -1e-777777777 1e-411111111 -> -1 7677db96d56Sopenharmony_cicotx1108 comparetotal -1e-777777777 -1e-411111111 -> 1 7687db96d56Sopenharmony_ci 7697db96d56Sopenharmony_ci-- spread zeros 7707db96d56Sopenharmony_cicotx1110 comparetotal 0E-383 0 -> -1 7717db96d56Sopenharmony_cicotx1111 comparetotal 0E-383 -0 -> 1 7727db96d56Sopenharmony_cicotx1112 comparetotal -0E-383 0 -> -1 7737db96d56Sopenharmony_cicotx1113 comparetotal -0E-383 -0 -> 1 7747db96d56Sopenharmony_cicotx1114 comparetotal 0E-383 0E+384 -> -1 7757db96d56Sopenharmony_cicotx1115 comparetotal 0E-383 -0E+384 -> 1 7767db96d56Sopenharmony_cicotx1116 comparetotal -0E-383 0E+384 -> -1 7777db96d56Sopenharmony_cicotx1117 comparetotal -0E-383 -0E+384 -> 1 7787db96d56Sopenharmony_cicotx1118 comparetotal 0 0E+384 -> -1 7797db96d56Sopenharmony_cicotx1119 comparetotal 0 -0E+384 -> 1 7807db96d56Sopenharmony_cicotx1120 comparetotal -0 0E+384 -> -1 7817db96d56Sopenharmony_cicotx1121 comparetotal -0 -0E+384 -> 1 7827db96d56Sopenharmony_ci 7837db96d56Sopenharmony_cicotx1130 comparetotal 0E+384 0 -> 1 7847db96d56Sopenharmony_cicotx1131 comparetotal 0E+384 -0 -> 1 7857db96d56Sopenharmony_cicotx1132 comparetotal -0E+384 0 -> -1 7867db96d56Sopenharmony_cicotx1133 comparetotal -0E+384 -0 -> -1 7877db96d56Sopenharmony_cicotx1134 comparetotal 0E+384 0E-383 -> 1 7887db96d56Sopenharmony_cicotx1135 comparetotal 0E+384 -0E-383 -> 1 7897db96d56Sopenharmony_cicotx1136 comparetotal -0E+384 0E-383 -> -1 7907db96d56Sopenharmony_cicotx1137 comparetotal -0E+384 -0E-383 -> -1 7917db96d56Sopenharmony_cicotx1138 comparetotal 0 0E-383 -> 1 7927db96d56Sopenharmony_cicotx1139 comparetotal 0 -0E-383 -> 1 7937db96d56Sopenharmony_cicotx1140 comparetotal -0 0E-383 -> -1 7947db96d56Sopenharmony_cicotx1141 comparetotal -0 -0E-383 -> -1 7957db96d56Sopenharmony_ci 7967db96d56Sopenharmony_ci-- Null tests 7977db96d56Sopenharmony_cicotx9990 comparetotal 10 # -> NaN Invalid_operation 7987db96d56Sopenharmony_cicotx9991 comparetotal # 10 -> NaN Invalid_operation 799