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