17db96d56Sopenharmony_ci------------------------------------------------------------------------
27db96d56Sopenharmony_ci-- compare.decTest -- decimal comparison that allows quiet NaNs       --
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
267db96d56Sopenharmony_ciextended: 1
277db96d56Sopenharmony_ci
287db96d56Sopenharmony_ciprecision:   9
297db96d56Sopenharmony_cirounding:    half_up
307db96d56Sopenharmony_cimaxExponent: 999
317db96d56Sopenharmony_ciminexponent: -999
327db96d56Sopenharmony_ci
337db96d56Sopenharmony_ci-- sanity checks
347db96d56Sopenharmony_cicomx001 compare  -2  -2  -> 0
357db96d56Sopenharmony_cicomx002 compare  -2  -1  -> -1
367db96d56Sopenharmony_cicomx003 compare  -2   0  -> -1
377db96d56Sopenharmony_cicomx004 compare  -2   1  -> -1
387db96d56Sopenharmony_cicomx005 compare  -2   2  -> -1
397db96d56Sopenharmony_cicomx006 compare  -1  -2  -> 1
407db96d56Sopenharmony_cicomx007 compare  -1  -1  -> 0
417db96d56Sopenharmony_cicomx008 compare  -1   0  -> -1
427db96d56Sopenharmony_cicomx009 compare  -1   1  -> -1
437db96d56Sopenharmony_cicomx010 compare  -1   2  -> -1
447db96d56Sopenharmony_cicomx011 compare   0  -2  -> 1
457db96d56Sopenharmony_cicomx012 compare   0  -1  -> 1
467db96d56Sopenharmony_cicomx013 compare   0   0  -> 0
477db96d56Sopenharmony_cicomx014 compare   0   1  -> -1
487db96d56Sopenharmony_cicomx015 compare   0   2  -> -1
497db96d56Sopenharmony_cicomx016 compare   1  -2  -> 1
507db96d56Sopenharmony_cicomx017 compare   1  -1  -> 1
517db96d56Sopenharmony_cicomx018 compare   1   0  -> 1
527db96d56Sopenharmony_cicomx019 compare   1   1  -> 0
537db96d56Sopenharmony_cicomx020 compare   1   2  -> -1
547db96d56Sopenharmony_cicomx021 compare   2  -2  -> 1
557db96d56Sopenharmony_cicomx022 compare   2  -1  -> 1
567db96d56Sopenharmony_cicomx023 compare   2   0  -> 1
577db96d56Sopenharmony_cicomx025 compare   2   1  -> 1
587db96d56Sopenharmony_cicomx026 compare   2   2  -> 0
597db96d56Sopenharmony_ci
607db96d56Sopenharmony_cicomx031 compare  -20  -20  -> 0
617db96d56Sopenharmony_cicomx032 compare  -20  -10  -> -1
627db96d56Sopenharmony_cicomx033 compare  -20   00  -> -1
637db96d56Sopenharmony_cicomx034 compare  -20   10  -> -1
647db96d56Sopenharmony_cicomx035 compare  -20   20  -> -1
657db96d56Sopenharmony_cicomx036 compare  -10  -20  -> 1
667db96d56Sopenharmony_cicomx037 compare  -10  -10  -> 0
677db96d56Sopenharmony_cicomx038 compare  -10   00  -> -1
687db96d56Sopenharmony_cicomx039 compare  -10   10  -> -1
697db96d56Sopenharmony_cicomx040 compare  -10   20  -> -1
707db96d56Sopenharmony_cicomx041 compare   00  -20  -> 1
717db96d56Sopenharmony_cicomx042 compare   00  -10  -> 1
727db96d56Sopenharmony_cicomx043 compare   00   00  -> 0
737db96d56Sopenharmony_cicomx044 compare   00   10  -> -1
747db96d56Sopenharmony_cicomx045 compare   00   20  -> -1
757db96d56Sopenharmony_cicomx046 compare   10  -20  -> 1
767db96d56Sopenharmony_cicomx047 compare   10  -10  -> 1
777db96d56Sopenharmony_cicomx048 compare   10   00  -> 1
787db96d56Sopenharmony_cicomx049 compare   10   10  -> 0
797db96d56Sopenharmony_cicomx050 compare   10   20  -> -1
807db96d56Sopenharmony_cicomx051 compare   20  -20  -> 1
817db96d56Sopenharmony_cicomx052 compare   20  -10  -> 1
827db96d56Sopenharmony_cicomx053 compare   20   00  -> 1
837db96d56Sopenharmony_cicomx055 compare   20   10  -> 1
847db96d56Sopenharmony_cicomx056 compare   20   20  -> 0
857db96d56Sopenharmony_ci
867db96d56Sopenharmony_cicomx061 compare  -2.0  -2.0  -> 0
877db96d56Sopenharmony_cicomx062 compare  -2.0  -1.0  -> -1
887db96d56Sopenharmony_cicomx063 compare  -2.0   0.0  -> -1
897db96d56Sopenharmony_cicomx064 compare  -2.0   1.0  -> -1
907db96d56Sopenharmony_cicomx065 compare  -2.0   2.0  -> -1
917db96d56Sopenharmony_cicomx066 compare  -1.0  -2.0  -> 1
927db96d56Sopenharmony_cicomx067 compare  -1.0  -1.0  -> 0
937db96d56Sopenharmony_cicomx068 compare  -1.0   0.0  -> -1
947db96d56Sopenharmony_cicomx069 compare  -1.0   1.0  -> -1
957db96d56Sopenharmony_cicomx070 compare  -1.0   2.0  -> -1
967db96d56Sopenharmony_cicomx071 compare   0.0  -2.0  -> 1
977db96d56Sopenharmony_cicomx072 compare   0.0  -1.0  -> 1
987db96d56Sopenharmony_cicomx073 compare   0.0   0.0  -> 0
997db96d56Sopenharmony_cicomx074 compare   0.0   1.0  -> -1
1007db96d56Sopenharmony_cicomx075 compare   0.0   2.0  -> -1
1017db96d56Sopenharmony_cicomx076 compare   1.0  -2.0  -> 1
1027db96d56Sopenharmony_cicomx077 compare   1.0  -1.0  -> 1
1037db96d56Sopenharmony_cicomx078 compare   1.0   0.0  -> 1
1047db96d56Sopenharmony_cicomx079 compare   1.0   1.0  -> 0
1057db96d56Sopenharmony_cicomx080 compare   1.0   2.0  -> -1
1067db96d56Sopenharmony_cicomx081 compare   2.0  -2.0  -> 1
1077db96d56Sopenharmony_cicomx082 compare   2.0  -1.0  -> 1
1087db96d56Sopenharmony_cicomx083 compare   2.0   0.0  -> 1
1097db96d56Sopenharmony_cicomx085 compare   2.0   1.0  -> 1
1107db96d56Sopenharmony_cicomx086 compare   2.0   2.0  -> 0
1117db96d56Sopenharmony_ci
1127db96d56Sopenharmony_ci-- now some cases which might overflow if subtract were used
1137db96d56Sopenharmony_cimaxexponent: 999999999
1147db96d56Sopenharmony_ciminexponent: -999999999
1157db96d56Sopenharmony_cicomx095 compare  9.99999999E+999999999 9.99999999E+999999999  -> 0
1167db96d56Sopenharmony_cicomx096 compare -9.99999999E+999999999 9.99999999E+999999999  -> -1
1177db96d56Sopenharmony_cicomx097 compare  9.99999999E+999999999 -9.99999999E+999999999 -> 1
1187db96d56Sopenharmony_cicomx098 compare -9.99999999E+999999999 -9.99999999E+999999999 -> 0
1197db96d56Sopenharmony_ci
1207db96d56Sopenharmony_ci-- some differing length/exponent cases
1217db96d56Sopenharmony_cicomx100 compare   7.0    7.0    -> 0
1227db96d56Sopenharmony_cicomx101 compare   7.0    7      -> 0
1237db96d56Sopenharmony_cicomx102 compare   7      7.0    -> 0
1247db96d56Sopenharmony_cicomx103 compare   7E+0   7.0    -> 0
1257db96d56Sopenharmony_cicomx104 compare   70E-1  7.0    -> 0
1267db96d56Sopenharmony_cicomx105 compare   0.7E+1 7      -> 0
1277db96d56Sopenharmony_cicomx106 compare   70E-1  7      -> 0
1287db96d56Sopenharmony_cicomx107 compare   7.0    7E+0   -> 0
1297db96d56Sopenharmony_cicomx108 compare   7.0    70E-1  -> 0
1307db96d56Sopenharmony_cicomx109 compare   7      0.7E+1 -> 0
1317db96d56Sopenharmony_cicomx110 compare   7      70E-1  -> 0
1327db96d56Sopenharmony_ci
1337db96d56Sopenharmony_cicomx120 compare   8.0    7.0    -> 1
1347db96d56Sopenharmony_cicomx121 compare   8.0    7      -> 1
1357db96d56Sopenharmony_cicomx122 compare   8      7.0    -> 1
1367db96d56Sopenharmony_cicomx123 compare   8E+0   7.0    -> 1
1377db96d56Sopenharmony_cicomx124 compare   80E-1  7.0    -> 1
1387db96d56Sopenharmony_cicomx125 compare   0.8E+1 7      -> 1
1397db96d56Sopenharmony_cicomx126 compare   80E-1  7      -> 1
1407db96d56Sopenharmony_cicomx127 compare   8.0    7E+0   -> 1
1417db96d56Sopenharmony_cicomx128 compare   8.0    70E-1  -> 1
1427db96d56Sopenharmony_cicomx129 compare   8      0.7E+1  -> 1
1437db96d56Sopenharmony_cicomx130 compare   8      70E-1  -> 1
1447db96d56Sopenharmony_ci
1457db96d56Sopenharmony_cicomx140 compare   8.0    9.0    -> -1
1467db96d56Sopenharmony_cicomx141 compare   8.0    9      -> -1
1477db96d56Sopenharmony_cicomx142 compare   8      9.0    -> -1
1487db96d56Sopenharmony_cicomx143 compare   8E+0   9.0    -> -1
1497db96d56Sopenharmony_cicomx144 compare   80E-1  9.0    -> -1
1507db96d56Sopenharmony_cicomx145 compare   0.8E+1 9      -> -1
1517db96d56Sopenharmony_cicomx146 compare   80E-1  9      -> -1
1527db96d56Sopenharmony_cicomx147 compare   8.0    9E+0   -> -1
1537db96d56Sopenharmony_cicomx148 compare   8.0    90E-1  -> -1
1547db96d56Sopenharmony_cicomx149 compare   8      0.9E+1 -> -1
1557db96d56Sopenharmony_cicomx150 compare   8      90E-1  -> -1
1567db96d56Sopenharmony_ci
1577db96d56Sopenharmony_ci-- and again, with sign changes -+ ..
1587db96d56Sopenharmony_cicomx200 compare  -7.0    7.0    -> -1
1597db96d56Sopenharmony_cicomx201 compare  -7.0    7      -> -1
1607db96d56Sopenharmony_cicomx202 compare  -7      7.0    -> -1
1617db96d56Sopenharmony_cicomx203 compare  -7E+0   7.0    -> -1
1627db96d56Sopenharmony_cicomx204 compare  -70E-1  7.0    -> -1
1637db96d56Sopenharmony_cicomx205 compare  -0.7E+1 7      -> -1
1647db96d56Sopenharmony_cicomx206 compare  -70E-1  7      -> -1
1657db96d56Sopenharmony_cicomx207 compare  -7.0    7E+0   -> -1
1667db96d56Sopenharmony_cicomx208 compare  -7.0    70E-1  -> -1
1677db96d56Sopenharmony_cicomx209 compare  -7      0.7E+1 -> -1
1687db96d56Sopenharmony_cicomx210 compare  -7      70E-1  -> -1
1697db96d56Sopenharmony_ci
1707db96d56Sopenharmony_cicomx220 compare  -8.0    7.0    -> -1
1717db96d56Sopenharmony_cicomx221 compare  -8.0    7      -> -1
1727db96d56Sopenharmony_cicomx222 compare  -8      7.0    -> -1
1737db96d56Sopenharmony_cicomx223 compare  -8E+0   7.0    -> -1
1747db96d56Sopenharmony_cicomx224 compare  -80E-1  7.0    -> -1
1757db96d56Sopenharmony_cicomx225 compare  -0.8E+1 7      -> -1
1767db96d56Sopenharmony_cicomx226 compare  -80E-1  7      -> -1
1777db96d56Sopenharmony_cicomx227 compare  -8.0    7E+0   -> -1
1787db96d56Sopenharmony_cicomx228 compare  -8.0    70E-1  -> -1
1797db96d56Sopenharmony_cicomx229 compare  -8      0.7E+1 -> -1
1807db96d56Sopenharmony_cicomx230 compare  -8      70E-1  -> -1
1817db96d56Sopenharmony_ci
1827db96d56Sopenharmony_cicomx240 compare  -8.0    9.0    -> -1
1837db96d56Sopenharmony_cicomx241 compare  -8.0    9      -> -1
1847db96d56Sopenharmony_cicomx242 compare  -8      9.0    -> -1
1857db96d56Sopenharmony_cicomx243 compare  -8E+0   9.0    -> -1
1867db96d56Sopenharmony_cicomx244 compare  -80E-1  9.0    -> -1
1877db96d56Sopenharmony_cicomx245 compare  -0.8E+1 9      -> -1
1887db96d56Sopenharmony_cicomx246 compare  -80E-1  9      -> -1
1897db96d56Sopenharmony_cicomx247 compare  -8.0    9E+0   -> -1
1907db96d56Sopenharmony_cicomx248 compare  -8.0    90E-1  -> -1
1917db96d56Sopenharmony_cicomx249 compare  -8      0.9E+1 -> -1
1927db96d56Sopenharmony_cicomx250 compare  -8      90E-1  -> -1
1937db96d56Sopenharmony_ci
1947db96d56Sopenharmony_ci-- and again, with sign changes +- ..
1957db96d56Sopenharmony_cicomx300 compare   7.0    -7.0    -> 1
1967db96d56Sopenharmony_cicomx301 compare   7.0    -7      -> 1
1977db96d56Sopenharmony_cicomx302 compare   7      -7.0    -> 1
1987db96d56Sopenharmony_cicomx303 compare   7E+0   -7.0    -> 1
1997db96d56Sopenharmony_cicomx304 compare   70E-1  -7.0    -> 1
2007db96d56Sopenharmony_cicomx305 compare   .7E+1  -7      -> 1
2017db96d56Sopenharmony_cicomx306 compare   70E-1  -7      -> 1
2027db96d56Sopenharmony_cicomx307 compare   7.0    -7E+0   -> 1
2037db96d56Sopenharmony_cicomx308 compare   7.0    -70E-1  -> 1
2047db96d56Sopenharmony_cicomx309 compare   7      -.7E+1  -> 1
2057db96d56Sopenharmony_cicomx310 compare   7      -70E-1  -> 1
2067db96d56Sopenharmony_ci
2077db96d56Sopenharmony_cicomx320 compare   8.0    -7.0    -> 1
2087db96d56Sopenharmony_cicomx321 compare   8.0    -7      -> 1
2097db96d56Sopenharmony_cicomx322 compare   8      -7.0    -> 1
2107db96d56Sopenharmony_cicomx323 compare   8E+0   -7.0    -> 1
2117db96d56Sopenharmony_cicomx324 compare   80E-1  -7.0    -> 1
2127db96d56Sopenharmony_cicomx325 compare   .8E+1  -7      -> 1
2137db96d56Sopenharmony_cicomx326 compare   80E-1  -7      -> 1
2147db96d56Sopenharmony_cicomx327 compare   8.0    -7E+0   -> 1
2157db96d56Sopenharmony_cicomx328 compare   8.0    -70E-1  -> 1
2167db96d56Sopenharmony_cicomx329 compare   8      -.7E+1  -> 1
2177db96d56Sopenharmony_cicomx330 compare   8      -70E-1  -> 1
2187db96d56Sopenharmony_ci
2197db96d56Sopenharmony_cicomx340 compare   8.0    -9.0    -> 1
2207db96d56Sopenharmony_cicomx341 compare   8.0    -9      -> 1
2217db96d56Sopenharmony_cicomx342 compare   8      -9.0    -> 1
2227db96d56Sopenharmony_cicomx343 compare   8E+0   -9.0    -> 1
2237db96d56Sopenharmony_cicomx344 compare   80E-1  -9.0    -> 1
2247db96d56Sopenharmony_cicomx345 compare   .8E+1  -9      -> 1
2257db96d56Sopenharmony_cicomx346 compare   80E-1  -9      -> 1
2267db96d56Sopenharmony_cicomx347 compare   8.0    -9E+0   -> 1
2277db96d56Sopenharmony_cicomx348 compare   8.0    -90E-1  -> 1
2287db96d56Sopenharmony_cicomx349 compare   8      -.9E+1  -> 1
2297db96d56Sopenharmony_cicomx350 compare   8      -90E-1  -> 1
2307db96d56Sopenharmony_ci
2317db96d56Sopenharmony_ci-- and again, with sign changes -- ..
2327db96d56Sopenharmony_cicomx400 compare   -7.0    -7.0    -> 0
2337db96d56Sopenharmony_cicomx401 compare   -7.0    -7      -> 0
2347db96d56Sopenharmony_cicomx402 compare   -7      -7.0    -> 0
2357db96d56Sopenharmony_cicomx403 compare   -7E+0   -7.0    -> 0
2367db96d56Sopenharmony_cicomx404 compare   -70E-1  -7.0    -> 0
2377db96d56Sopenharmony_cicomx405 compare   -.7E+1  -7      -> 0
2387db96d56Sopenharmony_cicomx406 compare   -70E-1  -7      -> 0
2397db96d56Sopenharmony_cicomx407 compare   -7.0    -7E+0   -> 0
2407db96d56Sopenharmony_cicomx408 compare   -7.0    -70E-1  -> 0
2417db96d56Sopenharmony_cicomx409 compare   -7      -.7E+1  -> 0
2427db96d56Sopenharmony_cicomx410 compare   -7      -70E-1  -> 0
2437db96d56Sopenharmony_ci
2447db96d56Sopenharmony_cicomx420 compare   -8.0    -7.0    -> -1
2457db96d56Sopenharmony_cicomx421 compare   -8.0    -7      -> -1
2467db96d56Sopenharmony_cicomx422 compare   -8      -7.0    -> -1
2477db96d56Sopenharmony_cicomx423 compare   -8E+0   -7.0    -> -1
2487db96d56Sopenharmony_cicomx424 compare   -80E-1  -7.0    -> -1
2497db96d56Sopenharmony_cicomx425 compare   -.8E+1  -7      -> -1
2507db96d56Sopenharmony_cicomx426 compare   -80E-1  -7      -> -1
2517db96d56Sopenharmony_cicomx427 compare   -8.0    -7E+0   -> -1
2527db96d56Sopenharmony_cicomx428 compare   -8.0    -70E-1  -> -1
2537db96d56Sopenharmony_cicomx429 compare   -8      -.7E+1  -> -1
2547db96d56Sopenharmony_cicomx430 compare   -8      -70E-1  -> -1
2557db96d56Sopenharmony_ci
2567db96d56Sopenharmony_cicomx440 compare   -8.0    -9.0    -> 1
2577db96d56Sopenharmony_cicomx441 compare   -8.0    -9      -> 1
2587db96d56Sopenharmony_cicomx442 compare   -8      -9.0    -> 1
2597db96d56Sopenharmony_cicomx443 compare   -8E+0   -9.0    -> 1
2607db96d56Sopenharmony_cicomx444 compare   -80E-1  -9.0    -> 1
2617db96d56Sopenharmony_cicomx445 compare   -.8E+1  -9      -> 1
2627db96d56Sopenharmony_cicomx446 compare   -80E-1  -9      -> 1
2637db96d56Sopenharmony_cicomx447 compare   -8.0    -9E+0   -> 1
2647db96d56Sopenharmony_cicomx448 compare   -8.0    -90E-1  -> 1
2657db96d56Sopenharmony_cicomx449 compare   -8      -.9E+1  -> 1
2667db96d56Sopenharmony_cicomx450 compare   -8      -90E-1  -> 1
2677db96d56Sopenharmony_ci
2687db96d56Sopenharmony_ci-- misalignment traps for little-endian
2697db96d56Sopenharmony_cicomx451 compare      1.0       0.1  -> 1
2707db96d56Sopenharmony_cicomx452 compare      0.1       1.0  -> -1
2717db96d56Sopenharmony_cicomx453 compare     10.0       0.1  -> 1
2727db96d56Sopenharmony_cicomx454 compare      0.1      10.0  -> -1
2737db96d56Sopenharmony_cicomx455 compare      100       1.0  -> 1
2747db96d56Sopenharmony_cicomx456 compare      1.0       100  -> -1
2757db96d56Sopenharmony_cicomx457 compare     1000      10.0  -> 1
2767db96d56Sopenharmony_cicomx458 compare     10.0      1000  -> -1
2777db96d56Sopenharmony_cicomx459 compare    10000     100.0  -> 1
2787db96d56Sopenharmony_cicomx460 compare    100.0     10000  -> -1
2797db96d56Sopenharmony_cicomx461 compare   100000    1000.0  -> 1
2807db96d56Sopenharmony_cicomx462 compare   1000.0    100000  -> -1
2817db96d56Sopenharmony_cicomx463 compare  1000000   10000.0  -> 1
2827db96d56Sopenharmony_cicomx464 compare  10000.0   1000000  -> -1
2837db96d56Sopenharmony_ci
2847db96d56Sopenharmony_ci-- testcases that subtract to lots of zeros at boundaries [pgr]
2857db96d56Sopenharmony_ciprecision: 40
2867db96d56Sopenharmony_cicomx470 compare 123.4560000000000000E789 123.456E789 -> 0
2877db96d56Sopenharmony_cicomx471 compare 123.456000000000000E-89 123.456E-89 -> 0
2887db96d56Sopenharmony_cicomx472 compare 123.45600000000000E789 123.456E789 -> 0
2897db96d56Sopenharmony_cicomx473 compare 123.4560000000000E-89 123.456E-89 -> 0
2907db96d56Sopenharmony_cicomx474 compare 123.456000000000E789 123.456E789 -> 0
2917db96d56Sopenharmony_cicomx475 compare 123.45600000000E-89 123.456E-89 -> 0
2927db96d56Sopenharmony_cicomx476 compare 123.4560000000E789 123.456E789 -> 0
2937db96d56Sopenharmony_cicomx477 compare 123.456000000E-89 123.456E-89 -> 0
2947db96d56Sopenharmony_cicomx478 compare 123.45600000E789 123.456E789 -> 0
2957db96d56Sopenharmony_cicomx479 compare 123.4560000E-89 123.456E-89 -> 0
2967db96d56Sopenharmony_cicomx480 compare 123.456000E789 123.456E789 -> 0
2977db96d56Sopenharmony_cicomx481 compare 123.45600E-89 123.456E-89 -> 0
2987db96d56Sopenharmony_cicomx482 compare 123.4560E789 123.456E789 -> 0
2997db96d56Sopenharmony_cicomx483 compare 123.456E-89 123.456E-89 -> 0
3007db96d56Sopenharmony_cicomx484 compare 123.456E-89 123.4560000000000000E-89 -> 0
3017db96d56Sopenharmony_cicomx485 compare 123.456E789 123.456000000000000E789 -> 0
3027db96d56Sopenharmony_cicomx486 compare 123.456E-89 123.45600000000000E-89 -> 0
3037db96d56Sopenharmony_cicomx487 compare 123.456E789 123.4560000000000E789 -> 0
3047db96d56Sopenharmony_cicomx488 compare 123.456E-89 123.456000000000E-89 -> 0
3057db96d56Sopenharmony_cicomx489 compare 123.456E789 123.45600000000E789 -> 0
3067db96d56Sopenharmony_cicomx490 compare 123.456E-89 123.4560000000E-89 -> 0
3077db96d56Sopenharmony_cicomx491 compare 123.456E789 123.456000000E789 -> 0
3087db96d56Sopenharmony_cicomx492 compare 123.456E-89 123.45600000E-89 -> 0
3097db96d56Sopenharmony_cicomx493 compare 123.456E789 123.4560000E789 -> 0
3107db96d56Sopenharmony_cicomx494 compare 123.456E-89 123.456000E-89 -> 0
3117db96d56Sopenharmony_cicomx495 compare 123.456E789 123.45600E789 -> 0
3127db96d56Sopenharmony_cicomx496 compare 123.456E-89 123.4560E-89 -> 0
3137db96d56Sopenharmony_cicomx497 compare 123.456E789 123.456E789 -> 0
3147db96d56Sopenharmony_ci
3157db96d56Sopenharmony_ci-- wide-ranging, around precision; signs equal
3167db96d56Sopenharmony_ciprecision: 9
3177db96d56Sopenharmony_cicomx500 compare    1     1E-15    -> 1
3187db96d56Sopenharmony_cicomx501 compare    1     1E-14    -> 1
3197db96d56Sopenharmony_cicomx502 compare    1     1E-13    -> 1
3207db96d56Sopenharmony_cicomx503 compare    1     1E-12    -> 1
3217db96d56Sopenharmony_cicomx504 compare    1     1E-11    -> 1
3227db96d56Sopenharmony_cicomx505 compare    1     1E-10    -> 1
3237db96d56Sopenharmony_cicomx506 compare    1     1E-9     -> 1
3247db96d56Sopenharmony_cicomx507 compare    1     1E-8     -> 1
3257db96d56Sopenharmony_cicomx508 compare    1     1E-7     -> 1
3267db96d56Sopenharmony_cicomx509 compare    1     1E-6     -> 1
3277db96d56Sopenharmony_cicomx510 compare    1     1E-5     -> 1
3287db96d56Sopenharmony_cicomx511 compare    1     1E-4     -> 1
3297db96d56Sopenharmony_cicomx512 compare    1     1E-3     -> 1
3307db96d56Sopenharmony_cicomx513 compare    1     1E-2     -> 1
3317db96d56Sopenharmony_cicomx514 compare    1     1E-1     -> 1
3327db96d56Sopenharmony_cicomx515 compare    1     1E-0     -> 0
3337db96d56Sopenharmony_cicomx516 compare    1     1E+1     -> -1
3347db96d56Sopenharmony_cicomx517 compare    1     1E+2     -> -1
3357db96d56Sopenharmony_cicomx518 compare    1     1E+3     -> -1
3367db96d56Sopenharmony_cicomx519 compare    1     1E+4     -> -1
3377db96d56Sopenharmony_cicomx521 compare    1     1E+5     -> -1
3387db96d56Sopenharmony_cicomx522 compare    1     1E+6     -> -1
3397db96d56Sopenharmony_cicomx523 compare    1     1E+7     -> -1
3407db96d56Sopenharmony_cicomx524 compare    1     1E+8     -> -1
3417db96d56Sopenharmony_cicomx525 compare    1     1E+9     -> -1
3427db96d56Sopenharmony_cicomx526 compare    1     1E+10    -> -1
3437db96d56Sopenharmony_cicomx527 compare    1     1E+11    -> -1
3447db96d56Sopenharmony_cicomx528 compare    1     1E+12    -> -1
3457db96d56Sopenharmony_cicomx529 compare    1     1E+13    -> -1
3467db96d56Sopenharmony_cicomx530 compare    1     1E+14    -> -1
3477db96d56Sopenharmony_cicomx531 compare    1     1E+15    -> -1
3487db96d56Sopenharmony_ci-- LR swap
3497db96d56Sopenharmony_cicomx540 compare    1E-15  1       -> -1
3507db96d56Sopenharmony_cicomx541 compare    1E-14  1       -> -1
3517db96d56Sopenharmony_cicomx542 compare    1E-13  1       -> -1
3527db96d56Sopenharmony_cicomx543 compare    1E-12  1       -> -1
3537db96d56Sopenharmony_cicomx544 compare    1E-11  1       -> -1
3547db96d56Sopenharmony_cicomx545 compare    1E-10  1       -> -1
3557db96d56Sopenharmony_cicomx546 compare    1E-9   1       -> -1
3567db96d56Sopenharmony_cicomx547 compare    1E-8   1       -> -1
3577db96d56Sopenharmony_cicomx548 compare    1E-7   1       -> -1
3587db96d56Sopenharmony_cicomx549 compare    1E-6   1       -> -1
3597db96d56Sopenharmony_cicomx550 compare    1E-5   1       -> -1
3607db96d56Sopenharmony_cicomx551 compare    1E-4   1       -> -1
3617db96d56Sopenharmony_cicomx552 compare    1E-3   1       -> -1
3627db96d56Sopenharmony_cicomx553 compare    1E-2   1       -> -1
3637db96d56Sopenharmony_cicomx554 compare    1E-1   1       -> -1
3647db96d56Sopenharmony_cicomx555 compare    1E-0   1       ->  0
3657db96d56Sopenharmony_cicomx556 compare    1E+1   1       ->  1
3667db96d56Sopenharmony_cicomx557 compare    1E+2   1       ->  1
3677db96d56Sopenharmony_cicomx558 compare    1E+3   1       ->  1
3687db96d56Sopenharmony_cicomx559 compare    1E+4   1       ->  1
3697db96d56Sopenharmony_cicomx561 compare    1E+5   1       ->  1
3707db96d56Sopenharmony_cicomx562 compare    1E+6   1       ->  1
3717db96d56Sopenharmony_cicomx563 compare    1E+7   1       ->  1
3727db96d56Sopenharmony_cicomx564 compare    1E+8   1       ->  1
3737db96d56Sopenharmony_cicomx565 compare    1E+9   1       ->  1
3747db96d56Sopenharmony_cicomx566 compare    1E+10  1       ->  1
3757db96d56Sopenharmony_cicomx567 compare    1E+11  1       ->  1
3767db96d56Sopenharmony_cicomx568 compare    1E+12  1       ->  1
3777db96d56Sopenharmony_cicomx569 compare    1E+13  1       ->  1
3787db96d56Sopenharmony_cicomx570 compare    1E+14  1       ->  1
3797db96d56Sopenharmony_cicomx571 compare    1E+15  1       ->  1
3807db96d56Sopenharmony_ci-- similar with a useful coefficient, one side only
3817db96d56Sopenharmony_cicomx580 compare  0.000000987654321     1E-15    -> 1
3827db96d56Sopenharmony_cicomx581 compare  0.000000987654321     1E-14    -> 1
3837db96d56Sopenharmony_cicomx582 compare  0.000000987654321     1E-13    -> 1
3847db96d56Sopenharmony_cicomx583 compare  0.000000987654321     1E-12    -> 1
3857db96d56Sopenharmony_cicomx584 compare  0.000000987654321     1E-11    -> 1
3867db96d56Sopenharmony_cicomx585 compare  0.000000987654321     1E-10    -> 1
3877db96d56Sopenharmony_cicomx586 compare  0.000000987654321     1E-9     -> 1
3887db96d56Sopenharmony_cicomx587 compare  0.000000987654321     1E-8     -> 1
3897db96d56Sopenharmony_cicomx588 compare  0.000000987654321     1E-7     -> 1
3907db96d56Sopenharmony_cicomx589 compare  0.000000987654321     1E-6     -> -1
3917db96d56Sopenharmony_cicomx590 compare  0.000000987654321     1E-5     -> -1
3927db96d56Sopenharmony_cicomx591 compare  0.000000987654321     1E-4     -> -1
3937db96d56Sopenharmony_cicomx592 compare  0.000000987654321     1E-3     -> -1
3947db96d56Sopenharmony_cicomx593 compare  0.000000987654321     1E-2     -> -1
3957db96d56Sopenharmony_cicomx594 compare  0.000000987654321     1E-1     -> -1
3967db96d56Sopenharmony_cicomx595 compare  0.000000987654321     1E-0     -> -1
3977db96d56Sopenharmony_cicomx596 compare  0.000000987654321     1E+1     -> -1
3987db96d56Sopenharmony_cicomx597 compare  0.000000987654321     1E+2     -> -1
3997db96d56Sopenharmony_cicomx598 compare  0.000000987654321     1E+3     -> -1
4007db96d56Sopenharmony_cicomx599 compare  0.000000987654321     1E+4     -> -1
4017db96d56Sopenharmony_ci
4027db96d56Sopenharmony_ci-- check some unit-y traps
4037db96d56Sopenharmony_ciprecision: 20
4047db96d56Sopenharmony_cicomx600 compare   12            12.2345 -> -1
4057db96d56Sopenharmony_cicomx601 compare   12.0          12.2345 -> -1
4067db96d56Sopenharmony_cicomx602 compare   12.00         12.2345 -> -1
4077db96d56Sopenharmony_cicomx603 compare   12.000        12.2345 -> -1
4087db96d56Sopenharmony_cicomx604 compare   12.0000       12.2345 -> -1
4097db96d56Sopenharmony_cicomx605 compare   12.00000      12.2345 -> -1
4107db96d56Sopenharmony_cicomx606 compare   12.000000     12.2345 -> -1
4117db96d56Sopenharmony_cicomx607 compare   12.0000000    12.2345 -> -1
4127db96d56Sopenharmony_cicomx608 compare   12.00000000   12.2345 -> -1
4137db96d56Sopenharmony_cicomx609 compare   12.000000000  12.2345 -> -1
4147db96d56Sopenharmony_cicomx610 compare   12.1234 12            ->  1
4157db96d56Sopenharmony_cicomx611 compare   12.1234 12.0          ->  1
4167db96d56Sopenharmony_cicomx612 compare   12.1234 12.00         ->  1
4177db96d56Sopenharmony_cicomx613 compare   12.1234 12.000        ->  1
4187db96d56Sopenharmony_cicomx614 compare   12.1234 12.0000       ->  1
4197db96d56Sopenharmony_cicomx615 compare   12.1234 12.00000      ->  1
4207db96d56Sopenharmony_cicomx616 compare   12.1234 12.000000     ->  1
4217db96d56Sopenharmony_cicomx617 compare   12.1234 12.0000000    ->  1
4227db96d56Sopenharmony_cicomx618 compare   12.1234 12.00000000   ->  1
4237db96d56Sopenharmony_cicomx619 compare   12.1234 12.000000000  ->  1
4247db96d56Sopenharmony_cicomx620 compare  -12           -12.2345 ->  1
4257db96d56Sopenharmony_cicomx621 compare  -12.0         -12.2345 ->  1
4267db96d56Sopenharmony_cicomx622 compare  -12.00        -12.2345 ->  1
4277db96d56Sopenharmony_cicomx623 compare  -12.000       -12.2345 ->  1
4287db96d56Sopenharmony_cicomx624 compare  -12.0000      -12.2345 ->  1
4297db96d56Sopenharmony_cicomx625 compare  -12.00000     -12.2345 ->  1
4307db96d56Sopenharmony_cicomx626 compare  -12.000000    -12.2345 ->  1
4317db96d56Sopenharmony_cicomx627 compare  -12.0000000   -12.2345 ->  1
4327db96d56Sopenharmony_cicomx628 compare  -12.00000000  -12.2345 ->  1
4337db96d56Sopenharmony_cicomx629 compare  -12.000000000 -12.2345 ->  1
4347db96d56Sopenharmony_cicomx630 compare  -12.1234 -12           -> -1
4357db96d56Sopenharmony_cicomx631 compare  -12.1234 -12.0         -> -1
4367db96d56Sopenharmony_cicomx632 compare  -12.1234 -12.00        -> -1
4377db96d56Sopenharmony_cicomx633 compare  -12.1234 -12.000       -> -1
4387db96d56Sopenharmony_cicomx634 compare  -12.1234 -12.0000      -> -1
4397db96d56Sopenharmony_cicomx635 compare  -12.1234 -12.00000     -> -1
4407db96d56Sopenharmony_cicomx636 compare  -12.1234 -12.000000    -> -1
4417db96d56Sopenharmony_cicomx637 compare  -12.1234 -12.0000000   -> -1
4427db96d56Sopenharmony_cicomx638 compare  -12.1234 -12.00000000  -> -1
4437db96d56Sopenharmony_cicomx639 compare  -12.1234 -12.000000000 -> -1
4447db96d56Sopenharmony_ciprecision: 9
4457db96d56Sopenharmony_ci
4467db96d56Sopenharmony_ci-- extended zeros
4477db96d56Sopenharmony_cicomx640 compare   0     0   -> 0
4487db96d56Sopenharmony_cicomx641 compare   0    -0   -> 0
4497db96d56Sopenharmony_cicomx642 compare   0    -0.0 -> 0
4507db96d56Sopenharmony_cicomx643 compare   0     0.0 -> 0
4517db96d56Sopenharmony_cicomx644 compare  -0     0   -> 0
4527db96d56Sopenharmony_cicomx645 compare  -0    -0   -> 0
4537db96d56Sopenharmony_cicomx646 compare  -0    -0.0 -> 0
4547db96d56Sopenharmony_cicomx647 compare  -0     0.0 -> 0
4557db96d56Sopenharmony_cicomx648 compare   0.0   0   -> 0
4567db96d56Sopenharmony_cicomx649 compare   0.0  -0   -> 0
4577db96d56Sopenharmony_cicomx650 compare   0.0  -0.0 -> 0
4587db96d56Sopenharmony_cicomx651 compare   0.0   0.0 -> 0
4597db96d56Sopenharmony_cicomx652 compare  -0.0   0   -> 0
4607db96d56Sopenharmony_cicomx653 compare  -0.0  -0   -> 0
4617db96d56Sopenharmony_cicomx654 compare  -0.0  -0.0 -> 0
4627db96d56Sopenharmony_cicomx655 compare  -0.0   0.0 -> 0
4637db96d56Sopenharmony_ci
4647db96d56Sopenharmony_cicomx656 compare  -0E1   0.0 -> 0
4657db96d56Sopenharmony_cicomx657 compare  -0E2   0.0 -> 0
4667db96d56Sopenharmony_cicomx658 compare   0E1   0.0 -> 0
4677db96d56Sopenharmony_cicomx659 compare   0E2   0.0 -> 0
4687db96d56Sopenharmony_cicomx660 compare  -0E1   0   -> 0
4697db96d56Sopenharmony_cicomx661 compare  -0E2   0   -> 0
4707db96d56Sopenharmony_cicomx662 compare   0E1   0   -> 0
4717db96d56Sopenharmony_cicomx663 compare   0E2   0   -> 0
4727db96d56Sopenharmony_cicomx664 compare  -0E1  -0E1 -> 0
4737db96d56Sopenharmony_cicomx665 compare  -0E2  -0E1 -> 0
4747db96d56Sopenharmony_cicomx666 compare   0E1  -0E1 -> 0
4757db96d56Sopenharmony_cicomx667 compare   0E2  -0E1 -> 0
4767db96d56Sopenharmony_cicomx668 compare  -0E1  -0E2 -> 0
4777db96d56Sopenharmony_cicomx669 compare  -0E2  -0E2 -> 0
4787db96d56Sopenharmony_cicomx670 compare   0E1  -0E2 -> 0
4797db96d56Sopenharmony_cicomx671 compare   0E2  -0E2 -> 0
4807db96d56Sopenharmony_cicomx672 compare  -0E1   0E1 -> 0
4817db96d56Sopenharmony_cicomx673 compare  -0E2   0E1 -> 0
4827db96d56Sopenharmony_cicomx674 compare   0E1   0E1 -> 0
4837db96d56Sopenharmony_cicomx675 compare   0E2   0E1 -> 0
4847db96d56Sopenharmony_cicomx676 compare  -0E1   0E2 -> 0
4857db96d56Sopenharmony_cicomx677 compare  -0E2   0E2 -> 0
4867db96d56Sopenharmony_cicomx678 compare   0E1   0E2 -> 0
4877db96d56Sopenharmony_cicomx679 compare   0E2   0E2 -> 0
4887db96d56Sopenharmony_ci
4897db96d56Sopenharmony_ci-- trailing zeros; unit-y
4907db96d56Sopenharmony_ciprecision: 20
4917db96d56Sopenharmony_cicomx680 compare   12    12           -> 0
4927db96d56Sopenharmony_cicomx681 compare   12    12.0         -> 0
4937db96d56Sopenharmony_cicomx682 compare   12    12.00        -> 0
4947db96d56Sopenharmony_cicomx683 compare   12    12.000       -> 0
4957db96d56Sopenharmony_cicomx684 compare   12    12.0000      -> 0
4967db96d56Sopenharmony_cicomx685 compare   12    12.00000     -> 0
4977db96d56Sopenharmony_cicomx686 compare   12    12.000000    -> 0
4987db96d56Sopenharmony_cicomx687 compare   12    12.0000000   -> 0
4997db96d56Sopenharmony_cicomx688 compare   12    12.00000000  -> 0
5007db96d56Sopenharmony_cicomx689 compare   12    12.000000000 -> 0
5017db96d56Sopenharmony_cicomx690 compare   12              12 -> 0
5027db96d56Sopenharmony_cicomx691 compare   12.0            12 -> 0
5037db96d56Sopenharmony_cicomx692 compare   12.00           12 -> 0
5047db96d56Sopenharmony_cicomx693 compare   12.000          12 -> 0
5057db96d56Sopenharmony_cicomx694 compare   12.0000         12 -> 0
5067db96d56Sopenharmony_cicomx695 compare   12.00000        12 -> 0
5077db96d56Sopenharmony_cicomx696 compare   12.000000       12 -> 0
5087db96d56Sopenharmony_cicomx697 compare   12.0000000      12 -> 0
5097db96d56Sopenharmony_cicomx698 compare   12.00000000     12 -> 0
5107db96d56Sopenharmony_cicomx699 compare   12.000000000    12 -> 0
5117db96d56Sopenharmony_ci
5127db96d56Sopenharmony_ci-- long operand checks
5137db96d56Sopenharmony_cimaxexponent: 999
5147db96d56Sopenharmony_ciminexponent: -999
5157db96d56Sopenharmony_ciprecision: 9
5167db96d56Sopenharmony_cicomx701 compare 12345678000  1 ->  1
5177db96d56Sopenharmony_cicomx702 compare 1 12345678000  -> -1
5187db96d56Sopenharmony_cicomx703 compare 1234567800   1 ->  1
5197db96d56Sopenharmony_cicomx704 compare 1 1234567800   -> -1
5207db96d56Sopenharmony_cicomx705 compare 1234567890   1 ->  1
5217db96d56Sopenharmony_cicomx706 compare 1 1234567890   -> -1
5227db96d56Sopenharmony_cicomx707 compare 1234567891   1 ->  1
5237db96d56Sopenharmony_cicomx708 compare 1 1234567891   -> -1
5247db96d56Sopenharmony_cicomx709 compare 12345678901  1 ->  1
5257db96d56Sopenharmony_cicomx710 compare 1 12345678901  -> -1
5267db96d56Sopenharmony_cicomx711 compare 1234567896   1 ->  1
5277db96d56Sopenharmony_cicomx712 compare 1 1234567896   -> -1
5287db96d56Sopenharmony_cicomx713 compare -1234567891  1 -> -1
5297db96d56Sopenharmony_cicomx714 compare 1 -1234567891  ->  1
5307db96d56Sopenharmony_cicomx715 compare -12345678901 1 -> -1
5317db96d56Sopenharmony_cicomx716 compare 1 -12345678901 ->  1
5327db96d56Sopenharmony_cicomx717 compare -1234567896  1 -> -1
5337db96d56Sopenharmony_cicomx718 compare 1 -1234567896  ->  1
5347db96d56Sopenharmony_ci
5357db96d56Sopenharmony_ciprecision: 15
5367db96d56Sopenharmony_ci-- same with plenty of precision
5377db96d56Sopenharmony_cicomx721 compare 12345678000 1 -> 1
5387db96d56Sopenharmony_cicomx722 compare 1 12345678000 -> -1
5397db96d56Sopenharmony_cicomx723 compare 1234567800  1 -> 1
5407db96d56Sopenharmony_cicomx724 compare 1 1234567800  -> -1
5417db96d56Sopenharmony_cicomx725 compare 1234567890  1 -> 1
5427db96d56Sopenharmony_cicomx726 compare 1 1234567890  -> -1
5437db96d56Sopenharmony_cicomx727 compare 1234567891  1 -> 1
5447db96d56Sopenharmony_cicomx728 compare 1 1234567891  -> -1
5457db96d56Sopenharmony_cicomx729 compare 12345678901 1 -> 1
5467db96d56Sopenharmony_cicomx730 compare 1 12345678901 -> -1
5477db96d56Sopenharmony_cicomx731 compare 1234567896  1 -> 1
5487db96d56Sopenharmony_cicomx732 compare 1 1234567896  -> -1
5497db96d56Sopenharmony_ci
5507db96d56Sopenharmony_ci-- residue cases
5517db96d56Sopenharmony_ciprecision: 5
5527db96d56Sopenharmony_cicomx740 compare  1  0.9999999  -> 1
5537db96d56Sopenharmony_cicomx741 compare  1  0.999999   -> 1
5547db96d56Sopenharmony_cicomx742 compare  1  0.99999    -> 1
5557db96d56Sopenharmony_cicomx743 compare  1  1.0000     -> 0
5567db96d56Sopenharmony_cicomx744 compare  1  1.00001    -> -1
5577db96d56Sopenharmony_cicomx745 compare  1  1.000001   -> -1
5587db96d56Sopenharmony_cicomx746 compare  1  1.0000001  -> -1
5597db96d56Sopenharmony_cicomx750 compare  0.9999999  1  -> -1
5607db96d56Sopenharmony_cicomx751 compare  0.999999   1  -> -1
5617db96d56Sopenharmony_cicomx752 compare  0.99999    1  -> -1
5627db96d56Sopenharmony_cicomx753 compare  1.0000     1  -> 0
5637db96d56Sopenharmony_cicomx754 compare  1.00001    1  -> 1
5647db96d56Sopenharmony_cicomx755 compare  1.000001   1  -> 1
5657db96d56Sopenharmony_cicomx756 compare  1.0000001  1  -> 1
5667db96d56Sopenharmony_ci
5677db96d56Sopenharmony_ci-- a selection of longies
5687db96d56Sopenharmony_cicomx760 compare -36852134.84194296250843579428931 -5830629.8347085025808756560357940 -> -1
5697db96d56Sopenharmony_cicomx761 compare -36852134.84194296250843579428931 -36852134.84194296250843579428931  -> 0
5707db96d56Sopenharmony_cicomx762 compare -36852134.94194296250843579428931 -36852134.84194296250843579428931  -> -1
5717db96d56Sopenharmony_cicomx763 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5727db96d56Sopenharmony_ci-- precisions above or below the difference should have no effect
5737db96d56Sopenharmony_ciprecision:   11
5747db96d56Sopenharmony_cicomx764 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5757db96d56Sopenharmony_ciprecision:   10
5767db96d56Sopenharmony_cicomx765 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5777db96d56Sopenharmony_ciprecision:    9
5787db96d56Sopenharmony_cicomx766 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5797db96d56Sopenharmony_ciprecision:    8
5807db96d56Sopenharmony_cicomx767 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5817db96d56Sopenharmony_ciprecision:    7
5827db96d56Sopenharmony_cicomx768 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5837db96d56Sopenharmony_ciprecision:    6
5847db96d56Sopenharmony_cicomx769 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5857db96d56Sopenharmony_ciprecision:    5
5867db96d56Sopenharmony_cicomx770 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5877db96d56Sopenharmony_ciprecision:    4
5887db96d56Sopenharmony_cicomx771 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5897db96d56Sopenharmony_ciprecision:    3
5907db96d56Sopenharmony_cicomx772 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5917db96d56Sopenharmony_ciprecision:    2
5927db96d56Sopenharmony_cicomx773 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5937db96d56Sopenharmony_ciprecision:    1
5947db96d56Sopenharmony_cicomx774 compare -36852134.84194296250843579428931 -36852134.94194296250843579428931  -> 1
5957db96d56Sopenharmony_ci
5967db96d56Sopenharmony_ci-- Specials
5977db96d56Sopenharmony_ciprecision:   9
5987db96d56Sopenharmony_cicomx780 compare  Inf  -Inf   ->  1
5997db96d56Sopenharmony_cicomx781 compare  Inf  -1000  ->  1
6007db96d56Sopenharmony_cicomx782 compare  Inf  -1     ->  1
6017db96d56Sopenharmony_cicomx783 compare  Inf  -0     ->  1
6027db96d56Sopenharmony_cicomx784 compare  Inf   0     ->  1
6037db96d56Sopenharmony_cicomx785 compare  Inf   1     ->  1
6047db96d56Sopenharmony_cicomx786 compare  Inf   1000  ->  1
6057db96d56Sopenharmony_cicomx787 compare  Inf   Inf   ->  0
6067db96d56Sopenharmony_cicomx788 compare -1000  Inf   -> -1
6077db96d56Sopenharmony_cicomx789 compare -Inf   Inf   -> -1
6087db96d56Sopenharmony_cicomx790 compare -1     Inf   -> -1
6097db96d56Sopenharmony_cicomx791 compare -0     Inf   -> -1
6107db96d56Sopenharmony_cicomx792 compare  0     Inf   -> -1
6117db96d56Sopenharmony_cicomx793 compare  1     Inf   -> -1
6127db96d56Sopenharmony_cicomx794 compare  1000  Inf   -> -1
6137db96d56Sopenharmony_cicomx795 compare  Inf   Inf   ->  0
6147db96d56Sopenharmony_ci
6157db96d56Sopenharmony_cicomx800 compare -Inf  -Inf   ->  0
6167db96d56Sopenharmony_cicomx801 compare -Inf  -1000  -> -1
6177db96d56Sopenharmony_cicomx802 compare -Inf  -1     -> -1
6187db96d56Sopenharmony_cicomx803 compare -Inf  -0     -> -1
6197db96d56Sopenharmony_cicomx804 compare -Inf   0     -> -1
6207db96d56Sopenharmony_cicomx805 compare -Inf   1     -> -1
6217db96d56Sopenharmony_cicomx806 compare -Inf   1000  -> -1
6227db96d56Sopenharmony_cicomx807 compare -Inf   Inf   -> -1
6237db96d56Sopenharmony_cicomx808 compare -Inf  -Inf   ->  0
6247db96d56Sopenharmony_cicomx809 compare -1000 -Inf   ->  1
6257db96d56Sopenharmony_cicomx810 compare -1    -Inf   ->  1
6267db96d56Sopenharmony_cicomx811 compare -0    -Inf   ->  1
6277db96d56Sopenharmony_cicomx812 compare  0    -Inf   ->  1
6287db96d56Sopenharmony_cicomx813 compare  1    -Inf   ->  1
6297db96d56Sopenharmony_cicomx814 compare  1000 -Inf   ->  1
6307db96d56Sopenharmony_cicomx815 compare  Inf  -Inf   ->  1
6317db96d56Sopenharmony_ci
6327db96d56Sopenharmony_cicomx821 compare  NaN -Inf    ->  NaN
6337db96d56Sopenharmony_cicomx822 compare  NaN -1000   ->  NaN
6347db96d56Sopenharmony_cicomx823 compare  NaN -1      ->  NaN
6357db96d56Sopenharmony_cicomx824 compare  NaN -0      ->  NaN
6367db96d56Sopenharmony_cicomx825 compare  NaN  0      ->  NaN
6377db96d56Sopenharmony_cicomx826 compare  NaN  1      ->  NaN
6387db96d56Sopenharmony_cicomx827 compare  NaN  1000   ->  NaN
6397db96d56Sopenharmony_cicomx828 compare  NaN  Inf    ->  NaN
6407db96d56Sopenharmony_cicomx829 compare  NaN  NaN    ->  NaN
6417db96d56Sopenharmony_cicomx830 compare -Inf  NaN    ->  NaN
6427db96d56Sopenharmony_cicomx831 compare -1000 NaN    ->  NaN
6437db96d56Sopenharmony_cicomx832 compare -1    NaN    ->  NaN
6447db96d56Sopenharmony_cicomx833 compare -0    NaN    ->  NaN
6457db96d56Sopenharmony_cicomx834 compare  0    NaN    ->  NaN
6467db96d56Sopenharmony_cicomx835 compare  1    NaN    ->  NaN
6477db96d56Sopenharmony_cicomx836 compare  1000 NaN    ->  NaN
6487db96d56Sopenharmony_cicomx837 compare  Inf  NaN    ->  NaN
6497db96d56Sopenharmony_cicomx838 compare -NaN -NaN    -> -NaN
6507db96d56Sopenharmony_cicomx839 compare +NaN -NaN    ->  NaN
6517db96d56Sopenharmony_cicomx840 compare -NaN +NaN    -> -NaN
6527db96d56Sopenharmony_ci
6537db96d56Sopenharmony_cicomx841 compare  sNaN -Inf   ->  NaN  Invalid_operation
6547db96d56Sopenharmony_cicomx842 compare  sNaN -1000  ->  NaN  Invalid_operation
6557db96d56Sopenharmony_cicomx843 compare  sNaN -1     ->  NaN  Invalid_operation
6567db96d56Sopenharmony_cicomx844 compare  sNaN -0     ->  NaN  Invalid_operation
6577db96d56Sopenharmony_cicomx845 compare  sNaN  0     ->  NaN  Invalid_operation
6587db96d56Sopenharmony_cicomx846 compare  sNaN  1     ->  NaN  Invalid_operation
6597db96d56Sopenharmony_cicomx847 compare  sNaN  1000  ->  NaN  Invalid_operation
6607db96d56Sopenharmony_cicomx848 compare  sNaN  NaN   ->  NaN  Invalid_operation
6617db96d56Sopenharmony_cicomx849 compare  sNaN sNaN   ->  NaN  Invalid_operation
6627db96d56Sopenharmony_cicomx850 compare  NaN  sNaN   ->  NaN  Invalid_operation
6637db96d56Sopenharmony_cicomx851 compare -Inf  sNaN   ->  NaN  Invalid_operation
6647db96d56Sopenharmony_cicomx852 compare -1000 sNaN   ->  NaN  Invalid_operation
6657db96d56Sopenharmony_cicomx853 compare -1    sNaN   ->  NaN  Invalid_operation
6667db96d56Sopenharmony_cicomx854 compare -0    sNaN   ->  NaN  Invalid_operation
6677db96d56Sopenharmony_cicomx855 compare  0    sNaN   ->  NaN  Invalid_operation
6687db96d56Sopenharmony_cicomx856 compare  1    sNaN   ->  NaN  Invalid_operation
6697db96d56Sopenharmony_cicomx857 compare  1000 sNaN   ->  NaN  Invalid_operation
6707db96d56Sopenharmony_cicomx858 compare  Inf  sNaN   ->  NaN  Invalid_operation
6717db96d56Sopenharmony_cicomx859 compare  NaN  sNaN   ->  NaN  Invalid_operation
6727db96d56Sopenharmony_ci
6737db96d56Sopenharmony_ci-- propagating NaNs
6747db96d56Sopenharmony_cicomx860 compare  NaN9 -Inf   ->  NaN9
6757db96d56Sopenharmony_cicomx861 compare  NaN8  999   ->  NaN8
6767db96d56Sopenharmony_cicomx862 compare  NaN77 Inf   ->  NaN77
6777db96d56Sopenharmony_cicomx863 compare -NaN67 NaN5  -> -NaN67
6787db96d56Sopenharmony_cicomx864 compare -Inf  -NaN4  -> -NaN4
6797db96d56Sopenharmony_cicomx865 compare -999  -NaN33 -> -NaN33
6807db96d56Sopenharmony_cicomx866 compare  Inf   NaN2  ->  NaN2
6817db96d56Sopenharmony_cicomx867 compare -NaN41 -NaN42 -> -NaN41
6827db96d56Sopenharmony_cicomx868 compare +NaN41 -NaN42 ->  NaN41
6837db96d56Sopenharmony_cicomx869 compare -NaN41 +NaN42 -> -NaN41
6847db96d56Sopenharmony_cicomx870 compare +NaN41 +NaN42 ->  NaN41
6857db96d56Sopenharmony_ci
6867db96d56Sopenharmony_cicomx871 compare -sNaN99 -Inf    -> -NaN99 Invalid_operation
6877db96d56Sopenharmony_cicomx872 compare  sNaN98 -11     ->  NaN98 Invalid_operation
6887db96d56Sopenharmony_cicomx873 compare  sNaN97  NaN    ->  NaN97 Invalid_operation
6897db96d56Sopenharmony_cicomx874 compare  sNaN16 sNaN94  ->  NaN16 Invalid_operation
6907db96d56Sopenharmony_cicomx875 compare  NaN85  sNaN83  ->  NaN83 Invalid_operation
6917db96d56Sopenharmony_cicomx876 compare -Inf    sNaN92  ->  NaN92 Invalid_operation
6927db96d56Sopenharmony_cicomx877 compare  088    sNaN81  ->  NaN81 Invalid_operation
6937db96d56Sopenharmony_cicomx878 compare  Inf    sNaN90  ->  NaN90 Invalid_operation
6947db96d56Sopenharmony_cicomx879 compare  NaN   -sNaN89  -> -NaN89 Invalid_operation
6957db96d56Sopenharmony_ci
6967db96d56Sopenharmony_ci-- overflow and underflow tests .. subnormal results now allowed
6977db96d56Sopenharmony_cimaxExponent: 999999999
6987db96d56Sopenharmony_ciminexponent: -999999999
6997db96d56Sopenharmony_cicomx880 compare +1.23456789012345E-0 9E+999999999 -> -1
7007db96d56Sopenharmony_cicomx881 compare 9E+999999999 +1.23456789012345E-0 ->  1
7017db96d56Sopenharmony_cicomx882 compare +0.100 9E-999999999               ->  1
7027db96d56Sopenharmony_cicomx883 compare 9E-999999999 +0.100               -> -1
7037db96d56Sopenharmony_cicomx885 compare -1.23456789012345E-0 9E+999999999 -> -1
7047db96d56Sopenharmony_cicomx886 compare 9E+999999999 -1.23456789012345E-0 ->  1
7057db96d56Sopenharmony_cicomx887 compare -0.100 9E-999999999               -> -1
7067db96d56Sopenharmony_cicomx888 compare 9E-999999999 -0.100               ->  1
7077db96d56Sopenharmony_ci
7087db96d56Sopenharmony_cicomx889 compare 1e-599999999 1e-400000001   -> -1
7097db96d56Sopenharmony_cicomx890 compare 1e-599999999 1e-400000000   -> -1
7107db96d56Sopenharmony_cicomx891 compare 1e-600000000 1e-400000000   -> -1
7117db96d56Sopenharmony_cicomx892 compare 9e-999999998 0.01           -> -1
7127db96d56Sopenharmony_cicomx893 compare 9e-999999998 0.1            -> -1
7137db96d56Sopenharmony_cicomx894 compare 0.01 9e-999999998           ->  1
7147db96d56Sopenharmony_cicomx895 compare 1e599999999 1e400000001     ->  1
7157db96d56Sopenharmony_cicomx896 compare 1e599999999 1e400000000     ->  1
7167db96d56Sopenharmony_cicomx897 compare 1e600000000 1e400000000     ->  1
7177db96d56Sopenharmony_cicomx898 compare 9e999999998 100             ->  1
7187db96d56Sopenharmony_cicomx899 compare 9e999999998 10              ->  1
7197db96d56Sopenharmony_cicomx900 compare 100  9e999999998            -> -1
7207db96d56Sopenharmony_ci-- signs
7217db96d56Sopenharmony_cicomx901 compare  1e+777777777  1e+411111111 ->  1
7227db96d56Sopenharmony_cicomx902 compare  1e+777777777 -1e+411111111 ->  1
7237db96d56Sopenharmony_cicomx903 compare -1e+777777777  1e+411111111 -> -1
7247db96d56Sopenharmony_cicomx904 compare -1e+777777777 -1e+411111111 -> -1
7257db96d56Sopenharmony_cicomx905 compare  1e-777777777  1e-411111111 -> -1
7267db96d56Sopenharmony_cicomx906 compare  1e-777777777 -1e-411111111 ->  1
7277db96d56Sopenharmony_cicomx907 compare -1e-777777777  1e-411111111 -> -1
7287db96d56Sopenharmony_cicomx908 compare -1e-777777777 -1e-411111111 ->  1
7297db96d56Sopenharmony_ci
7307db96d56Sopenharmony_ci-- spread zeros
7317db96d56Sopenharmony_cicomx910 compare   0E-383  0       ->  0
7327db96d56Sopenharmony_cicomx911 compare   0E-383 -0       ->  0
7337db96d56Sopenharmony_cicomx912 compare  -0E-383  0       ->  0
7347db96d56Sopenharmony_cicomx913 compare  -0E-383 -0       ->  0
7357db96d56Sopenharmony_cicomx914 compare   0E-383  0E+384  ->  0
7367db96d56Sopenharmony_cicomx915 compare   0E-383 -0E+384  ->  0
7377db96d56Sopenharmony_cicomx916 compare  -0E-383  0E+384  ->  0
7387db96d56Sopenharmony_cicomx917 compare  -0E-383 -0E+384  ->  0
7397db96d56Sopenharmony_cicomx918 compare   0       0E+384  ->  0
7407db96d56Sopenharmony_cicomx919 compare   0      -0E+384  ->  0
7417db96d56Sopenharmony_cicomx920 compare  -0       0E+384  ->  0
7427db96d56Sopenharmony_cicomx921 compare  -0      -0E+384  ->  0
7437db96d56Sopenharmony_cicomx930 compare   0E+384  0       ->  0
7447db96d56Sopenharmony_cicomx931 compare   0E+384 -0       ->  0
7457db96d56Sopenharmony_cicomx932 compare  -0E+384  0       ->  0
7467db96d56Sopenharmony_cicomx933 compare  -0E+384 -0       ->  0
7477db96d56Sopenharmony_cicomx934 compare   0E+384  0E-383  ->  0
7487db96d56Sopenharmony_cicomx935 compare   0E+384 -0E-383  ->  0
7497db96d56Sopenharmony_cicomx936 compare  -0E+384  0E-383  ->  0
7507db96d56Sopenharmony_cicomx937 compare  -0E+384 -0E-383  ->  0
7517db96d56Sopenharmony_cicomx938 compare   0       0E-383  ->  0
7527db96d56Sopenharmony_cicomx939 compare   0      -0E-383  ->  0
7537db96d56Sopenharmony_cicomx940 compare  -0       0E-383  ->  0
7547db96d56Sopenharmony_cicomx941 compare  -0      -0E-383  ->  0
7557db96d56Sopenharmony_ci
7567db96d56Sopenharmony_ci-- Null tests
7577db96d56Sopenharmony_cicomx990 compare 10  # -> NaN Invalid_operation
7587db96d56Sopenharmony_cicomx991 compare  # 10 -> NaN Invalid_operation
759