17db96d56Sopenharmony_ci------------------------------------------------------------------------
27db96d56Sopenharmony_ci-- ddDivide.decTest -- decDouble division                             --
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_ciprecision:   16
237db96d56Sopenharmony_cimaxExponent: 384
247db96d56Sopenharmony_ciminExponent: -383
257db96d56Sopenharmony_ciextended:    1
267db96d56Sopenharmony_ciclamp:       1
277db96d56Sopenharmony_cirounding:    half_even
287db96d56Sopenharmony_ci
297db96d56Sopenharmony_ci-- sanity checks
307db96d56Sopenharmony_cidddiv001 divide  1     1    ->  1
317db96d56Sopenharmony_cidddiv002 divide  2     1    ->  2
327db96d56Sopenharmony_cidddiv003 divide  1     2    ->  0.5
337db96d56Sopenharmony_cidddiv004 divide  2     2    ->  1
347db96d56Sopenharmony_cidddiv005 divide  0     1    ->  0
357db96d56Sopenharmony_cidddiv006 divide  0     2    ->  0
367db96d56Sopenharmony_cidddiv007 divide  1     3    ->  0.3333333333333333 Inexact Rounded
377db96d56Sopenharmony_cidddiv008 divide  2     3    ->  0.6666666666666667 Inexact Rounded
387db96d56Sopenharmony_cidddiv009 divide  3     3    ->  1
397db96d56Sopenharmony_ci
407db96d56Sopenharmony_cidddiv010 divide  2.4   1    ->  2.4
417db96d56Sopenharmony_cidddiv011 divide  2.4   -1   ->  -2.4
427db96d56Sopenharmony_cidddiv012 divide  -2.4  1    ->  -2.4
437db96d56Sopenharmony_cidddiv013 divide  -2.4  -1   ->  2.4
447db96d56Sopenharmony_cidddiv014 divide  2.40  1    ->  2.40
457db96d56Sopenharmony_cidddiv015 divide  2.400 1    ->  2.400
467db96d56Sopenharmony_cidddiv016 divide  2.4   2    ->  1.2
477db96d56Sopenharmony_cidddiv017 divide  2.400 2    ->  1.200
487db96d56Sopenharmony_cidddiv018 divide  2.    2    ->  1
497db96d56Sopenharmony_cidddiv019 divide  20    20   ->  1
507db96d56Sopenharmony_ci
517db96d56Sopenharmony_cidddiv020 divide  187   187    ->  1
527db96d56Sopenharmony_cidddiv021 divide  5     2      ->  2.5
537db96d56Sopenharmony_cidddiv022 divide  50    20     ->  2.5
547db96d56Sopenharmony_cidddiv023 divide  500   200    ->  2.5
557db96d56Sopenharmony_cidddiv024 divide  50.0  20.0   ->  2.5
567db96d56Sopenharmony_cidddiv025 divide  5.00  2.00   ->  2.5
577db96d56Sopenharmony_cidddiv026 divide  5     2.0    ->  2.5
587db96d56Sopenharmony_cidddiv027 divide  5     2.000  ->  2.5
597db96d56Sopenharmony_cidddiv028 divide  5     0.20   ->  25
607db96d56Sopenharmony_cidddiv029 divide  5     0.200  ->  25
617db96d56Sopenharmony_cidddiv030 divide  10    1      ->  10
627db96d56Sopenharmony_cidddiv031 divide  100   1      ->  100
637db96d56Sopenharmony_cidddiv032 divide  1000  1      ->  1000
647db96d56Sopenharmony_cidddiv033 divide  1000  100    ->  10
657db96d56Sopenharmony_ci
667db96d56Sopenharmony_cidddiv035 divide  1     2      ->  0.5
677db96d56Sopenharmony_cidddiv036 divide  1     4      ->  0.25
687db96d56Sopenharmony_cidddiv037 divide  1     8      ->  0.125
697db96d56Sopenharmony_cidddiv038 divide  1     16     ->  0.0625
707db96d56Sopenharmony_cidddiv039 divide  1     32     ->  0.03125
717db96d56Sopenharmony_cidddiv040 divide  1     64     ->  0.015625
727db96d56Sopenharmony_cidddiv041 divide  1    -2      ->  -0.5
737db96d56Sopenharmony_cidddiv042 divide  1    -4      ->  -0.25
747db96d56Sopenharmony_cidddiv043 divide  1    -8      ->  -0.125
757db96d56Sopenharmony_cidddiv044 divide  1    -16     ->  -0.0625
767db96d56Sopenharmony_cidddiv045 divide  1    -32     ->  -0.03125
777db96d56Sopenharmony_cidddiv046 divide  1    -64     ->  -0.015625
787db96d56Sopenharmony_cidddiv047 divide -1     2      ->  -0.5
797db96d56Sopenharmony_cidddiv048 divide -1     4      ->  -0.25
807db96d56Sopenharmony_cidddiv049 divide -1     8      ->  -0.125
817db96d56Sopenharmony_cidddiv050 divide -1     16     ->  -0.0625
827db96d56Sopenharmony_cidddiv051 divide -1     32     ->  -0.03125
837db96d56Sopenharmony_cidddiv052 divide -1     64     ->  -0.015625
847db96d56Sopenharmony_cidddiv053 divide -1    -2      ->  0.5
857db96d56Sopenharmony_cidddiv054 divide -1    -4      ->  0.25
867db96d56Sopenharmony_cidddiv055 divide -1    -8      ->  0.125
877db96d56Sopenharmony_cidddiv056 divide -1    -16     ->  0.0625
887db96d56Sopenharmony_cidddiv057 divide -1    -32     ->  0.03125
897db96d56Sopenharmony_cidddiv058 divide -1    -64     ->  0.015625
907db96d56Sopenharmony_ci
917db96d56Sopenharmony_ci-- bcdTime
927db96d56Sopenharmony_cidddiv060 divide  1 7                   -> 0.1428571428571429 Inexact Rounded
937db96d56Sopenharmony_cidddiv061 divide 1.2345678  1.9876543   -> 0.6211179680490717 Inexact Rounded
947db96d56Sopenharmony_ci
957db96d56Sopenharmony_ci--               1234567890123456
967db96d56Sopenharmony_cidddiv071 divide  9999999999999999 1  ->  9999999999999999
977db96d56Sopenharmony_cidddiv072 divide  999999999999999  1  ->  999999999999999
987db96d56Sopenharmony_cidddiv073 divide  99999999999999   1  ->  99999999999999
997db96d56Sopenharmony_cidddiv074 divide  9999999999999    1  ->  9999999999999
1007db96d56Sopenharmony_cidddiv075 divide  999999999999     1  ->  999999999999
1017db96d56Sopenharmony_cidddiv076 divide  99999999999      1  ->  99999999999
1027db96d56Sopenharmony_cidddiv077 divide  9999999999       1  ->  9999999999
1037db96d56Sopenharmony_cidddiv078 divide  999999999        1  ->  999999999
1047db96d56Sopenharmony_cidddiv079 divide  99999999         1  ->  99999999
1057db96d56Sopenharmony_cidddiv080 divide  9999999          1  ->  9999999
1067db96d56Sopenharmony_cidddiv081 divide  999999           1  ->  999999
1077db96d56Sopenharmony_cidddiv082 divide  99999            1  ->  99999
1087db96d56Sopenharmony_cidddiv083 divide  9999             1  ->  9999
1097db96d56Sopenharmony_cidddiv084 divide  999              1  ->  999
1107db96d56Sopenharmony_cidddiv085 divide  99               1  ->  99
1117db96d56Sopenharmony_cidddiv086 divide  9                1  ->  9
1127db96d56Sopenharmony_ci
1137db96d56Sopenharmony_cidddiv090 divide  0.            1    ->  0
1147db96d56Sopenharmony_cidddiv091 divide  .0            1    ->  0.0
1157db96d56Sopenharmony_cidddiv092 divide  0.00          1    ->  0.00
1167db96d56Sopenharmony_cidddiv093 divide  0.00E+9       1    ->  0E+7
1177db96d56Sopenharmony_cidddiv094 divide  0.0000E-50    1    ->  0E-54
1187db96d56Sopenharmony_ci
1197db96d56Sopenharmony_cidddiv095 divide  1            1E-8  ->  1E+8
1207db96d56Sopenharmony_cidddiv096 divide  1            1E-9  ->  1E+9
1217db96d56Sopenharmony_cidddiv097 divide  1            1E-10 ->  1E+10
1227db96d56Sopenharmony_cidddiv098 divide  1            1E-11 ->  1E+11
1237db96d56Sopenharmony_cidddiv099 divide  1            1E-12 ->  1E+12
1247db96d56Sopenharmony_ci
1257db96d56Sopenharmony_cidddiv100 divide  1  1   -> 1
1267db96d56Sopenharmony_cidddiv101 divide  1  2   -> 0.5
1277db96d56Sopenharmony_cidddiv102 divide  1  3   -> 0.3333333333333333 Inexact Rounded
1287db96d56Sopenharmony_cidddiv103 divide  1  4   -> 0.25
1297db96d56Sopenharmony_cidddiv104 divide  1  5   -> 0.2
1307db96d56Sopenharmony_cidddiv105 divide  1  6   -> 0.1666666666666667 Inexact Rounded
1317db96d56Sopenharmony_cidddiv106 divide  1  7   -> 0.1428571428571429 Inexact Rounded
1327db96d56Sopenharmony_cidddiv107 divide  1  8   -> 0.125
1337db96d56Sopenharmony_cidddiv108 divide  1  9   -> 0.1111111111111111 Inexact Rounded
1347db96d56Sopenharmony_cidddiv109 divide  1  10  -> 0.1
1357db96d56Sopenharmony_cidddiv110 divide  1  1   -> 1
1367db96d56Sopenharmony_cidddiv111 divide  2  1   -> 2
1377db96d56Sopenharmony_cidddiv112 divide  3  1   -> 3
1387db96d56Sopenharmony_cidddiv113 divide  4  1   -> 4
1397db96d56Sopenharmony_cidddiv114 divide  5  1   -> 5
1407db96d56Sopenharmony_cidddiv115 divide  6  1   -> 6
1417db96d56Sopenharmony_cidddiv116 divide  7  1   -> 7
1427db96d56Sopenharmony_cidddiv117 divide  8  1   -> 8
1437db96d56Sopenharmony_cidddiv118 divide  9  1   -> 9
1447db96d56Sopenharmony_cidddiv119 divide  10 1   -> 10
1457db96d56Sopenharmony_ci
1467db96d56Sopenharmony_cidddiv120 divide  3E+1 0.001  -> 3E+4
1477db96d56Sopenharmony_cidddiv121 divide  2.200 2     -> 1.100
1487db96d56Sopenharmony_ci
1497db96d56Sopenharmony_cidddiv130 divide  12345  4.999  ->  2469.493898779756    Inexact Rounded
1507db96d56Sopenharmony_cidddiv131 divide  12345  4.99   ->  2473.947895791583    Inexact Rounded
1517db96d56Sopenharmony_cidddiv132 divide  12345  4.9    ->  2519.387755102041    Inexact Rounded
1527db96d56Sopenharmony_cidddiv133 divide  12345  5      ->  2469
1537db96d56Sopenharmony_cidddiv134 divide  12345  5.1    ->  2420.588235294118    Inexact Rounded
1547db96d56Sopenharmony_cidddiv135 divide  12345  5.01   ->  2464.071856287425    Inexact Rounded
1557db96d56Sopenharmony_cidddiv136 divide  12345  5.001  ->  2468.506298740252    Inexact Rounded
1567db96d56Sopenharmony_ci
1577db96d56Sopenharmony_ci-- test possibly imprecise results
1587db96d56Sopenharmony_cidddiv220 divide 391   597 ->  0.6549413735343384  Inexact Rounded
1597db96d56Sopenharmony_cidddiv221 divide 391  -597 -> -0.6549413735343384  Inexact Rounded
1607db96d56Sopenharmony_cidddiv222 divide -391  597 -> -0.6549413735343384  Inexact Rounded
1617db96d56Sopenharmony_cidddiv223 divide -391 -597 ->  0.6549413735343384  Inexact Rounded
1627db96d56Sopenharmony_ci
1637db96d56Sopenharmony_ci-- test some cases that are close to exponent overflow, some with coefficient padding
1647db96d56Sopenharmony_cidddiv270 divide 1 1e384                  -> 1E-384                 Subnormal
1657db96d56Sopenharmony_cidddiv271 divide 1 0.9e384                -> 1.11111111111111E-384  Rounded Inexact Subnormal Underflow
1667db96d56Sopenharmony_cidddiv272 divide 1 0.99e384               -> 1.01010101010101E-384  Rounded Inexact Subnormal Underflow
1677db96d56Sopenharmony_cidddiv273 divide 1 0.9999999999999999e384 -> 1.00000000000000E-384  Rounded Inexact Subnormal Underflow
1687db96d56Sopenharmony_cidddiv274 divide 9e384    1               -> 9.000000000000000E+384 Clamped
1697db96d56Sopenharmony_cidddiv275 divide 9.9e384  1               -> 9.900000000000000E+384 Clamped
1707db96d56Sopenharmony_cidddiv276 divide 9.99e384 1               -> 9.990000000000000E+384 Clamped
1717db96d56Sopenharmony_cidddiv277 divide 9.9999999999999e384 1    -> 9.999999999999900E+384 Clamped
1727db96d56Sopenharmony_cidddiv278 divide 9.99999999999999e384 1   -> 9.999999999999990E+384 Clamped
1737db96d56Sopenharmony_cidddiv279 divide 9.999999999999999e384 1  -> 9.999999999999999E+384
1747db96d56Sopenharmony_ci
1757db96d56Sopenharmony_cidddiv285 divide 9.9e384  1.1              -> 9.000000000000000E+384 Clamped
1767db96d56Sopenharmony_cidddiv286 divide 9.99e384 1.1              -> 9.081818181818182E+384 Inexact Rounded
1777db96d56Sopenharmony_cidddiv287 divide 9.9999999999999e384 1.1   -> 9.090909090909000E+384 Clamped
1787db96d56Sopenharmony_cidddiv288 divide 9.99999999999999e384 1.1  -> 9.090909090909082E+384 Inexact Rounded
1797db96d56Sopenharmony_cidddiv289 divide 9.999999999999999e384 1.1 -> 9.090909090909090E+384 Clamped
1807db96d56Sopenharmony_ci
1817db96d56Sopenharmony_ci
1827db96d56Sopenharmony_ci-- Divide into 0 tests
1837db96d56Sopenharmony_cidddiv301 divide    0    7     -> 0
1847db96d56Sopenharmony_cidddiv302 divide    0    7E-5  -> 0E+5
1857db96d56Sopenharmony_cidddiv303 divide    0    7E-1  -> 0E+1
1867db96d56Sopenharmony_cidddiv304 divide    0    7E+1  -> 0.0
1877db96d56Sopenharmony_cidddiv305 divide    0    7E+5  -> 0.00000
1887db96d56Sopenharmony_cidddiv306 divide    0    7E+6  -> 0.000000
1897db96d56Sopenharmony_cidddiv307 divide    0    7E+7  -> 0E-7
1907db96d56Sopenharmony_cidddiv308 divide    0   70E-5  -> 0E+5
1917db96d56Sopenharmony_cidddiv309 divide    0   70E-1  -> 0E+1
1927db96d56Sopenharmony_cidddiv310 divide    0   70E+0  -> 0
1937db96d56Sopenharmony_cidddiv311 divide    0   70E+1  -> 0.0
1947db96d56Sopenharmony_cidddiv312 divide    0   70E+5  -> 0.00000
1957db96d56Sopenharmony_cidddiv313 divide    0   70E+6  -> 0.000000
1967db96d56Sopenharmony_cidddiv314 divide    0   70E+7  -> 0E-7
1977db96d56Sopenharmony_cidddiv315 divide    0  700E-5  -> 0E+5
1987db96d56Sopenharmony_cidddiv316 divide    0  700E-1  -> 0E+1
1997db96d56Sopenharmony_cidddiv317 divide    0  700E+0  -> 0
2007db96d56Sopenharmony_cidddiv318 divide    0  700E+1  -> 0.0
2017db96d56Sopenharmony_cidddiv319 divide    0  700E+5  -> 0.00000
2027db96d56Sopenharmony_cidddiv320 divide    0  700E+6  -> 0.000000
2037db96d56Sopenharmony_cidddiv321 divide    0  700E+7  -> 0E-7
2047db96d56Sopenharmony_cidddiv322 divide    0  700E+77 -> 0E-77
2057db96d56Sopenharmony_ci
2067db96d56Sopenharmony_cidddiv331 divide 0E-3    7E-5  -> 0E+2
2077db96d56Sopenharmony_cidddiv332 divide 0E-3    7E-1  -> 0.00
2087db96d56Sopenharmony_cidddiv333 divide 0E-3    7E+1  -> 0.0000
2097db96d56Sopenharmony_cidddiv334 divide 0E-3    7E+5  -> 0E-8
2107db96d56Sopenharmony_cidddiv335 divide 0E-1    7E-5  -> 0E+4
2117db96d56Sopenharmony_cidddiv336 divide 0E-1    7E-1  -> 0
2127db96d56Sopenharmony_cidddiv337 divide 0E-1    7E+1  -> 0.00
2137db96d56Sopenharmony_cidddiv338 divide 0E-1    7E+5  -> 0.000000
2147db96d56Sopenharmony_cidddiv339 divide 0E+1    7E-5  -> 0E+6
2157db96d56Sopenharmony_cidddiv340 divide 0E+1    7E-1  -> 0E+2
2167db96d56Sopenharmony_cidddiv341 divide 0E+1    7E+1  -> 0
2177db96d56Sopenharmony_cidddiv342 divide 0E+1    7E+5  -> 0.0000
2187db96d56Sopenharmony_cidddiv343 divide 0E+3    7E-5  -> 0E+8
2197db96d56Sopenharmony_cidddiv344 divide 0E+3    7E-1  -> 0E+4
2207db96d56Sopenharmony_cidddiv345 divide 0E+3    7E+1  -> 0E+2
2217db96d56Sopenharmony_cidddiv346 divide 0E+3    7E+5  -> 0.00
2227db96d56Sopenharmony_ci
2237db96d56Sopenharmony_ci-- These were 'input rounding'
2247db96d56Sopenharmony_cidddiv441 divide 12345678000 1 -> 12345678000
2257db96d56Sopenharmony_cidddiv442 divide 1 12345678000 -> 8.100000664200054E-11 Inexact Rounded
2267db96d56Sopenharmony_cidddiv443 divide 1234567800  1 -> 1234567800
2277db96d56Sopenharmony_cidddiv444 divide 1 1234567800  -> 8.100000664200054E-10 Inexact Rounded
2287db96d56Sopenharmony_cidddiv445 divide 1234567890  1 -> 1234567890
2297db96d56Sopenharmony_cidddiv446 divide 1 1234567890  -> 8.100000073710001E-10 Inexact Rounded
2307db96d56Sopenharmony_cidddiv447 divide 1234567891  1 -> 1234567891
2317db96d56Sopenharmony_cidddiv448 divide 1 1234567891  -> 8.100000067149001E-10 Inexact Rounded
2327db96d56Sopenharmony_cidddiv449 divide 12345678901 1 -> 12345678901
2337db96d56Sopenharmony_cidddiv450 divide 1 12345678901 -> 8.100000073053901E-11 Inexact Rounded
2347db96d56Sopenharmony_cidddiv451 divide 1234567896  1 -> 1234567896
2357db96d56Sopenharmony_cidddiv452 divide 1 1234567896  -> 8.100000034344000E-10 Inexact Rounded
2367db96d56Sopenharmony_ci
2377db96d56Sopenharmony_ci-- high-lows
2387db96d56Sopenharmony_cidddiv453 divide 1e+1   1    ->   1E+1
2397db96d56Sopenharmony_cidddiv454 divide 1e+1   1.0  ->   1E+1
2407db96d56Sopenharmony_cidddiv455 divide 1e+1   1.00 ->   1E+1
2417db96d56Sopenharmony_cidddiv456 divide 1e+2   2    ->   5E+1
2427db96d56Sopenharmony_cidddiv457 divide 1e+2   2.0  ->   5E+1
2437db96d56Sopenharmony_cidddiv458 divide 1e+2   2.00 ->   5E+1
2447db96d56Sopenharmony_ci
2457db96d56Sopenharmony_ci-- some from IEEE discussions
2467db96d56Sopenharmony_cidddiv460 divide 3e0      2e0     -> 1.5
2477db96d56Sopenharmony_cidddiv461 divide 30e-1    2e0     -> 1.5
2487db96d56Sopenharmony_cidddiv462 divide 300e-2   2e0     -> 1.50
2497db96d56Sopenharmony_cidddiv464 divide 3000e-3  2e0     -> 1.500
2507db96d56Sopenharmony_cidddiv465 divide 3e0      20e-1   -> 1.5
2517db96d56Sopenharmony_cidddiv466 divide 30e-1    20e-1   -> 1.5
2527db96d56Sopenharmony_cidddiv467 divide 300e-2   20e-1   -> 1.5
2537db96d56Sopenharmony_cidddiv468 divide 3000e-3  20e-1   -> 1.50
2547db96d56Sopenharmony_cidddiv469 divide 3e0      200e-2  -> 1.5
2557db96d56Sopenharmony_cidddiv470 divide 30e-1    200e-2  -> 1.5
2567db96d56Sopenharmony_cidddiv471 divide 300e-2   200e-2  -> 1.5
2577db96d56Sopenharmony_cidddiv472 divide 3000e-3  200e-2  -> 1.5
2587db96d56Sopenharmony_cidddiv473 divide 3e0      2000e-3 -> 1.5
2597db96d56Sopenharmony_cidddiv474 divide 30e-1    2000e-3 -> 1.5
2607db96d56Sopenharmony_cidddiv475 divide 300e-2   2000e-3 -> 1.5
2617db96d56Sopenharmony_cidddiv476 divide 3000e-3  2000e-3 -> 1.5
2627db96d56Sopenharmony_ci
2637db96d56Sopenharmony_ci-- some reciprocals
2647db96d56Sopenharmony_cidddiv480 divide 1        1.0E+33 -> 1E-33
2657db96d56Sopenharmony_cidddiv481 divide 1        10E+33  -> 1E-34
2667db96d56Sopenharmony_cidddiv482 divide 1        1.0E-33 -> 1E+33
2677db96d56Sopenharmony_cidddiv483 divide 1        10E-33  -> 1E+32
2687db96d56Sopenharmony_ci
2697db96d56Sopenharmony_ci-- RMS discussion table
2707db96d56Sopenharmony_cidddiv484 divide 0e5     1e3 ->   0E+2
2717db96d56Sopenharmony_cidddiv485 divide 0e5     2e3 ->   0E+2
2727db96d56Sopenharmony_cidddiv486 divide 0e5    10e2 ->   0E+3
2737db96d56Sopenharmony_cidddiv487 divide 0e5    20e2 ->   0E+3
2747db96d56Sopenharmony_cidddiv488 divide 0e5   100e1 ->   0E+4
2757db96d56Sopenharmony_cidddiv489 divide 0e5   200e1 ->   0E+4
2767db96d56Sopenharmony_ci
2777db96d56Sopenharmony_cidddiv491 divide 1e5     1e3 ->   1E+2
2787db96d56Sopenharmony_cidddiv492 divide 1e5     2e3 ->   5E+1
2797db96d56Sopenharmony_cidddiv493 divide 1e5    10e2 ->   1E+2
2807db96d56Sopenharmony_cidddiv494 divide 1e5    20e2 ->   5E+1
2817db96d56Sopenharmony_cidddiv495 divide 1e5   100e1 ->   1E+2
2827db96d56Sopenharmony_cidddiv496 divide 1e5   200e1 ->   5E+1
2837db96d56Sopenharmony_ci
2847db96d56Sopenharmony_ci-- tryzeros cases
2857db96d56Sopenharmony_cirounding:    half_up
2867db96d56Sopenharmony_cidddiv497  divide  0E+380 1000E-13  -> 0E+369 Clamped
2877db96d56Sopenharmony_cidddiv498  divide  0E-390 1000E+13  -> 0E-398 Clamped
2887db96d56Sopenharmony_ci
2897db96d56Sopenharmony_cirounding:    half_up
2907db96d56Sopenharmony_ci
2917db96d56Sopenharmony_ci-- focus on trailing zeros issues
2927db96d56Sopenharmony_cidddiv500 divide  1      9.9    ->  0.1010101010101010  Inexact Rounded
2937db96d56Sopenharmony_cidddiv501 divide  1      9.09   ->  0.1100110011001100  Inexact Rounded
2947db96d56Sopenharmony_cidddiv502 divide  1      9.009  ->  0.1110001110001110  Inexact Rounded
2957db96d56Sopenharmony_ci
2967db96d56Sopenharmony_cidddiv511 divide 1         2    -> 0.5
2977db96d56Sopenharmony_cidddiv512 divide 1.0       2    -> 0.5
2987db96d56Sopenharmony_cidddiv513 divide 1.00      2    -> 0.50
2997db96d56Sopenharmony_cidddiv514 divide 1.000     2    -> 0.500
3007db96d56Sopenharmony_cidddiv515 divide 1.0000    2    -> 0.5000
3017db96d56Sopenharmony_cidddiv516 divide 1.00000   2    -> 0.50000
3027db96d56Sopenharmony_cidddiv517 divide 1.000000  2    -> 0.500000
3037db96d56Sopenharmony_cidddiv518 divide 1.0000000 2    -> 0.5000000
3047db96d56Sopenharmony_cidddiv519 divide 1.00      2.00 -> 0.5
3057db96d56Sopenharmony_ci
3067db96d56Sopenharmony_cidddiv521 divide 2    1         -> 2
3077db96d56Sopenharmony_cidddiv522 divide 2    1.0       -> 2
3087db96d56Sopenharmony_cidddiv523 divide 2    1.00      -> 2
3097db96d56Sopenharmony_cidddiv524 divide 2    1.000     -> 2
3107db96d56Sopenharmony_cidddiv525 divide 2    1.0000    -> 2
3117db96d56Sopenharmony_cidddiv526 divide 2    1.00000   -> 2
3127db96d56Sopenharmony_cidddiv527 divide 2    1.000000  -> 2
3137db96d56Sopenharmony_cidddiv528 divide 2    1.0000000 -> 2
3147db96d56Sopenharmony_cidddiv529 divide 2.00 1.00      -> 2
3157db96d56Sopenharmony_ci
3167db96d56Sopenharmony_cidddiv530 divide  2.40   2      ->  1.20
3177db96d56Sopenharmony_cidddiv531 divide  2.40   4      ->  0.60
3187db96d56Sopenharmony_cidddiv532 divide  2.40  10      ->  0.24
3197db96d56Sopenharmony_cidddiv533 divide  2.40   2.0    ->  1.2
3207db96d56Sopenharmony_cidddiv534 divide  2.40   4.0    ->  0.6
3217db96d56Sopenharmony_cidddiv535 divide  2.40  10.0    ->  0.24
3227db96d56Sopenharmony_cidddiv536 divide  2.40   2.00   ->  1.2
3237db96d56Sopenharmony_cidddiv537 divide  2.40   4.00   ->  0.6
3247db96d56Sopenharmony_cidddiv538 divide  2.40  10.00   ->  0.24
3257db96d56Sopenharmony_cidddiv539 divide  0.9    0.1    ->  9
3267db96d56Sopenharmony_cidddiv540 divide  0.9    0.01   ->  9E+1
3277db96d56Sopenharmony_cidddiv541 divide  0.9    0.001  ->  9E+2
3287db96d56Sopenharmony_cidddiv542 divide  5      2      ->  2.5
3297db96d56Sopenharmony_cidddiv543 divide  5      2.0    ->  2.5
3307db96d56Sopenharmony_cidddiv544 divide  5      2.00   ->  2.5
3317db96d56Sopenharmony_cidddiv545 divide  5      20     ->  0.25
3327db96d56Sopenharmony_cidddiv546 divide  5      20.0   ->  0.25
3337db96d56Sopenharmony_cidddiv547 divide  2.400  2      ->  1.200
3347db96d56Sopenharmony_cidddiv548 divide  2.400  2.0    ->  1.20
3357db96d56Sopenharmony_cidddiv549 divide  2.400  2.400  ->  1
3367db96d56Sopenharmony_ci
3377db96d56Sopenharmony_cidddiv550 divide  240    1      ->  240
3387db96d56Sopenharmony_cidddiv551 divide  240    10     ->  24
3397db96d56Sopenharmony_cidddiv552 divide  240    100    ->  2.4
3407db96d56Sopenharmony_cidddiv553 divide  240    1000   ->  0.24
3417db96d56Sopenharmony_cidddiv554 divide  2400   1      ->  2400
3427db96d56Sopenharmony_cidddiv555 divide  2400   10     ->  240
3437db96d56Sopenharmony_cidddiv556 divide  2400   100    ->  24
3447db96d56Sopenharmony_cidddiv557 divide  2400   1000   ->  2.4
3457db96d56Sopenharmony_ci
3467db96d56Sopenharmony_ci-- +ve exponent
3477db96d56Sopenharmony_cidddiv600 divide  2.4E+9     2  ->  1.2E+9
3487db96d56Sopenharmony_cidddiv601 divide  2.40E+9    2  ->  1.20E+9
3497db96d56Sopenharmony_cidddiv602 divide  2.400E+9   2  ->  1.200E+9
3507db96d56Sopenharmony_cidddiv603 divide  2.4000E+9  2  ->  1.2000E+9
3517db96d56Sopenharmony_cidddiv604 divide  24E+8      2  ->  1.2E+9
3527db96d56Sopenharmony_cidddiv605 divide  240E+7     2  ->  1.20E+9
3537db96d56Sopenharmony_cidddiv606 divide  2400E+6    2  ->  1.200E+9
3547db96d56Sopenharmony_cidddiv607 divide  24000E+5   2  ->  1.2000E+9
3557db96d56Sopenharmony_ci
3567db96d56Sopenharmony_ci-- more zeros, etc.
3577db96d56Sopenharmony_cidddiv731 divide 5.00 1E-3    -> 5.00E+3
3587db96d56Sopenharmony_cidddiv732 divide 00.00 0.000  -> NaN Division_undefined
3597db96d56Sopenharmony_cidddiv733 divide 00.00 0E-3   -> NaN Division_undefined
3607db96d56Sopenharmony_cidddiv734 divide  0    -0     -> NaN Division_undefined
3617db96d56Sopenharmony_cidddiv735 divide -0     0     -> NaN Division_undefined
3627db96d56Sopenharmony_cidddiv736 divide -0    -0     -> NaN Division_undefined
3637db96d56Sopenharmony_ci
3647db96d56Sopenharmony_cidddiv741 divide  0    -1     -> -0
3657db96d56Sopenharmony_cidddiv742 divide -0    -1     ->  0
3667db96d56Sopenharmony_cidddiv743 divide  0     1     ->  0
3677db96d56Sopenharmony_cidddiv744 divide -0     1     -> -0
3687db96d56Sopenharmony_cidddiv745 divide -1     0     -> -Infinity Division_by_zero
3697db96d56Sopenharmony_cidddiv746 divide -1    -0     ->  Infinity Division_by_zero
3707db96d56Sopenharmony_cidddiv747 divide  1     0     ->  Infinity Division_by_zero
3717db96d56Sopenharmony_cidddiv748 divide  1    -0     -> -Infinity Division_by_zero
3727db96d56Sopenharmony_ci
3737db96d56Sopenharmony_cidddiv751 divide  0.0  -1     -> -0.0
3747db96d56Sopenharmony_cidddiv752 divide -0.0  -1     ->  0.0
3757db96d56Sopenharmony_cidddiv753 divide  0.0   1     ->  0.0
3767db96d56Sopenharmony_cidddiv754 divide -0.0   1     -> -0.0
3777db96d56Sopenharmony_cidddiv755 divide -1.0   0     -> -Infinity Division_by_zero
3787db96d56Sopenharmony_cidddiv756 divide -1.0  -0     ->  Infinity Division_by_zero
3797db96d56Sopenharmony_cidddiv757 divide  1.0   0     ->  Infinity Division_by_zero
3807db96d56Sopenharmony_cidddiv758 divide  1.0  -0     -> -Infinity Division_by_zero
3817db96d56Sopenharmony_ci
3827db96d56Sopenharmony_cidddiv761 divide  0    -1.0   -> -0E+1
3837db96d56Sopenharmony_cidddiv762 divide -0    -1.0   ->  0E+1
3847db96d56Sopenharmony_cidddiv763 divide  0     1.0   ->  0E+1
3857db96d56Sopenharmony_cidddiv764 divide -0     1.0   -> -0E+1
3867db96d56Sopenharmony_cidddiv765 divide -1     0.0   -> -Infinity Division_by_zero
3877db96d56Sopenharmony_cidddiv766 divide -1    -0.0   ->  Infinity Division_by_zero
3887db96d56Sopenharmony_cidddiv767 divide  1     0.0   ->  Infinity Division_by_zero
3897db96d56Sopenharmony_cidddiv768 divide  1    -0.0   -> -Infinity Division_by_zero
3907db96d56Sopenharmony_ci
3917db96d56Sopenharmony_cidddiv771 divide  0.0  -1.0   -> -0
3927db96d56Sopenharmony_cidddiv772 divide -0.0  -1.0   ->  0
3937db96d56Sopenharmony_cidddiv773 divide  0.0   1.0   ->  0
3947db96d56Sopenharmony_cidddiv774 divide -0.0   1.0   -> -0
3957db96d56Sopenharmony_cidddiv775 divide -1.0   0.0   -> -Infinity Division_by_zero
3967db96d56Sopenharmony_cidddiv776 divide -1.0  -0.0   ->  Infinity Division_by_zero
3977db96d56Sopenharmony_cidddiv777 divide  1.0   0.0   ->  Infinity Division_by_zero
3987db96d56Sopenharmony_cidddiv778 divide  1.0  -0.0   -> -Infinity Division_by_zero
3997db96d56Sopenharmony_ci
4007db96d56Sopenharmony_ci-- Specials
4017db96d56Sopenharmony_cidddiv780 divide  Inf  -Inf   ->  NaN Invalid_operation
4027db96d56Sopenharmony_cidddiv781 divide  Inf  -1000  -> -Infinity
4037db96d56Sopenharmony_cidddiv782 divide  Inf  -1     -> -Infinity
4047db96d56Sopenharmony_cidddiv783 divide  Inf  -0     -> -Infinity
4057db96d56Sopenharmony_cidddiv784 divide  Inf   0     ->  Infinity
4067db96d56Sopenharmony_cidddiv785 divide  Inf   1     ->  Infinity
4077db96d56Sopenharmony_cidddiv786 divide  Inf   1000  ->  Infinity
4087db96d56Sopenharmony_cidddiv787 divide  Inf   Inf   ->  NaN Invalid_operation
4097db96d56Sopenharmony_cidddiv788 divide -1000  Inf   -> -0E-398 Clamped
4107db96d56Sopenharmony_cidddiv789 divide -Inf   Inf   ->  NaN Invalid_operation
4117db96d56Sopenharmony_cidddiv790 divide -1     Inf   -> -0E-398 Clamped
4127db96d56Sopenharmony_cidddiv791 divide -0     Inf   -> -0E-398 Clamped
4137db96d56Sopenharmony_cidddiv792 divide  0     Inf   ->  0E-398 Clamped
4147db96d56Sopenharmony_cidddiv793 divide  1     Inf   ->  0E-398 Clamped
4157db96d56Sopenharmony_cidddiv794 divide  1000  Inf   ->  0E-398 Clamped
4167db96d56Sopenharmony_cidddiv795 divide  Inf   Inf   ->  NaN Invalid_operation
4177db96d56Sopenharmony_ci
4187db96d56Sopenharmony_cidddiv800 divide -Inf  -Inf   ->  NaN Invalid_operation
4197db96d56Sopenharmony_cidddiv801 divide -Inf  -1000  ->  Infinity
4207db96d56Sopenharmony_cidddiv802 divide -Inf  -1     ->  Infinity
4217db96d56Sopenharmony_cidddiv803 divide -Inf  -0     ->  Infinity
4227db96d56Sopenharmony_cidddiv804 divide -Inf   0     -> -Infinity
4237db96d56Sopenharmony_cidddiv805 divide -Inf   1     -> -Infinity
4247db96d56Sopenharmony_cidddiv806 divide -Inf   1000  -> -Infinity
4257db96d56Sopenharmony_cidddiv807 divide -Inf   Inf   ->  NaN Invalid_operation
4267db96d56Sopenharmony_cidddiv808 divide -1000  Inf   -> -0E-398 Clamped
4277db96d56Sopenharmony_cidddiv809 divide -Inf  -Inf   ->  NaN Invalid_operation
4287db96d56Sopenharmony_cidddiv810 divide -1    -Inf   ->  0E-398 Clamped
4297db96d56Sopenharmony_cidddiv811 divide -0    -Inf   ->  0E-398 Clamped
4307db96d56Sopenharmony_cidddiv812 divide  0    -Inf   -> -0E-398 Clamped
4317db96d56Sopenharmony_cidddiv813 divide  1    -Inf   -> -0E-398 Clamped
4327db96d56Sopenharmony_cidddiv814 divide  1000 -Inf   -> -0E-398 Clamped
4337db96d56Sopenharmony_cidddiv815 divide  Inf  -Inf   ->  NaN Invalid_operation
4347db96d56Sopenharmony_ci
4357db96d56Sopenharmony_cidddiv821 divide  NaN -Inf    ->  NaN
4367db96d56Sopenharmony_cidddiv822 divide  NaN -1000   ->  NaN
4377db96d56Sopenharmony_cidddiv823 divide  NaN -1      ->  NaN
4387db96d56Sopenharmony_cidddiv824 divide  NaN -0      ->  NaN
4397db96d56Sopenharmony_cidddiv825 divide  NaN  0      ->  NaN
4407db96d56Sopenharmony_cidddiv826 divide  NaN  1      ->  NaN
4417db96d56Sopenharmony_cidddiv827 divide  NaN  1000   ->  NaN
4427db96d56Sopenharmony_cidddiv828 divide  NaN  Inf    ->  NaN
4437db96d56Sopenharmony_cidddiv829 divide  NaN  NaN    ->  NaN
4447db96d56Sopenharmony_cidddiv830 divide -Inf  NaN    ->  NaN
4457db96d56Sopenharmony_cidddiv831 divide -1000 NaN    ->  NaN
4467db96d56Sopenharmony_cidddiv832 divide -1    NaN    ->  NaN
4477db96d56Sopenharmony_cidddiv833 divide -0    NaN    ->  NaN
4487db96d56Sopenharmony_cidddiv834 divide  0    NaN    ->  NaN
4497db96d56Sopenharmony_cidddiv835 divide  1    NaN    ->  NaN
4507db96d56Sopenharmony_cidddiv836 divide  1000 NaN    ->  NaN
4517db96d56Sopenharmony_cidddiv837 divide  Inf  NaN    ->  NaN
4527db96d56Sopenharmony_ci
4537db96d56Sopenharmony_cidddiv841 divide  sNaN -Inf   ->  NaN  Invalid_operation
4547db96d56Sopenharmony_cidddiv842 divide  sNaN -1000  ->  NaN  Invalid_operation
4557db96d56Sopenharmony_cidddiv843 divide  sNaN -1     ->  NaN  Invalid_operation
4567db96d56Sopenharmony_cidddiv844 divide  sNaN -0     ->  NaN  Invalid_operation
4577db96d56Sopenharmony_cidddiv845 divide  sNaN  0     ->  NaN  Invalid_operation
4587db96d56Sopenharmony_cidddiv846 divide  sNaN  1     ->  NaN  Invalid_operation
4597db96d56Sopenharmony_cidddiv847 divide  sNaN  1000  ->  NaN  Invalid_operation
4607db96d56Sopenharmony_cidddiv848 divide  sNaN  NaN   ->  NaN  Invalid_operation
4617db96d56Sopenharmony_cidddiv849 divide  sNaN sNaN   ->  NaN  Invalid_operation
4627db96d56Sopenharmony_cidddiv850 divide  NaN  sNaN   ->  NaN  Invalid_operation
4637db96d56Sopenharmony_cidddiv851 divide -Inf  sNaN   ->  NaN  Invalid_operation
4647db96d56Sopenharmony_cidddiv852 divide -1000 sNaN   ->  NaN  Invalid_operation
4657db96d56Sopenharmony_cidddiv853 divide -1    sNaN   ->  NaN  Invalid_operation
4667db96d56Sopenharmony_cidddiv854 divide -0    sNaN   ->  NaN  Invalid_operation
4677db96d56Sopenharmony_cidddiv855 divide  0    sNaN   ->  NaN  Invalid_operation
4687db96d56Sopenharmony_cidddiv856 divide  1    sNaN   ->  NaN  Invalid_operation
4697db96d56Sopenharmony_cidddiv857 divide  1000 sNaN   ->  NaN  Invalid_operation
4707db96d56Sopenharmony_cidddiv858 divide  Inf  sNaN   ->  NaN  Invalid_operation
4717db96d56Sopenharmony_cidddiv859 divide  NaN  sNaN   ->  NaN  Invalid_operation
4727db96d56Sopenharmony_ci
4737db96d56Sopenharmony_ci-- propagating NaNs
4747db96d56Sopenharmony_cidddiv861 divide  NaN9 -Inf   ->  NaN9
4757db96d56Sopenharmony_cidddiv862 divide  NaN8  1000  ->  NaN8
4767db96d56Sopenharmony_cidddiv863 divide  NaN7  Inf   ->  NaN7
4777db96d56Sopenharmony_cidddiv864 divide  NaN6  NaN5  ->  NaN6
4787db96d56Sopenharmony_cidddiv865 divide -Inf   NaN4  ->  NaN4
4797db96d56Sopenharmony_cidddiv866 divide -1000  NaN3  ->  NaN3
4807db96d56Sopenharmony_cidddiv867 divide  Inf   NaN2  ->  NaN2
4817db96d56Sopenharmony_ci
4827db96d56Sopenharmony_cidddiv871 divide  sNaN99 -Inf    ->  NaN99 Invalid_operation
4837db96d56Sopenharmony_cidddiv872 divide  sNaN98 -1      ->  NaN98 Invalid_operation
4847db96d56Sopenharmony_cidddiv873 divide  sNaN97  NaN    ->  NaN97 Invalid_operation
4857db96d56Sopenharmony_cidddiv874 divide  sNaN96 sNaN94  ->  NaN96 Invalid_operation
4867db96d56Sopenharmony_cidddiv875 divide  NaN95  sNaN93  ->  NaN93 Invalid_operation
4877db96d56Sopenharmony_cidddiv876 divide -Inf    sNaN92  ->  NaN92 Invalid_operation
4887db96d56Sopenharmony_cidddiv877 divide  0      sNaN91  ->  NaN91 Invalid_operation
4897db96d56Sopenharmony_cidddiv878 divide  Inf    sNaN90  ->  NaN90 Invalid_operation
4907db96d56Sopenharmony_cidddiv879 divide  NaN    sNaN89  ->  NaN89 Invalid_operation
4917db96d56Sopenharmony_ci
4927db96d56Sopenharmony_cidddiv881 divide  -NaN9  -Inf   ->  -NaN9
4937db96d56Sopenharmony_cidddiv882 divide  -NaN8   1000  ->  -NaN8
4947db96d56Sopenharmony_cidddiv883 divide  -NaN7   Inf   ->  -NaN7
4957db96d56Sopenharmony_cidddiv884 divide  -NaN6  -NaN5  ->  -NaN6
4967db96d56Sopenharmony_cidddiv885 divide  -Inf   -NaN4  ->  -NaN4
4977db96d56Sopenharmony_cidddiv886 divide  -1000  -NaN3  ->  -NaN3
4987db96d56Sopenharmony_cidddiv887 divide   Inf   -NaN2  ->  -NaN2
4997db96d56Sopenharmony_ci
5007db96d56Sopenharmony_cidddiv891 divide -sNaN99 -Inf    -> -NaN99 Invalid_operation
5017db96d56Sopenharmony_cidddiv892 divide -sNaN98 -1      -> -NaN98 Invalid_operation
5027db96d56Sopenharmony_cidddiv893 divide -sNaN97  NaN    -> -NaN97 Invalid_operation
5037db96d56Sopenharmony_cidddiv894 divide -sNaN96 -sNaN94 -> -NaN96 Invalid_operation
5047db96d56Sopenharmony_cidddiv895 divide -NaN95  -sNaN93 -> -NaN93 Invalid_operation
5057db96d56Sopenharmony_cidddiv896 divide -Inf    -sNaN92 -> -NaN92 Invalid_operation
5067db96d56Sopenharmony_cidddiv897 divide  0      -sNaN91 -> -NaN91 Invalid_operation
5077db96d56Sopenharmony_cidddiv898 divide  Inf    -sNaN90 -> -NaN90 Invalid_operation
5087db96d56Sopenharmony_cidddiv899 divide -NaN    -sNaN89 -> -NaN89 Invalid_operation
5097db96d56Sopenharmony_ci
5107db96d56Sopenharmony_ci-- Various flavours of divide by 0
5117db96d56Sopenharmony_cidddiv901 divide    0       0   ->  NaN Division_undefined
5127db96d56Sopenharmony_cidddiv902 divide    0.0E5   0   ->  NaN Division_undefined
5137db96d56Sopenharmony_cidddiv903 divide    0.000   0   ->  NaN Division_undefined
5147db96d56Sopenharmony_cidddiv904 divide    0.0001  0   ->  Infinity Division_by_zero
5157db96d56Sopenharmony_cidddiv905 divide    0.01    0   ->  Infinity Division_by_zero
5167db96d56Sopenharmony_cidddiv906 divide    0.1     0   ->  Infinity Division_by_zero
5177db96d56Sopenharmony_cidddiv907 divide    1       0   ->  Infinity Division_by_zero
5187db96d56Sopenharmony_cidddiv908 divide    1       0.0 ->  Infinity Division_by_zero
5197db96d56Sopenharmony_cidddiv909 divide   10       0.0 ->  Infinity Division_by_zero
5207db96d56Sopenharmony_cidddiv910 divide   1E+100   0.0 ->  Infinity Division_by_zero
5217db96d56Sopenharmony_cidddiv911 divide   1E+100   0   ->  Infinity Division_by_zero
5227db96d56Sopenharmony_ci
5237db96d56Sopenharmony_cidddiv921 divide   -0.0001  0   -> -Infinity Division_by_zero
5247db96d56Sopenharmony_cidddiv922 divide   -0.01    0   -> -Infinity Division_by_zero
5257db96d56Sopenharmony_cidddiv923 divide   -0.1     0   -> -Infinity Division_by_zero
5267db96d56Sopenharmony_cidddiv924 divide   -1       0   -> -Infinity Division_by_zero
5277db96d56Sopenharmony_cidddiv925 divide   -1       0.0 -> -Infinity Division_by_zero
5287db96d56Sopenharmony_cidddiv926 divide  -10       0.0 -> -Infinity Division_by_zero
5297db96d56Sopenharmony_cidddiv927 divide  -1E+100   0.0 -> -Infinity Division_by_zero
5307db96d56Sopenharmony_cidddiv928 divide  -1E+100   0   -> -Infinity Division_by_zero
5317db96d56Sopenharmony_ci
5327db96d56Sopenharmony_cidddiv931 divide    0.0001 -0   -> -Infinity Division_by_zero
5337db96d56Sopenharmony_cidddiv932 divide    0.01   -0   -> -Infinity Division_by_zero
5347db96d56Sopenharmony_cidddiv933 divide    0.1    -0   -> -Infinity Division_by_zero
5357db96d56Sopenharmony_cidddiv934 divide    1      -0   -> -Infinity Division_by_zero
5367db96d56Sopenharmony_cidddiv935 divide    1      -0.0 -> -Infinity Division_by_zero
5377db96d56Sopenharmony_cidddiv936 divide   10      -0.0 -> -Infinity Division_by_zero
5387db96d56Sopenharmony_cidddiv937 divide   1E+100  -0.0 -> -Infinity Division_by_zero
5397db96d56Sopenharmony_cidddiv938 divide   1E+100  -0   -> -Infinity Division_by_zero
5407db96d56Sopenharmony_ci
5417db96d56Sopenharmony_cidddiv941 divide   -0.0001 -0   ->  Infinity Division_by_zero
5427db96d56Sopenharmony_cidddiv942 divide   -0.01   -0   ->  Infinity Division_by_zero
5437db96d56Sopenharmony_cidddiv943 divide   -0.1    -0   ->  Infinity Division_by_zero
5447db96d56Sopenharmony_cidddiv944 divide   -1      -0   ->  Infinity Division_by_zero
5457db96d56Sopenharmony_cidddiv945 divide   -1      -0.0 ->  Infinity Division_by_zero
5467db96d56Sopenharmony_cidddiv946 divide  -10      -0.0 ->  Infinity Division_by_zero
5477db96d56Sopenharmony_cidddiv947 divide  -1E+100  -0.0 ->  Infinity Division_by_zero
5487db96d56Sopenharmony_cidddiv948 divide  -1E+100  -0   ->  Infinity Division_by_zero
5497db96d56Sopenharmony_ci
5507db96d56Sopenharmony_ci-- Examples from SQL proposal (Krishna Kulkarni)
5517db96d56Sopenharmony_cidddiv1021  divide 1E0          1E0 -> 1
5527db96d56Sopenharmony_cidddiv1022  divide 1E0          2E0 -> 0.5
5537db96d56Sopenharmony_cidddiv1023  divide 1E0          3E0 -> 0.3333333333333333 Inexact Rounded
5547db96d56Sopenharmony_cidddiv1024  divide 100E-2   1000E-3 -> 1
5557db96d56Sopenharmony_cidddiv1025  divide 24E-1        2E0 -> 1.2
5567db96d56Sopenharmony_cidddiv1026  divide 2400E-3      2E0 -> 1.200
5577db96d56Sopenharmony_cidddiv1027  divide 5E0          2E0 -> 2.5
5587db96d56Sopenharmony_cidddiv1028  divide 5E0        20E-1 -> 2.5
5597db96d56Sopenharmony_cidddiv1029  divide 5E0      2000E-3 -> 2.5
5607db96d56Sopenharmony_cidddiv1030  divide 5E0         2E-1 -> 25
5617db96d56Sopenharmony_cidddiv1031  divide 5E0        20E-2 -> 25
5627db96d56Sopenharmony_cidddiv1032  divide 480E-2       3E0 -> 1.60
5637db96d56Sopenharmony_cidddiv1033  divide 47E-1        2E0 -> 2.35
5647db96d56Sopenharmony_ci
5657db96d56Sopenharmony_ci-- ECMAScript bad examples
5667db96d56Sopenharmony_cirounding:    half_down
5677db96d56Sopenharmony_cidddiv1040  divide 5 9  -> 0.5555555555555556 Inexact Rounded
5687db96d56Sopenharmony_cirounding:    half_even
5697db96d56Sopenharmony_cidddiv1041  divide 6 11 -> 0.5454545454545455 Inexact Rounded
5707db96d56Sopenharmony_ci
5717db96d56Sopenharmony_ci-- overflow and underflow tests .. note subnormal results
5727db96d56Sopenharmony_ci-- signs
5737db96d56Sopenharmony_cidddiv1051 divide  1e+277  1e-311 ->  Infinity Overflow Inexact Rounded
5747db96d56Sopenharmony_cidddiv1052 divide  1e+277 -1e-311 -> -Infinity Overflow Inexact Rounded
5757db96d56Sopenharmony_cidddiv1053 divide -1e+277  1e-311 -> -Infinity Overflow Inexact Rounded
5767db96d56Sopenharmony_cidddiv1054 divide -1e+277 -1e-311 ->  Infinity Overflow Inexact Rounded
5777db96d56Sopenharmony_cidddiv1055 divide  1e-277  1e+311 ->  0E-398 Underflow Subnormal Inexact Rounded Clamped
5787db96d56Sopenharmony_cidddiv1056 divide  1e-277 -1e+311 -> -0E-398 Underflow Subnormal Inexact Rounded Clamped
5797db96d56Sopenharmony_cidddiv1057 divide -1e-277  1e+311 -> -0E-398 Underflow Subnormal Inexact Rounded Clamped
5807db96d56Sopenharmony_cidddiv1058 divide -1e-277 -1e+311 ->  0E-398 Underflow Subnormal Inexact Rounded Clamped
5817db96d56Sopenharmony_ci
5827db96d56Sopenharmony_ci-- 'subnormal' boundary (all hard underflow or overflow in base arithmetic)
5837db96d56Sopenharmony_cidddiv1060 divide 1e-291 1e+101 -> 1E-392 Subnormal
5847db96d56Sopenharmony_cidddiv1061 divide 1e-291 1e+102 -> 1E-393 Subnormal
5857db96d56Sopenharmony_cidddiv1062 divide 1e-291 1e+103 -> 1E-394 Subnormal
5867db96d56Sopenharmony_cidddiv1063 divide 1e-291 1e+104 -> 1E-395 Subnormal
5877db96d56Sopenharmony_cidddiv1064 divide 1e-291 1e+105 -> 1E-396 Subnormal
5887db96d56Sopenharmony_cidddiv1065 divide 1e-291 1e+106 -> 1E-397 Subnormal
5897db96d56Sopenharmony_cidddiv1066 divide 1e-291 1e+107 -> 1E-398 Subnormal
5907db96d56Sopenharmony_cidddiv1067 divide 1e-291 1e+108 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped
5917db96d56Sopenharmony_cidddiv1068 divide 1e-291 1e+109 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped
5927db96d56Sopenharmony_cidddiv1069 divide 1e-291 1e+110 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped
5937db96d56Sopenharmony_ci-- [no equivalent of 'subnormal' for overflow]
5947db96d56Sopenharmony_cidddiv1070 divide 1e+60 1e-321 -> 1.000000000000E+381  Clamped
5957db96d56Sopenharmony_cidddiv1071 divide 1e+60 1e-322 -> 1.0000000000000E+382  Clamped
5967db96d56Sopenharmony_cidddiv1072 divide 1e+60 1e-323 -> 1.00000000000000E+383  Clamped
5977db96d56Sopenharmony_cidddiv1073 divide 1e+60 1e-324 -> 1.000000000000000E+384  Clamped
5987db96d56Sopenharmony_cidddiv1074 divide 1e+60 1e-325 -> Infinity Overflow Inexact Rounded
5997db96d56Sopenharmony_cidddiv1075 divide 1e+60 1e-326 -> Infinity Overflow Inexact Rounded
6007db96d56Sopenharmony_cidddiv1076 divide 1e+60 1e-327 -> Infinity Overflow Inexact Rounded
6017db96d56Sopenharmony_cidddiv1077 divide 1e+60 1e-328 -> Infinity Overflow Inexact Rounded
6027db96d56Sopenharmony_cidddiv1078 divide 1e+60 1e-329 -> Infinity Overflow Inexact Rounded
6037db96d56Sopenharmony_cidddiv1079 divide 1e+60 1e-330 -> Infinity Overflow Inexact Rounded
6047db96d56Sopenharmony_ci
6057db96d56Sopenharmony_cidddiv1101 divide  1.0000E-394  1     -> 1.0000E-394 Subnormal
6067db96d56Sopenharmony_cidddiv1102 divide  1.000E-394   1e+1  -> 1.000E-395  Subnormal
6077db96d56Sopenharmony_cidddiv1103 divide  1.00E-394    1e+2  -> 1.00E-396   Subnormal
6087db96d56Sopenharmony_cidddiv1104 divide  1.0E-394     1e+3  -> 1.0E-397    Subnormal
6097db96d56Sopenharmony_cidddiv1105 divide  1.0E-394     1e+4  -> 1E-398     Subnormal Rounded
6107db96d56Sopenharmony_cidddiv1106 divide  1.3E-394     1e+4  -> 1E-398     Underflow Subnormal Inexact Rounded
6117db96d56Sopenharmony_cidddiv1107 divide  1.5E-394     1e+4  -> 2E-398     Underflow Subnormal Inexact Rounded
6127db96d56Sopenharmony_cidddiv1108 divide  1.7E-394     1e+4  -> 2E-398     Underflow Subnormal Inexact Rounded
6137db96d56Sopenharmony_cidddiv1109 divide  2.3E-394     1e+4  -> 2E-398     Underflow Subnormal Inexact Rounded
6147db96d56Sopenharmony_cidddiv1110 divide  2.5E-394     1e+4  -> 2E-398     Underflow Subnormal Inexact Rounded
6157db96d56Sopenharmony_cidddiv1111 divide  2.7E-394     1e+4  -> 3E-398     Underflow Subnormal Inexact Rounded
6167db96d56Sopenharmony_cidddiv1112 divide  1.49E-394    1e+4  -> 1E-398     Underflow Subnormal Inexact Rounded
6177db96d56Sopenharmony_cidddiv1113 divide  1.50E-394    1e+4  -> 2E-398     Underflow Subnormal Inexact Rounded
6187db96d56Sopenharmony_cidddiv1114 divide  1.51E-394    1e+4  -> 2E-398     Underflow Subnormal Inexact Rounded
6197db96d56Sopenharmony_cidddiv1115 divide  2.49E-394    1e+4  -> 2E-398     Underflow Subnormal Inexact Rounded
6207db96d56Sopenharmony_cidddiv1116 divide  2.50E-394    1e+4  -> 2E-398     Underflow Subnormal Inexact Rounded
6217db96d56Sopenharmony_cidddiv1117 divide  2.51E-394    1e+4  -> 3E-398     Underflow Subnormal Inexact Rounded
6227db96d56Sopenharmony_ci
6237db96d56Sopenharmony_cidddiv1118 divide  1E-394       1e+4  -> 1E-398     Subnormal
6247db96d56Sopenharmony_cidddiv1119 divide  3E-394       1e+5  -> 0E-398     Underflow Subnormal Inexact Rounded Clamped
6257db96d56Sopenharmony_cidddiv1120 divide  5E-394       1e+5  -> 0E-398     Underflow Subnormal Inexact Rounded Clamped
6267db96d56Sopenharmony_cidddiv1121 divide  7E-394       1e+5  -> 1E-398     Underflow Subnormal Inexact Rounded
6277db96d56Sopenharmony_cidddiv1122 divide  9E-394       1e+5  -> 1E-398     Underflow Subnormal Inexact Rounded
6287db96d56Sopenharmony_cidddiv1123 divide  9.9E-394     1e+5  -> 1E-398     Underflow Subnormal Inexact Rounded
6297db96d56Sopenharmony_ci
6307db96d56Sopenharmony_cidddiv1124 divide  1E-394      -1e+4  -> -1E-398    Subnormal
6317db96d56Sopenharmony_cidddiv1125 divide  3E-394      -1e+5  -> -0E-398    Underflow Subnormal Inexact Rounded Clamped
6327db96d56Sopenharmony_cidddiv1126 divide -5E-394       1e+5  -> -0E-398    Underflow Subnormal Inexact Rounded Clamped
6337db96d56Sopenharmony_cidddiv1127 divide  7E-394      -1e+5  -> -1E-398    Underflow Subnormal Inexact Rounded
6347db96d56Sopenharmony_cidddiv1128 divide -9E-394       1e+5  -> -1E-398    Underflow Subnormal Inexact Rounded
6357db96d56Sopenharmony_cidddiv1129 divide  9.9E-394    -1e+5  -> -1E-398    Underflow Subnormal Inexact Rounded
6367db96d56Sopenharmony_cidddiv1130 divide  3.0E-394    -1e+5  -> -0E-398    Underflow Subnormal Inexact Rounded Clamped
6377db96d56Sopenharmony_ci
6387db96d56Sopenharmony_cidddiv1131 divide  1.0E-199     1e+200 -> 0E-398    Underflow Subnormal Inexact Rounded Clamped
6397db96d56Sopenharmony_cidddiv1132 divide  1.0E-199     1e+199 -> 1E-398    Subnormal Rounded
6407db96d56Sopenharmony_cidddiv1133 divide  1.0E-199     1e+198 -> 1.0E-397  Subnormal
6417db96d56Sopenharmony_cidddiv1134 divide  2.0E-199     2e+198 -> 1.0E-397  Subnormal
6427db96d56Sopenharmony_cidddiv1135 divide  4.0E-199     4e+198 -> 1.0E-397  Subnormal
6437db96d56Sopenharmony_cidddiv1136 divide 10.0E-199    10e+198 -> 1.0E-397  Subnormal
6447db96d56Sopenharmony_cidddiv1137 divide 30.0E-199    30e+198 -> 1.0E-397  Subnormal
6457db96d56Sopenharmony_ci
6467db96d56Sopenharmony_ci-- randoms
6477db96d56Sopenharmony_cidddiv2010  divide  -3.303226714900711E-35   8.796578842713183E+73   ->  -3.755126594058783E-109 Inexact Rounded
6487db96d56Sopenharmony_cidddiv2011  divide   933153327821073.6       68782181090246.25       ->   13.56678885475763 Inexact Rounded
6497db96d56Sopenharmony_cidddiv2012  divide   5.04752436057906E-72   -8.179481771238642E+64   ->  -6.170958627632835E-137 Inexact Rounded
6507db96d56Sopenharmony_cidddiv2013  divide  -3707613309582318        3394911196503.048       ->  -1092.109070010836 Inexact Rounded
6517db96d56Sopenharmony_cidddiv2014  divide   99689.0555190461       -4.735208553891464       ->  -21052.72753765411 Inexact Rounded
6527db96d56Sopenharmony_cidddiv2015  divide  -1447915775613329        269750797.8184875       ->  -5367605.164925653 Inexact Rounded
6537db96d56Sopenharmony_cidddiv2016  divide  -9.394881304225258E-19  -830585.0252671636       ->   1.131116143251358E-24 Inexact Rounded
6547db96d56Sopenharmony_cidddiv2017  divide  -1.056283432738934       88.58754555124013       ->  -0.01192361100159352 Inexact Rounded
6557db96d56Sopenharmony_cidddiv2018  divide   5763220933343.081       689089567025052.1       ->   0.008363529516524456 Inexact Rounded
6567db96d56Sopenharmony_cidddiv2019  divide   873819.122103216        9.740612494523300E-49   ->   8.970884763093948E+53 Inexact Rounded
6577db96d56Sopenharmony_cidddiv2020  divide   8022914.838533576       6178.566801742713       ->   1298.507420243583 Inexact Rounded
6587db96d56Sopenharmony_cidddiv2021  divide   203982.7605650363      -2158.283639053435       ->  -94.51156320422168 Inexact Rounded
6597db96d56Sopenharmony_cidddiv2022  divide   803.6310547013030       7101143795399.238       ->   1.131692411611166E-10 Inexact Rounded
6607db96d56Sopenharmony_cidddiv2023  divide   9.251697842123399E-82  -1.342350220606119E-7    ->  -6.892163982321936E-75 Inexact Rounded
6617db96d56Sopenharmony_cidddiv2024  divide  -1.980600645637992E-53  -5.474262753214457E+77   ->   3.618022617703168E-131 Inexact Rounded
6627db96d56Sopenharmony_cidddiv2025  divide  -210.0322996351690      -8.580951835872843E+80   ->   2.447657365434971E-79 Inexact Rounded
6637db96d56Sopenharmony_cidddiv2026  divide  -1.821980314020370E+85  -3.018915267138165       ->   6.035215144503042E+84 Inexact Rounded
6647db96d56Sopenharmony_cidddiv2027  divide  -772264503601.1047       5.158258271408988E-86   ->  -1.497141986630614E+97 Inexact Rounded
6657db96d56Sopenharmony_cidddiv2028  divide  -767.0532415847106       2.700027228028939E-59   ->  -2.840909282772941E+61 Inexact Rounded
6667db96d56Sopenharmony_cidddiv2029  divide   496724.8548250093       7.32700588163100E+66    ->   6.779370220929013E-62 Inexact Rounded
6677db96d56Sopenharmony_cidddiv2030  divide  -304232651447703.9      -108.9730808657440       ->   2791814721862.565 Inexact Rounded
6687db96d56Sopenharmony_cidddiv2031  divide  -7.233817192699405E+42  -5711302004.149411       ->   1.266579352211430E+33 Inexact Rounded
6697db96d56Sopenharmony_cidddiv2032  divide  -9.999221444912745E+96   4010569406446197        ->  -2.493217404202250E+81 Inexact Rounded
6707db96d56Sopenharmony_cidddiv2033  divide  -1837272.061937622       8.356322838066762       ->  -219866.0939196882 Inexact Rounded
6717db96d56Sopenharmony_cidddiv2034  divide   2168.517555606529       209.1910258615061       ->   10.36620737756784 Inexact Rounded
6727db96d56Sopenharmony_cidddiv2035  divide  -1.884389790576371E+88   2.95181953870583E+20    ->  -6.383824505079828E+67 Inexact Rounded
6737db96d56Sopenharmony_cidddiv2036  divide   732263.6037438196       961222.3634446889       ->   0.7618045850698269 Inexact Rounded
6747db96d56Sopenharmony_cidddiv2037  divide  -813461419.0348336       5.376293753809143E+84   ->  -1.513052404285927E-76 Inexact Rounded
6757db96d56Sopenharmony_cidddiv2038  divide  -45562133508108.50      -9.776843494690107E+51   ->   4.660208945029519E-39 Inexact Rounded
6767db96d56Sopenharmony_cidddiv2039  divide  -6.489393172441016E+80  -9101965.097852113       ->   7.129661674897421E+73 Inexact Rounded
6777db96d56Sopenharmony_cidddiv2040  divide   3.694576237117349E+93   6683512.012622003       ->   5.527896456443912E+86 Inexact Rounded
6787db96d56Sopenharmony_cidddiv2041  divide  -2.252877726403272E+19  -7451913256.181367       ->   3023220546.125531 Inexact Rounded
6797db96d56Sopenharmony_cidddiv2042  divide   518303.1989111842       50.01587020474133       ->   10362.77479107123 Inexact Rounded
6807db96d56Sopenharmony_cidddiv2043  divide   2.902087881880103E+24   33.32400992305702       ->   8.708699488989578E+22 Inexact Rounded
6817db96d56Sopenharmony_cidddiv2044  divide   549619.4559510557       1660824845196338        ->   3.309316196351104E-10 Inexact Rounded
6827db96d56Sopenharmony_cidddiv2045  divide  -6775670774684043        8292152023.077262       ->  -817118.4941891062 Inexact Rounded
6837db96d56Sopenharmony_cidddiv2046  divide  -77.50923921524079      -5.636882655425815E+74   ->   1.375037302588405E-73 Inexact Rounded
6847db96d56Sopenharmony_cidddiv2047  divide  -2.984889459605149E-10  -88106156784122.99       ->   3.387833005721384E-24 Inexact Rounded
6857db96d56Sopenharmony_cidddiv2048  divide   0.949517293997085       44767115.96450998       ->   2.121015110175589E-8 Inexact Rounded
6867db96d56Sopenharmony_cidddiv2049  divide  -2760937211.084521      -1087015876975408        ->   0.000002539923537057024 Inexact Rounded
6877db96d56Sopenharmony_cidddiv2050  divide   28438351.85030536      -4.209397904088624E-47   ->  -6.755919135770688E+53 Inexact Rounded
6887db96d56Sopenharmony_cidddiv2051  divide  -85562731.6820956       -7.166045442530185E+45   ->   1.194002080621542E-38 Inexact Rounded
6897db96d56Sopenharmony_cidddiv2052  divide   2533802852165.25        7154.119606235955       ->   354173957.3317501 Inexact Rounded
6907db96d56Sopenharmony_cidddiv2053  divide  -8858831346851.474       97.59734208801716       ->  -90769186509.83577 Inexact Rounded
6917db96d56Sopenharmony_cidddiv2054  divide   176783629801387.5       840073263.3109817       ->   210438.3480848206 Inexact Rounded
6927db96d56Sopenharmony_cidddiv2055  divide  -493506471796175.6       79733894790822.03       ->  -6.189418854940746 Inexact Rounded
6937db96d56Sopenharmony_cidddiv2056  divide   790.1682542103445       829.9449370367435       ->   0.9520731062371214 Inexact Rounded
6947db96d56Sopenharmony_cidddiv2057  divide  -8920459838.583164      -4767.889187899214       ->   1870945.294035581 Inexact Rounded
6957db96d56Sopenharmony_cidddiv2058  divide   53536687164422.1        53137.5007032689        ->   1007512330.385698 Inexact Rounded
6967db96d56Sopenharmony_cidddiv2059  divide   4.051532311146561E-74  -2.343089768972261E+94   ->  -1.729140882606332E-168 Inexact Rounded
6977db96d56Sopenharmony_cidddiv2060  divide  -14847758778636.88       3.062543516383807E-43   ->  -4.848178874587497E+55 Inexact Rounded
6987db96d56Sopenharmony_ci
6997db96d56Sopenharmony_ci-- Division probably has pre-rounding, so need to test rounding
7007db96d56Sopenharmony_ci-- explicitly rather than assume included through other tests;
7017db96d56Sopenharmony_ci-- tests include simple rounding and also the tricky cases of sticky
7027db96d56Sopenharmony_ci-- bits following two zeros
7037db96d56Sopenharmony_ci--
7047db96d56Sopenharmony_ci--   1/99999 gives 0.0000100001000010000100001000010000100001
7057db96d56Sopenharmony_ci--                       1234567890123456
7067db96d56Sopenharmony_ci--
7077db96d56Sopenharmony_ci--   1/999999 gives 0.000001000001000001000001000001000001000001
7087db96d56Sopenharmony_ci--                         1234567890123456
7097db96d56Sopenharmony_ci
7107db96d56Sopenharmony_cirounding: ceiling
7117db96d56Sopenharmony_cidddiv3001  divide  1     3    ->  0.3333333333333334 Inexact Rounded
7127db96d56Sopenharmony_cidddiv3002  divide  2     3    ->  0.6666666666666667 Inexact Rounded
7137db96d56Sopenharmony_cidddiv3003  divide  1 99999    ->  0.00001000010000100002  Inexact Rounded
7147db96d56Sopenharmony_cidddiv3004  divide  1 999999   ->  0.000001000001000001001 Inexact Rounded
7157db96d56Sopenharmony_ci
7167db96d56Sopenharmony_cirounding: floor
7177db96d56Sopenharmony_cidddiv3011  divide  1     3    ->  0.3333333333333333 Inexact Rounded
7187db96d56Sopenharmony_cidddiv3012  divide  2     3    ->  0.6666666666666666 Inexact Rounded
7197db96d56Sopenharmony_cidddiv3013  divide  1 99999    ->  0.00001000010000100001  Inexact Rounded
7207db96d56Sopenharmony_cidddiv3014  divide  1 999999   ->  0.000001000001000001000 Inexact Rounded
7217db96d56Sopenharmony_ci
7227db96d56Sopenharmony_cirounding: up
7237db96d56Sopenharmony_cidddiv3021  divide  1     3    ->  0.3333333333333334 Inexact Rounded
7247db96d56Sopenharmony_cidddiv3022  divide  2     3    ->  0.6666666666666667 Inexact Rounded
7257db96d56Sopenharmony_cidddiv3023  divide  1 99999    ->  0.00001000010000100002  Inexact Rounded
7267db96d56Sopenharmony_cidddiv3024  divide  1 999999   ->  0.000001000001000001001 Inexact Rounded
7277db96d56Sopenharmony_ci
7287db96d56Sopenharmony_cirounding: down
7297db96d56Sopenharmony_cidddiv3031  divide  1     3    ->  0.3333333333333333 Inexact Rounded
7307db96d56Sopenharmony_cidddiv3032  divide  2     3    ->  0.6666666666666666 Inexact Rounded
7317db96d56Sopenharmony_cidddiv3033  divide  1 99999    ->  0.00001000010000100001  Inexact Rounded
7327db96d56Sopenharmony_cidddiv3034  divide  1 999999   ->  0.000001000001000001000 Inexact Rounded
7337db96d56Sopenharmony_ci
7347db96d56Sopenharmony_cirounding: half_up
7357db96d56Sopenharmony_cidddiv3041  divide  1     3    ->  0.3333333333333333 Inexact Rounded
7367db96d56Sopenharmony_cidddiv3042  divide  2     3    ->  0.6666666666666667 Inexact Rounded
7377db96d56Sopenharmony_cidddiv3043  divide  1 99999    ->  0.00001000010000100001  Inexact Rounded
7387db96d56Sopenharmony_cidddiv3044  divide  1 999999   ->  0.000001000001000001000 Inexact Rounded
7397db96d56Sopenharmony_ci
7407db96d56Sopenharmony_cirounding: half_down
7417db96d56Sopenharmony_cidddiv3051  divide  1     3    ->  0.3333333333333333 Inexact Rounded
7427db96d56Sopenharmony_cidddiv3052  divide  2     3    ->  0.6666666666666667 Inexact Rounded
7437db96d56Sopenharmony_cidddiv3053  divide  1 99999    ->  0.00001000010000100001  Inexact Rounded
7447db96d56Sopenharmony_cidddiv3054  divide  1 999999   ->  0.000001000001000001000 Inexact Rounded
7457db96d56Sopenharmony_ci
7467db96d56Sopenharmony_cirounding: half_even
7477db96d56Sopenharmony_cidddiv3061  divide  1     3    ->  0.3333333333333333 Inexact Rounded
7487db96d56Sopenharmony_cidddiv3062  divide  2     3    ->  0.6666666666666667 Inexact Rounded
7497db96d56Sopenharmony_cidddiv3063  divide  1 99999    ->  0.00001000010000100001  Inexact Rounded
7507db96d56Sopenharmony_cidddiv3064  divide  1 999999   ->  0.000001000001000001000 Inexact Rounded
7517db96d56Sopenharmony_ci
7527db96d56Sopenharmony_cirounding: 05up
7537db96d56Sopenharmony_cidddiv3071  divide  1     3    ->  0.3333333333333333 Inexact Rounded
7547db96d56Sopenharmony_cidddiv3072  divide  2     3    ->  0.6666666666666666 Inexact Rounded
7557db96d56Sopenharmony_cidddiv3073  divide  1 99999    ->  0.00001000010000100001  Inexact Rounded
7567db96d56Sopenharmony_cidddiv3074  divide  1 999999   ->  0.000001000001000001001 Inexact Rounded
7577db96d56Sopenharmony_ci
7587db96d56Sopenharmony_ci-- random divide tests with result near 1
7597db96d56Sopenharmony_cirounding: half_even
7607db96d56Sopenharmony_cidddiv4001 divide  3195385192916917   3195385192946695  ->  0.9999999999906809  Inexact Rounded
7617db96d56Sopenharmony_cidddiv4002 divide  1393723067526993   1393723067519475  ->  1.000000000005394  Inexact Rounded
7627db96d56Sopenharmony_cidddiv4003 divide   759985543702302    759985543674015  ->  1.000000000037220  Inexact Rounded
7637db96d56Sopenharmony_cidddiv4004 divide  9579158456027302   9579158456036864  ->  0.9999999999990018  Inexact Rounded
7647db96d56Sopenharmony_cidddiv4005 divide  7079398299143569   7079398299156904  ->  0.9999999999981164  Inexact Rounded
7657db96d56Sopenharmony_cidddiv4006 divide  6636169255366598   6636169255336386  ->  1.000000000004553  Inexact Rounded
7667db96d56Sopenharmony_cidddiv4007 divide  6964813971340090   6964813971321554  ->  1.000000000002661  Inexact Rounded
7677db96d56Sopenharmony_cidddiv4008 divide  4182275225480784   4182275225454009  ->  1.000000000006402  Inexact Rounded
7687db96d56Sopenharmony_cidddiv4009 divide  9228325124938029   9228325124918730  ->  1.000000000002091  Inexact Rounded
7697db96d56Sopenharmony_cidddiv4010 divide  3428346338630192   3428346338609843  ->  1.000000000005936  Inexact Rounded
7707db96d56Sopenharmony_cidddiv4011 divide  2143511550722893   2143511550751754  ->  0.9999999999865356  Inexact Rounded
7717db96d56Sopenharmony_cidddiv4012 divide  1672732924396785   1672732924401811  ->  0.9999999999969953  Inexact Rounded
7727db96d56Sopenharmony_cidddiv4013 divide  4190714611948216   4190714611948664  ->  0.9999999999998931  Inexact Rounded
7737db96d56Sopenharmony_cidddiv4014 divide  3942254800848877   3942254800814556  ->  1.000000000008706  Inexact Rounded
7747db96d56Sopenharmony_cidddiv4015 divide  2854459826952334   2854459826960762  ->  0.9999999999970474  Inexact Rounded
7757db96d56Sopenharmony_cidddiv4016 divide  2853258953664731   2853258953684471  ->  0.9999999999930816  Inexact Rounded
7767db96d56Sopenharmony_cidddiv4017 divide  9453512638125978   9453512638146425  ->  0.9999999999978371  Inexact Rounded
7777db96d56Sopenharmony_cidddiv4018 divide   339476633940369    339476633912887  ->  1.000000000080954  Inexact Rounded
7787db96d56Sopenharmony_cidddiv4019 divide  4542181492688467   4542181492697735  ->  0.9999999999979596  Inexact Rounded
7797db96d56Sopenharmony_cidddiv4020 divide  7312600192399197   7312600192395424  ->  1.000000000000516  Inexact Rounded
7807db96d56Sopenharmony_cidddiv4021 divide  1811674985570111   1811674985603935  ->  0.9999999999813300  Inexact Rounded
7817db96d56Sopenharmony_cidddiv4022 divide  1706462639003481   1706462639017740  ->  0.9999999999916441  Inexact Rounded
7827db96d56Sopenharmony_cidddiv4023 divide  6697052654940368   6697052654934110  ->  1.000000000000934  Inexact Rounded
7837db96d56Sopenharmony_cidddiv4024 divide  5015283664277539   5015283664310719  ->  0.9999999999933842  Inexact Rounded
7847db96d56Sopenharmony_cidddiv4025 divide  2359501561537464   2359501561502464  ->  1.000000000014834  Inexact Rounded
7857db96d56Sopenharmony_cidddiv4026 divide  2669850227909157   2669850227901548  ->  1.000000000002850  Inexact Rounded
7867db96d56Sopenharmony_cidddiv4027 divide  9329725546974648   9329725547002445  ->  0.9999999999970206  Inexact Rounded
7877db96d56Sopenharmony_cidddiv4028 divide  3228562867071248   3228562867106206  ->  0.9999999999891723  Inexact Rounded
7887db96d56Sopenharmony_cidddiv4029 divide  4862226644921175   4862226644909380  ->  1.000000000002426  Inexact Rounded
7897db96d56Sopenharmony_cidddiv4030 divide  1022267997054529   1022267997071329  ->  0.9999999999835660  Inexact Rounded
7907db96d56Sopenharmony_cidddiv4031 divide  1048777482023719   1048777482000948  ->  1.000000000021712  Inexact Rounded
7917db96d56Sopenharmony_cidddiv4032 divide  9980113777337098   9980113777330539  ->  1.000000000000657  Inexact Rounded
7927db96d56Sopenharmony_cidddiv4033 divide  7506839167963908   7506839167942901  ->  1.000000000002798  Inexact Rounded
7937db96d56Sopenharmony_cidddiv4034 divide   231119751977860    231119751962453  ->  1.000000000066662  Inexact Rounded
7947db96d56Sopenharmony_cidddiv4035 divide  4034903664762962   4034903664795526  ->  0.9999999999919294  Inexact Rounded
7957db96d56Sopenharmony_cidddiv4036 divide  5700122152274696   5700122152251386  ->  1.000000000004089  Inexact Rounded
7967db96d56Sopenharmony_cidddiv4037 divide  6869599590293110   6869599590293495  ->  0.9999999999999440  Inexact Rounded
7977db96d56Sopenharmony_cidddiv4038 divide  5576281960092797   5576281960105579  ->  0.9999999999977078  Inexact Rounded
7987db96d56Sopenharmony_cidddiv4039 divide  2304844888381318   2304844888353073  ->  1.000000000012255  Inexact Rounded
7997db96d56Sopenharmony_cidddiv4040 divide  3265933651656452   3265933651682779  ->  0.9999999999919389  Inexact Rounded
8007db96d56Sopenharmony_cidddiv4041 divide  5235714985079914   5235714985066131  ->  1.000000000002632  Inexact Rounded
8017db96d56Sopenharmony_cidddiv4042 divide  5578481572827551   5578481572822945  ->  1.000000000000826  Inexact Rounded
8027db96d56Sopenharmony_cidddiv4043 divide  4909616081396134   4909616081373076  ->  1.000000000004696  Inexact Rounded
8037db96d56Sopenharmony_cidddiv4044 divide   636447224349537    636447224338757  ->  1.000000000016938  Inexact Rounded
8047db96d56Sopenharmony_cidddiv4045 divide  1539373428396640   1539373428364727  ->  1.000000000020731  Inexact Rounded
8057db96d56Sopenharmony_cidddiv4046 divide  2028786707377893   2028786707378866  ->  0.9999999999995204  Inexact Rounded
8067db96d56Sopenharmony_cidddiv4047 divide   137643260486222    137643260487419  ->  0.9999999999913036  Inexact Rounded
8077db96d56Sopenharmony_cidddiv4048 divide   247451519746765    247451519752267  ->  0.9999999999777653  Inexact Rounded
8087db96d56Sopenharmony_cidddiv4049 divide  7877858475022054   7877858474999794  ->  1.000000000002826  Inexact Rounded
8097db96d56Sopenharmony_cidddiv4050 divide  7333242694766258   7333242694744628  ->  1.000000000002950  Inexact Rounded
8107db96d56Sopenharmony_cidddiv4051 divide   124051503698592    124051503699397  ->  0.9999999999935108  Inexact Rounded
8117db96d56Sopenharmony_cidddiv4052 divide  8944737432385188   8944737432406860  ->  0.9999999999975771  Inexact Rounded
8127db96d56Sopenharmony_cidddiv4053 divide  9883948923406874   9883948923424843  ->  0.9999999999981820  Inexact Rounded
8137db96d56Sopenharmony_cidddiv4054 divide  6829178741654284   6829178741671973  ->  0.9999999999974098  Inexact Rounded
8147db96d56Sopenharmony_cidddiv4055 divide  7342752479768122   7342752479793385  ->  0.9999999999965595  Inexact Rounded
8157db96d56Sopenharmony_cidddiv4056 divide  8066426579008783   8066426578977563  ->  1.000000000003870  Inexact Rounded
8167db96d56Sopenharmony_cidddiv4057 divide  8992775071383295   8992775071352712  ->  1.000000000003401  Inexact Rounded
8177db96d56Sopenharmony_cidddiv4058 divide  5485011755545641   5485011755543611  ->  1.000000000000370  Inexact Rounded
8187db96d56Sopenharmony_cidddiv4059 divide  5779983054353918   5779983054365300  ->  0.9999999999980308  Inexact Rounded
8197db96d56Sopenharmony_cidddiv4060 divide  9502265102713774   9502265102735208  ->  0.9999999999977443  Inexact Rounded
8207db96d56Sopenharmony_cidddiv4061 divide  2109558399130981   2109558399116281  ->  1.000000000006968  Inexact Rounded
8217db96d56Sopenharmony_cidddiv4062 divide  5296182636350471   5296182636351521  ->  0.9999999999998017  Inexact Rounded
8227db96d56Sopenharmony_cidddiv4063 divide  1440019225591883   1440019225601844  ->  0.9999999999930827  Inexact Rounded
8237db96d56Sopenharmony_cidddiv4064 divide  8182110791881341   8182110791847174  ->  1.000000000004176  Inexact Rounded
8247db96d56Sopenharmony_cidddiv4065 divide   489098235512060    489098235534516  ->  0.9999999999540869  Inexact Rounded
8257db96d56Sopenharmony_cidddiv4066 divide  6475687084782038   6475687084756089  ->  1.000000000004007  Inexact Rounded
8267db96d56Sopenharmony_cidddiv4067 divide  8094348555736948   8094348555759236  ->  0.9999999999972465  Inexact Rounded
8277db96d56Sopenharmony_cidddiv4068 divide  1982766816291543   1982766816309463  ->  0.9999999999909621  Inexact Rounded
8287db96d56Sopenharmony_cidddiv4069 divide  9277314300113251   9277314300084467  ->  1.000000000003103  Inexact Rounded
8297db96d56Sopenharmony_cidddiv4070 divide  4335532959318934   4335532959293167  ->  1.000000000005943  Inexact Rounded
8307db96d56Sopenharmony_cidddiv4071 divide  7767113032981348   7767113032968132  ->  1.000000000001702  Inexact Rounded
8317db96d56Sopenharmony_cidddiv4072 divide  1578548053342868   1578548053370448  ->  0.9999999999825282  Inexact Rounded
8327db96d56Sopenharmony_cidddiv4073 divide  3790420686666898   3790420686636315  ->  1.000000000008068  Inexact Rounded
8337db96d56Sopenharmony_cidddiv4074 divide   871682421955147    871682421976441  ->  0.9999999999755714  Inexact Rounded
8347db96d56Sopenharmony_cidddiv4075 divide   744141054479940    744141054512329  ->  0.9999999999564746  Inexact Rounded
8357db96d56Sopenharmony_cidddiv4076 divide  8956824183670735   8956824183641741  ->  1.000000000003237  Inexact Rounded
8367db96d56Sopenharmony_cidddiv4077 divide  8337291694485682   8337291694451193  ->  1.000000000004137  Inexact Rounded
8377db96d56Sopenharmony_cidddiv4078 divide  4107775944683669   4107775944657097  ->  1.000000000006469  Inexact Rounded
8387db96d56Sopenharmony_cidddiv4079 divide  8691900057964648   8691900057997555  ->  0.9999999999962141  Inexact Rounded
8397db96d56Sopenharmony_cidddiv4080 divide  2229528520536462   2229528520502337  ->  1.000000000015306  Inexact Rounded
8407db96d56Sopenharmony_cidddiv4081 divide   398442083774322    398442083746273  ->  1.000000000070397  Inexact Rounded
8417db96d56Sopenharmony_cidddiv4082 divide  5319819776808759   5319819776838313  ->  0.9999999999944445  Inexact Rounded
8427db96d56Sopenharmony_cidddiv4083 divide  7710491299066855   7710491299041858  ->  1.000000000003242  Inexact Rounded
8437db96d56Sopenharmony_cidddiv4084 divide  9083231296087266   9083231296058160  ->  1.000000000003204  Inexact Rounded
8447db96d56Sopenharmony_cidddiv4085 divide  3566873574904559   3566873574890328  ->  1.000000000003990  Inexact Rounded
8457db96d56Sopenharmony_cidddiv4086 divide   596343290550525    596343290555614  ->  0.9999999999914663  Inexact Rounded
8467db96d56Sopenharmony_cidddiv4087 divide   278227925093192    278227925068104  ->  1.000000000090171  Inexact Rounded
8477db96d56Sopenharmony_cidddiv4088 divide  3292902958490649   3292902958519881  ->  0.9999999999911227  Inexact Rounded
8487db96d56Sopenharmony_cidddiv4089 divide  5521871364245881   5521871364229536  ->  1.000000000002960  Inexact Rounded
8497db96d56Sopenharmony_cidddiv4090 divide  2406505602883617   2406505602857997  ->  1.000000000010646  Inexact Rounded
8507db96d56Sopenharmony_cidddiv4091 divide  7741146984869208   7741146984867255  ->  1.000000000000252  Inexact Rounded
8517db96d56Sopenharmony_cidddiv4092 divide  4576041832414909   4576041832405102  ->  1.000000000002143  Inexact Rounded
8527db96d56Sopenharmony_cidddiv4093 divide  9183756982878057   9183756982901934  ->  0.9999999999974001  Inexact Rounded
8537db96d56Sopenharmony_cidddiv4094 divide  6215736513855159   6215736513870342  ->  0.9999999999975573  Inexact Rounded
8547db96d56Sopenharmony_cidddiv4095 divide   248554968534533    248554968551417  ->  0.9999999999320714  Inexact Rounded
8557db96d56Sopenharmony_cidddiv4096 divide   376314165668645    376314165659755  ->  1.000000000023624  Inexact Rounded
8567db96d56Sopenharmony_cidddiv4097 divide  5513569249809718   5513569249808906  ->  1.000000000000147  Inexact Rounded
8577db96d56Sopenharmony_cidddiv4098 divide  3367992242167904   3367992242156228  ->  1.000000000003467  Inexact Rounded
8587db96d56Sopenharmony_cidddiv4099 divide  6134869538966967   6134869538985986  ->  0.9999999999968999  Inexact Rounded
8597db96d56Sopenharmony_ci
8607db96d56Sopenharmony_ci-- Null tests
8617db96d56Sopenharmony_cidddiv9998 divide 10  # -> NaN Invalid_operation
8627db96d56Sopenharmony_cidddiv9999 divide  # 10 -> NaN Invalid_operation
8637db96d56Sopenharmony_ci
864