17db96d56Sopenharmony_ci------------------------------------------------------------------------ 27db96d56Sopenharmony_ci-- ddDivideInt.decTest -- decDouble integer 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_cidddvi001 divideint 1 1 -> 1 307db96d56Sopenharmony_cidddvi002 divideint 2 1 -> 2 317db96d56Sopenharmony_cidddvi003 divideint 1 2 -> 0 327db96d56Sopenharmony_cidddvi004 divideint 2 2 -> 1 337db96d56Sopenharmony_cidddvi005 divideint 0 1 -> 0 347db96d56Sopenharmony_cidddvi006 divideint 0 2 -> 0 357db96d56Sopenharmony_cidddvi007 divideint 1 3 -> 0 367db96d56Sopenharmony_cidddvi008 divideint 2 3 -> 0 377db96d56Sopenharmony_cidddvi009 divideint 3 3 -> 1 387db96d56Sopenharmony_ci 397db96d56Sopenharmony_cidddvi010 divideint 2.4 1 -> 2 407db96d56Sopenharmony_cidddvi011 divideint 2.4 -1 -> -2 417db96d56Sopenharmony_cidddvi012 divideint -2.4 1 -> -2 427db96d56Sopenharmony_cidddvi013 divideint -2.4 -1 -> 2 437db96d56Sopenharmony_cidddvi014 divideint 2.40 1 -> 2 447db96d56Sopenharmony_cidddvi015 divideint 2.400 1 -> 2 457db96d56Sopenharmony_cidddvi016 divideint 2.4 2 -> 1 467db96d56Sopenharmony_cidddvi017 divideint 2.400 2 -> 1 477db96d56Sopenharmony_cidddvi018 divideint 2. 2 -> 1 487db96d56Sopenharmony_cidddvi019 divideint 20 20 -> 1 497db96d56Sopenharmony_ci 507db96d56Sopenharmony_cidddvi020 divideint 187 187 -> 1 517db96d56Sopenharmony_cidddvi021 divideint 5 2 -> 2 527db96d56Sopenharmony_cidddvi022 divideint 5 2.0 -> 2 537db96d56Sopenharmony_cidddvi023 divideint 5 2.000 -> 2 547db96d56Sopenharmony_cidddvi024 divideint 5 0.200 -> 25 557db96d56Sopenharmony_cidddvi025 divideint 5 0.200 -> 25 567db96d56Sopenharmony_ci 577db96d56Sopenharmony_cidddvi030 divideint 1 2 -> 0 587db96d56Sopenharmony_cidddvi031 divideint 1 4 -> 0 597db96d56Sopenharmony_cidddvi032 divideint 1 8 -> 0 607db96d56Sopenharmony_cidddvi033 divideint 1 16 -> 0 617db96d56Sopenharmony_cidddvi034 divideint 1 32 -> 0 627db96d56Sopenharmony_cidddvi035 divideint 1 64 -> 0 637db96d56Sopenharmony_cidddvi040 divideint 1 -2 -> -0 647db96d56Sopenharmony_cidddvi041 divideint 1 -4 -> -0 657db96d56Sopenharmony_cidddvi042 divideint 1 -8 -> -0 667db96d56Sopenharmony_cidddvi043 divideint 1 -16 -> -0 677db96d56Sopenharmony_cidddvi044 divideint 1 -32 -> -0 687db96d56Sopenharmony_cidddvi045 divideint 1 -64 -> -0 697db96d56Sopenharmony_cidddvi050 divideint -1 2 -> -0 707db96d56Sopenharmony_cidddvi051 divideint -1 4 -> -0 717db96d56Sopenharmony_cidddvi052 divideint -1 8 -> -0 727db96d56Sopenharmony_cidddvi053 divideint -1 16 -> -0 737db96d56Sopenharmony_cidddvi054 divideint -1 32 -> -0 747db96d56Sopenharmony_cidddvi055 divideint -1 64 -> -0 757db96d56Sopenharmony_cidddvi060 divideint -1 -2 -> 0 767db96d56Sopenharmony_cidddvi061 divideint -1 -4 -> 0 777db96d56Sopenharmony_cidddvi062 divideint -1 -8 -> 0 787db96d56Sopenharmony_cidddvi063 divideint -1 -16 -> 0 797db96d56Sopenharmony_cidddvi064 divideint -1 -32 -> 0 807db96d56Sopenharmony_cidddvi065 divideint -1 -64 -> 0 817db96d56Sopenharmony_ci 827db96d56Sopenharmony_ci-- similar with powers of ten 837db96d56Sopenharmony_cidddvi160 divideint 1 1 -> 1 847db96d56Sopenharmony_cidddvi161 divideint 1 10 -> 0 857db96d56Sopenharmony_cidddvi162 divideint 1 100 -> 0 867db96d56Sopenharmony_cidddvi163 divideint 1 1000 -> 0 877db96d56Sopenharmony_cidddvi164 divideint 1 10000 -> 0 887db96d56Sopenharmony_cidddvi165 divideint 1 100000 -> 0 897db96d56Sopenharmony_cidddvi166 divideint 1 1000000 -> 0 907db96d56Sopenharmony_cidddvi167 divideint 1 10000000 -> 0 917db96d56Sopenharmony_cidddvi168 divideint 1 100000000 -> 0 927db96d56Sopenharmony_cidddvi170 divideint 1 -1 -> -1 937db96d56Sopenharmony_cidddvi171 divideint 1 -10 -> -0 947db96d56Sopenharmony_cidddvi172 divideint 1 -100 -> -0 957db96d56Sopenharmony_cidddvi173 divideint 1 -1000 -> -0 967db96d56Sopenharmony_cidddvi174 divideint 1 -10000 -> -0 977db96d56Sopenharmony_cidddvi175 divideint 1 -100000 -> -0 987db96d56Sopenharmony_cidddvi176 divideint 1 -1000000 -> -0 997db96d56Sopenharmony_cidddvi177 divideint 1 -10000000 -> -0 1007db96d56Sopenharmony_cidddvi178 divideint 1 -100000000 -> -0 1017db96d56Sopenharmony_cidddvi180 divideint -1 1 -> -1 1027db96d56Sopenharmony_cidddvi181 divideint -1 10 -> -0 1037db96d56Sopenharmony_cidddvi182 divideint -1 100 -> -0 1047db96d56Sopenharmony_cidddvi183 divideint -1 1000 -> -0 1057db96d56Sopenharmony_cidddvi184 divideint -1 10000 -> -0 1067db96d56Sopenharmony_cidddvi185 divideint -1 100000 -> -0 1077db96d56Sopenharmony_cidddvi186 divideint -1 1000000 -> -0 1087db96d56Sopenharmony_cidddvi187 divideint -1 10000000 -> -0 1097db96d56Sopenharmony_cidddvi188 divideint -1 100000000 -> -0 1107db96d56Sopenharmony_cidddvi190 divideint -1 -1 -> 1 1117db96d56Sopenharmony_cidddvi191 divideint -1 -10 -> 0 1127db96d56Sopenharmony_cidddvi192 divideint -1 -100 -> 0 1137db96d56Sopenharmony_cidddvi193 divideint -1 -1000 -> 0 1147db96d56Sopenharmony_cidddvi194 divideint -1 -10000 -> 0 1157db96d56Sopenharmony_cidddvi195 divideint -1 -100000 -> 0 1167db96d56Sopenharmony_cidddvi196 divideint -1 -1000000 -> 0 1177db96d56Sopenharmony_cidddvi197 divideint -1 -10000000 -> 0 1187db96d56Sopenharmony_cidddvi198 divideint -1 -100000000 -> 0 1197db96d56Sopenharmony_ci 1207db96d56Sopenharmony_ci-- some long operand (at p=9) cases 1217db96d56Sopenharmony_cidddvi070 divideint 999999999 1 -> 999999999 1227db96d56Sopenharmony_cidddvi071 divideint 999999999.4 1 -> 999999999 1237db96d56Sopenharmony_cidddvi072 divideint 999999999.5 1 -> 999999999 1247db96d56Sopenharmony_cidddvi073 divideint 999999999.9 1 -> 999999999 1257db96d56Sopenharmony_cidddvi074 divideint 999999999.999 1 -> 999999999 1267db96d56Sopenharmony_ci 1277db96d56Sopenharmony_cidddvi090 divideint 0. 1 -> 0 1287db96d56Sopenharmony_cidddvi091 divideint .0 1 -> 0 1297db96d56Sopenharmony_cidddvi092 divideint 0.00 1 -> 0 1307db96d56Sopenharmony_cidddvi093 divideint 0.00E+9 1 -> 0 1317db96d56Sopenharmony_cidddvi094 divideint 0.0000E-50 1 -> 0 1327db96d56Sopenharmony_ci 1337db96d56Sopenharmony_cidddvi100 divideint 1 1 -> 1 1347db96d56Sopenharmony_cidddvi101 divideint 1 2 -> 0 1357db96d56Sopenharmony_cidddvi102 divideint 1 3 -> 0 1367db96d56Sopenharmony_cidddvi103 divideint 1 4 -> 0 1377db96d56Sopenharmony_cidddvi104 divideint 1 5 -> 0 1387db96d56Sopenharmony_cidddvi105 divideint 1 6 -> 0 1397db96d56Sopenharmony_cidddvi106 divideint 1 7 -> 0 1407db96d56Sopenharmony_cidddvi107 divideint 1 8 -> 0 1417db96d56Sopenharmony_cidddvi108 divideint 1 9 -> 0 1427db96d56Sopenharmony_cidddvi109 divideint 1 10 -> 0 1437db96d56Sopenharmony_cidddvi110 divideint 1 1 -> 1 1447db96d56Sopenharmony_cidddvi111 divideint 2 1 -> 2 1457db96d56Sopenharmony_cidddvi112 divideint 3 1 -> 3 1467db96d56Sopenharmony_cidddvi113 divideint 4 1 -> 4 1477db96d56Sopenharmony_cidddvi114 divideint 5 1 -> 5 1487db96d56Sopenharmony_cidddvi115 divideint 6 1 -> 6 1497db96d56Sopenharmony_cidddvi116 divideint 7 1 -> 7 1507db96d56Sopenharmony_cidddvi117 divideint 8 1 -> 8 1517db96d56Sopenharmony_cidddvi118 divideint 9 1 -> 9 1527db96d56Sopenharmony_cidddvi119 divideint 10 1 -> 10 1537db96d56Sopenharmony_ci 1547db96d56Sopenharmony_ci-- from DiagBigDecimal 1557db96d56Sopenharmony_cidddvi131 divideint 101.3 1 -> 101 1567db96d56Sopenharmony_cidddvi132 divideint 101.0 1 -> 101 1577db96d56Sopenharmony_cidddvi133 divideint 101.3 3 -> 33 1587db96d56Sopenharmony_cidddvi134 divideint 101.0 3 -> 33 1597db96d56Sopenharmony_cidddvi135 divideint 2.4 1 -> 2 1607db96d56Sopenharmony_cidddvi136 divideint 2.400 1 -> 2 1617db96d56Sopenharmony_cidddvi137 divideint 18 18 -> 1 1627db96d56Sopenharmony_cidddvi138 divideint 1120 1000 -> 1 1637db96d56Sopenharmony_cidddvi139 divideint 2.4 2 -> 1 1647db96d56Sopenharmony_cidddvi140 divideint 2.400 2 -> 1 1657db96d56Sopenharmony_cidddvi141 divideint 0.5 2.000 -> 0 1667db96d56Sopenharmony_cidddvi142 divideint 8.005 7 -> 1 1677db96d56Sopenharmony_cidddvi143 divideint 5 2 -> 2 1687db96d56Sopenharmony_cidddvi144 divideint 0 2 -> 0 1697db96d56Sopenharmony_cidddvi145 divideint 0.00 2 -> 0 1707db96d56Sopenharmony_ci 1717db96d56Sopenharmony_ci-- Others 1727db96d56Sopenharmony_cidddvi150 divideint 12345 4.999 -> 2469 1737db96d56Sopenharmony_cidddvi151 divideint 12345 4.99 -> 2473 1747db96d56Sopenharmony_cidddvi152 divideint 12345 4.9 -> 2519 1757db96d56Sopenharmony_cidddvi153 divideint 12345 5 -> 2469 1767db96d56Sopenharmony_cidddvi154 divideint 12345 5.1 -> 2420 1777db96d56Sopenharmony_cidddvi155 divideint 12345 5.01 -> 2464 1787db96d56Sopenharmony_cidddvi156 divideint 12345 5.001 -> 2468 1797db96d56Sopenharmony_cidddvi157 divideint 101 7.6 -> 13 1807db96d56Sopenharmony_ci 1817db96d56Sopenharmony_ci-- Various flavours of divideint by 0 1827db96d56Sopenharmony_cidddvi201 divideint 0 0 -> NaN Division_undefined 1837db96d56Sopenharmony_cidddvi202 divideint 0.0E5 0 -> NaN Division_undefined 1847db96d56Sopenharmony_cidddvi203 divideint 0.000 0 -> NaN Division_undefined 1857db96d56Sopenharmony_cidddvi204 divideint 0.0001 0 -> Infinity Division_by_zero 1867db96d56Sopenharmony_cidddvi205 divideint 0.01 0 -> Infinity Division_by_zero 1877db96d56Sopenharmony_cidddvi206 divideint 0.1 0 -> Infinity Division_by_zero 1887db96d56Sopenharmony_cidddvi207 divideint 1 0 -> Infinity Division_by_zero 1897db96d56Sopenharmony_cidddvi208 divideint 1 0.0 -> Infinity Division_by_zero 1907db96d56Sopenharmony_cidddvi209 divideint 10 0.0 -> Infinity Division_by_zero 1917db96d56Sopenharmony_cidddvi210 divideint 1E+100 0.0 -> Infinity Division_by_zero 1927db96d56Sopenharmony_cidddvi211 divideint 1E+380 0 -> Infinity Division_by_zero 1937db96d56Sopenharmony_cidddvi214 divideint -0.0001 0 -> -Infinity Division_by_zero 1947db96d56Sopenharmony_cidddvi215 divideint -0.01 0 -> -Infinity Division_by_zero 1957db96d56Sopenharmony_cidddvi216 divideint -0.1 0 -> -Infinity Division_by_zero 1967db96d56Sopenharmony_cidddvi217 divideint -1 0 -> -Infinity Division_by_zero 1977db96d56Sopenharmony_cidddvi218 divideint -1 0.0 -> -Infinity Division_by_zero 1987db96d56Sopenharmony_cidddvi219 divideint -10 0.0 -> -Infinity Division_by_zero 1997db96d56Sopenharmony_cidddvi220 divideint -1E+100 0.0 -> -Infinity Division_by_zero 2007db96d56Sopenharmony_cidddvi221 divideint -1E+380 0 -> -Infinity Division_by_zero 2017db96d56Sopenharmony_ci 2027db96d56Sopenharmony_ci-- test some cases that are close to exponent overflow 2037db96d56Sopenharmony_cidddvi270 divideint 1 1e384 -> 0 2047db96d56Sopenharmony_cidddvi271 divideint 1 0.9e384 -> 0 2057db96d56Sopenharmony_cidddvi272 divideint 1 0.99e384 -> 0 2067db96d56Sopenharmony_cidddvi273 divideint 1 0.9999999999999999e384 -> 0 2077db96d56Sopenharmony_cidddvi274 divideint 9e384 1 -> NaN Division_impossible 2087db96d56Sopenharmony_cidddvi275 divideint 9.9e384 1 -> NaN Division_impossible 2097db96d56Sopenharmony_cidddvi276 divideint 9.99e384 1 -> NaN Division_impossible 2107db96d56Sopenharmony_cidddvi277 divideint 9.999999999999999e384 1 -> NaN Division_impossible 2117db96d56Sopenharmony_ci 2127db96d56Sopenharmony_cidddvi280 divideint 0.1 9e-383 -> NaN Division_impossible 2137db96d56Sopenharmony_cidddvi281 divideint 0.1 99e-383 -> NaN Division_impossible 2147db96d56Sopenharmony_cidddvi282 divideint 0.1 999e-383 -> NaN Division_impossible 2157db96d56Sopenharmony_cidddvi283 divideint 0.1 9e-382 -> NaN Division_impossible 2167db96d56Sopenharmony_cidddvi284 divideint 0.1 99e-382 -> NaN Division_impossible 2177db96d56Sopenharmony_ci 2187db96d56Sopenharmony_ci-- GD edge cases: lhs smaller than rhs but more digits 2197db96d56Sopenharmony_cidddvi301 divideint 0.9 2 -> 0 2207db96d56Sopenharmony_cidddvi302 divideint 0.9 2.0 -> 0 2217db96d56Sopenharmony_cidddvi303 divideint 0.9 2.1 -> 0 2227db96d56Sopenharmony_cidddvi304 divideint 0.9 2.00 -> 0 2237db96d56Sopenharmony_cidddvi305 divideint 0.9 2.01 -> 0 2247db96d56Sopenharmony_cidddvi306 divideint 0.12 1 -> 0 2257db96d56Sopenharmony_cidddvi307 divideint 0.12 1.0 -> 0 2267db96d56Sopenharmony_cidddvi308 divideint 0.12 1.00 -> 0 2277db96d56Sopenharmony_cidddvi309 divideint 0.12 1.0 -> 0 2287db96d56Sopenharmony_cidddvi310 divideint 0.12 1.00 -> 0 2297db96d56Sopenharmony_cidddvi311 divideint 0.12 2 -> 0 2307db96d56Sopenharmony_cidddvi312 divideint 0.12 2.0 -> 0 2317db96d56Sopenharmony_cidddvi313 divideint 0.12 2.1 -> 0 2327db96d56Sopenharmony_cidddvi314 divideint 0.12 2.00 -> 0 2337db96d56Sopenharmony_cidddvi315 divideint 0.12 2.01 -> 0 2347db96d56Sopenharmony_ci 2357db96d56Sopenharmony_ci-- edge cases of impossible 2367db96d56Sopenharmony_cidddvi330 divideint 1234567890123456 10 -> 123456789012345 2377db96d56Sopenharmony_cidddvi331 divideint 1234567890123456 1 -> 1234567890123456 2387db96d56Sopenharmony_cidddvi332 divideint 1234567890123456 0.1 -> NaN Division_impossible 2397db96d56Sopenharmony_cidddvi333 divideint 1234567890123456 0.01 -> NaN Division_impossible 2407db96d56Sopenharmony_ci 2417db96d56Sopenharmony_ci-- overflow and underflow tests [from divide] 2427db96d56Sopenharmony_cidddvi1051 divideint 1e+277 1e-311 -> NaN Division_impossible 2437db96d56Sopenharmony_cidddvi1052 divideint 1e+277 -1e-311 -> NaN Division_impossible 2447db96d56Sopenharmony_cidddvi1053 divideint -1e+277 1e-311 -> NaN Division_impossible 2457db96d56Sopenharmony_cidddvi1054 divideint -1e+277 -1e-311 -> NaN Division_impossible 2467db96d56Sopenharmony_cidddvi1055 divideint 1e-277 1e+311 -> 0 2477db96d56Sopenharmony_cidddvi1056 divideint 1e-277 -1e+311 -> -0 2487db96d56Sopenharmony_cidddvi1057 divideint -1e-277 1e+311 -> -0 2497db96d56Sopenharmony_cidddvi1058 divideint -1e-277 -1e+311 -> 0 2507db96d56Sopenharmony_ci 2517db96d56Sopenharmony_ci-- 'subnormal' boundary (all hard underflow or overflow in base arithmetic) 2527db96d56Sopenharmony_cidddvi1060 divideint 1e-291 1e+101 -> 0 2537db96d56Sopenharmony_cidddvi1061 divideint 1e-291 1e+102 -> 0 2547db96d56Sopenharmony_cidddvi1062 divideint 1e-291 1e+103 -> 0 2557db96d56Sopenharmony_cidddvi1063 divideint 1e-291 1e+104 -> 0 2567db96d56Sopenharmony_cidddvi1064 divideint 1e-291 1e+105 -> 0 2577db96d56Sopenharmony_cidddvi1065 divideint 1e-291 1e+106 -> 0 2587db96d56Sopenharmony_cidddvi1066 divideint 1e-291 1e+107 -> 0 2597db96d56Sopenharmony_cidddvi1067 divideint 1e-291 1e+108 -> 0 2607db96d56Sopenharmony_cidddvi1068 divideint 1e-291 1e+109 -> 0 2617db96d56Sopenharmony_cidddvi1069 divideint 1e-291 1e+110 -> 0 2627db96d56Sopenharmony_ci 2637db96d56Sopenharmony_cidddvi1101 divideint 1.0000E-394 1 -> 0 2647db96d56Sopenharmony_cidddvi1102 divideint 1.000E-394 1e+1 -> 0 2657db96d56Sopenharmony_cidddvi1103 divideint 1.00E-394 1e+2 -> 0 2667db96d56Sopenharmony_ci 2677db96d56Sopenharmony_cidddvi1118 divideint 1E-394 1e+4 -> 0 2687db96d56Sopenharmony_cidddvi1119 divideint 3E-394 -1e+5 -> -0 2697db96d56Sopenharmony_cidddvi1120 divideint 5E-394 1e+5 -> 0 2707db96d56Sopenharmony_ci 2717db96d56Sopenharmony_cidddvi1124 divideint 1E-394 -1e+4 -> -0 2727db96d56Sopenharmony_cidddvi1130 divideint 3.0E-394 -1e+5 -> -0 2737db96d56Sopenharmony_ci 2747db96d56Sopenharmony_cidddvi1131 divideint 1.0E-199 1e+200 -> 0 2757db96d56Sopenharmony_cidddvi1132 divideint 1.0E-199 1e+199 -> 0 2767db96d56Sopenharmony_cidddvi1133 divideint 1.0E-199 1e+198 -> 0 2777db96d56Sopenharmony_cidddvi1134 divideint 2.0E-199 2e+198 -> 0 2787db96d56Sopenharmony_cidddvi1135 divideint 4.0E-199 4e+198 -> 0 2797db96d56Sopenharmony_ci 2807db96d56Sopenharmony_ci-- long operand checks 2817db96d56Sopenharmony_cidddvi401 divideint 12345678000 100 -> 123456780 2827db96d56Sopenharmony_cidddvi402 divideint 1 12345678000 -> 0 2837db96d56Sopenharmony_cidddvi403 divideint 1234567800 10 -> 123456780 2847db96d56Sopenharmony_cidddvi404 divideint 1 1234567800 -> 0 2857db96d56Sopenharmony_cidddvi405 divideint 1234567890 10 -> 123456789 2867db96d56Sopenharmony_cidddvi406 divideint 1 1234567890 -> 0 2877db96d56Sopenharmony_cidddvi407 divideint 1234567891 10 -> 123456789 2887db96d56Sopenharmony_cidddvi408 divideint 1 1234567891 -> 0 2897db96d56Sopenharmony_cidddvi409 divideint 12345678901 100 -> 123456789 2907db96d56Sopenharmony_cidddvi410 divideint 1 12345678901 -> 0 2917db96d56Sopenharmony_cidddvi411 divideint 1234567896 10 -> 123456789 2927db96d56Sopenharmony_cidddvi412 divideint 1 1234567896 -> 0 2937db96d56Sopenharmony_cidddvi413 divideint 12345678948 100 -> 123456789 2947db96d56Sopenharmony_cidddvi414 divideint 12345678949 100 -> 123456789 2957db96d56Sopenharmony_cidddvi415 divideint 12345678950 100 -> 123456789 2967db96d56Sopenharmony_cidddvi416 divideint 12345678951 100 -> 123456789 2977db96d56Sopenharmony_cidddvi417 divideint 12345678999 100 -> 123456789 2987db96d56Sopenharmony_cidddvi441 divideint 12345678000 1 -> 12345678000 2997db96d56Sopenharmony_cidddvi442 divideint 1 12345678000 -> 0 3007db96d56Sopenharmony_cidddvi443 divideint 1234567800 1 -> 1234567800 3017db96d56Sopenharmony_cidddvi444 divideint 1 1234567800 -> 0 3027db96d56Sopenharmony_cidddvi445 divideint 1234567890 1 -> 1234567890 3037db96d56Sopenharmony_cidddvi446 divideint 1 1234567890 -> 0 3047db96d56Sopenharmony_cidddvi447 divideint 1234567891 1 -> 1234567891 3057db96d56Sopenharmony_cidddvi448 divideint 1 1234567891 -> 0 3067db96d56Sopenharmony_cidddvi449 divideint 12345678901 1 -> 12345678901 3077db96d56Sopenharmony_cidddvi450 divideint 1 12345678901 -> 0 3087db96d56Sopenharmony_cidddvi451 divideint 1234567896 1 -> 1234567896 3097db96d56Sopenharmony_cidddvi452 divideint 1 1234567896 -> 0 3107db96d56Sopenharmony_ci 3117db96d56Sopenharmony_ci-- more zeros, etc. 3127db96d56Sopenharmony_cidddvi531 divideint 5.00 1E-3 -> 5000 3137db96d56Sopenharmony_cidddvi532 divideint 00.00 0.000 -> NaN Division_undefined 3147db96d56Sopenharmony_cidddvi533 divideint 00.00 0E-3 -> NaN Division_undefined 3157db96d56Sopenharmony_cidddvi534 divideint 0 -0 -> NaN Division_undefined 3167db96d56Sopenharmony_cidddvi535 divideint -0 0 -> NaN Division_undefined 3177db96d56Sopenharmony_cidddvi536 divideint -0 -0 -> NaN Division_undefined 3187db96d56Sopenharmony_ci 3197db96d56Sopenharmony_cidddvi541 divideint 0 -1 -> -0 3207db96d56Sopenharmony_cidddvi542 divideint -0 -1 -> 0 3217db96d56Sopenharmony_cidddvi543 divideint 0 1 -> 0 3227db96d56Sopenharmony_cidddvi544 divideint -0 1 -> -0 3237db96d56Sopenharmony_cidddvi545 divideint -1 0 -> -Infinity Division_by_zero 3247db96d56Sopenharmony_cidddvi546 divideint -1 -0 -> Infinity Division_by_zero 3257db96d56Sopenharmony_cidddvi547 divideint 1 0 -> Infinity Division_by_zero 3267db96d56Sopenharmony_cidddvi548 divideint 1 -0 -> -Infinity Division_by_zero 3277db96d56Sopenharmony_ci 3287db96d56Sopenharmony_cidddvi551 divideint 0.0 -1 -> -0 3297db96d56Sopenharmony_cidddvi552 divideint -0.0 -1 -> 0 3307db96d56Sopenharmony_cidddvi553 divideint 0.0 1 -> 0 3317db96d56Sopenharmony_cidddvi554 divideint -0.0 1 -> -0 3327db96d56Sopenharmony_cidddvi555 divideint -1.0 0 -> -Infinity Division_by_zero 3337db96d56Sopenharmony_cidddvi556 divideint -1.0 -0 -> Infinity Division_by_zero 3347db96d56Sopenharmony_cidddvi557 divideint 1.0 0 -> Infinity Division_by_zero 3357db96d56Sopenharmony_cidddvi558 divideint 1.0 -0 -> -Infinity Division_by_zero 3367db96d56Sopenharmony_ci 3377db96d56Sopenharmony_cidddvi561 divideint 0 -1.0 -> -0 3387db96d56Sopenharmony_cidddvi562 divideint -0 -1.0 -> 0 3397db96d56Sopenharmony_cidddvi563 divideint 0 1.0 -> 0 3407db96d56Sopenharmony_cidddvi564 divideint -0 1.0 -> -0 3417db96d56Sopenharmony_cidddvi565 divideint -1 0.0 -> -Infinity Division_by_zero 3427db96d56Sopenharmony_cidddvi566 divideint -1 -0.0 -> Infinity Division_by_zero 3437db96d56Sopenharmony_cidddvi567 divideint 1 0.0 -> Infinity Division_by_zero 3447db96d56Sopenharmony_cidddvi568 divideint 1 -0.0 -> -Infinity Division_by_zero 3457db96d56Sopenharmony_ci 3467db96d56Sopenharmony_cidddvi571 divideint 0.0 -1.0 -> -0 3477db96d56Sopenharmony_cidddvi572 divideint -0.0 -1.0 -> 0 3487db96d56Sopenharmony_cidddvi573 divideint 0.0 1.0 -> 0 3497db96d56Sopenharmony_cidddvi574 divideint -0.0 1.0 -> -0 3507db96d56Sopenharmony_cidddvi575 divideint -1.0 0.0 -> -Infinity Division_by_zero 3517db96d56Sopenharmony_cidddvi576 divideint -1.0 -0.0 -> Infinity Division_by_zero 3527db96d56Sopenharmony_cidddvi577 divideint 1.0 0.0 -> Infinity Division_by_zero 3537db96d56Sopenharmony_cidddvi578 divideint 1.0 -0.0 -> -Infinity Division_by_zero 3547db96d56Sopenharmony_ci 3557db96d56Sopenharmony_ci-- Specials 3567db96d56Sopenharmony_cidddvi580 divideint Inf -Inf -> NaN Invalid_operation 3577db96d56Sopenharmony_cidddvi581 divideint Inf -1000 -> -Infinity 3587db96d56Sopenharmony_cidddvi582 divideint Inf -1 -> -Infinity 3597db96d56Sopenharmony_cidddvi583 divideint Inf -0 -> -Infinity 3607db96d56Sopenharmony_cidddvi584 divideint Inf 0 -> Infinity 3617db96d56Sopenharmony_cidddvi585 divideint Inf 1 -> Infinity 3627db96d56Sopenharmony_cidddvi586 divideint Inf 1000 -> Infinity 3637db96d56Sopenharmony_cidddvi587 divideint Inf Inf -> NaN Invalid_operation 3647db96d56Sopenharmony_cidddvi588 divideint -1000 Inf -> -0 3657db96d56Sopenharmony_cidddvi589 divideint -Inf Inf -> NaN Invalid_operation 3667db96d56Sopenharmony_cidddvi590 divideint -1 Inf -> -0 3677db96d56Sopenharmony_cidddvi591 divideint -0 Inf -> -0 3687db96d56Sopenharmony_cidddvi592 divideint 0 Inf -> 0 3697db96d56Sopenharmony_cidddvi593 divideint 1 Inf -> 0 3707db96d56Sopenharmony_cidddvi594 divideint 1000 Inf -> 0 3717db96d56Sopenharmony_cidddvi595 divideint Inf Inf -> NaN Invalid_operation 3727db96d56Sopenharmony_ci 3737db96d56Sopenharmony_cidddvi600 divideint -Inf -Inf -> NaN Invalid_operation 3747db96d56Sopenharmony_cidddvi601 divideint -Inf -1000 -> Infinity 3757db96d56Sopenharmony_cidddvi602 divideint -Inf -1 -> Infinity 3767db96d56Sopenharmony_cidddvi603 divideint -Inf -0 -> Infinity 3777db96d56Sopenharmony_cidddvi604 divideint -Inf 0 -> -Infinity 3787db96d56Sopenharmony_cidddvi605 divideint -Inf 1 -> -Infinity 3797db96d56Sopenharmony_cidddvi606 divideint -Inf 1000 -> -Infinity 3807db96d56Sopenharmony_cidddvi607 divideint -Inf Inf -> NaN Invalid_operation 3817db96d56Sopenharmony_cidddvi608 divideint -1000 Inf -> -0 3827db96d56Sopenharmony_cidddvi609 divideint -Inf -Inf -> NaN Invalid_operation 3837db96d56Sopenharmony_cidddvi610 divideint -1 -Inf -> 0 3847db96d56Sopenharmony_cidddvi611 divideint -0 -Inf -> 0 3857db96d56Sopenharmony_cidddvi612 divideint 0 -Inf -> -0 3867db96d56Sopenharmony_cidddvi613 divideint 1 -Inf -> -0 3877db96d56Sopenharmony_cidddvi614 divideint 1000 -Inf -> -0 3887db96d56Sopenharmony_cidddvi615 divideint Inf -Inf -> NaN Invalid_operation 3897db96d56Sopenharmony_ci 3907db96d56Sopenharmony_cidddvi621 divideint NaN -Inf -> NaN 3917db96d56Sopenharmony_cidddvi622 divideint NaN -1000 -> NaN 3927db96d56Sopenharmony_cidddvi623 divideint NaN -1 -> NaN 3937db96d56Sopenharmony_cidddvi624 divideint NaN -0 -> NaN 3947db96d56Sopenharmony_cidddvi625 divideint NaN 0 -> NaN 3957db96d56Sopenharmony_cidddvi626 divideint NaN 1 -> NaN 3967db96d56Sopenharmony_cidddvi627 divideint NaN 1000 -> NaN 3977db96d56Sopenharmony_cidddvi628 divideint NaN Inf -> NaN 3987db96d56Sopenharmony_cidddvi629 divideint NaN NaN -> NaN 3997db96d56Sopenharmony_cidddvi630 divideint -Inf NaN -> NaN 4007db96d56Sopenharmony_cidddvi631 divideint -1000 NaN -> NaN 4017db96d56Sopenharmony_cidddvi632 divideint -1 NaN -> NaN 4027db96d56Sopenharmony_cidddvi633 divideint -0 NaN -> NaN 4037db96d56Sopenharmony_cidddvi634 divideint 0 NaN -> NaN 4047db96d56Sopenharmony_cidddvi635 divideint 1 NaN -> NaN 4057db96d56Sopenharmony_cidddvi636 divideint 1000 NaN -> NaN 4067db96d56Sopenharmony_cidddvi637 divideint Inf NaN -> NaN 4077db96d56Sopenharmony_ci 4087db96d56Sopenharmony_cidddvi641 divideint sNaN -Inf -> NaN Invalid_operation 4097db96d56Sopenharmony_cidddvi642 divideint sNaN -1000 -> NaN Invalid_operation 4107db96d56Sopenharmony_cidddvi643 divideint sNaN -1 -> NaN Invalid_operation 4117db96d56Sopenharmony_cidddvi644 divideint sNaN -0 -> NaN Invalid_operation 4127db96d56Sopenharmony_cidddvi645 divideint sNaN 0 -> NaN Invalid_operation 4137db96d56Sopenharmony_cidddvi646 divideint sNaN 1 -> NaN Invalid_operation 4147db96d56Sopenharmony_cidddvi647 divideint sNaN 1000 -> NaN Invalid_operation 4157db96d56Sopenharmony_cidddvi648 divideint sNaN NaN -> NaN Invalid_operation 4167db96d56Sopenharmony_cidddvi649 divideint sNaN sNaN -> NaN Invalid_operation 4177db96d56Sopenharmony_cidddvi650 divideint NaN sNaN -> NaN Invalid_operation 4187db96d56Sopenharmony_cidddvi651 divideint -Inf sNaN -> NaN Invalid_operation 4197db96d56Sopenharmony_cidddvi652 divideint -1000 sNaN -> NaN Invalid_operation 4207db96d56Sopenharmony_cidddvi653 divideint -1 sNaN -> NaN Invalid_operation 4217db96d56Sopenharmony_cidddvi654 divideint -0 sNaN -> NaN Invalid_operation 4227db96d56Sopenharmony_cidddvi655 divideint 0 sNaN -> NaN Invalid_operation 4237db96d56Sopenharmony_cidddvi656 divideint 1 sNaN -> NaN Invalid_operation 4247db96d56Sopenharmony_cidddvi657 divideint 1000 sNaN -> NaN Invalid_operation 4257db96d56Sopenharmony_cidddvi658 divideint Inf sNaN -> NaN Invalid_operation 4267db96d56Sopenharmony_cidddvi659 divideint NaN sNaN -> NaN Invalid_operation 4277db96d56Sopenharmony_ci 4287db96d56Sopenharmony_ci-- propagating NaNs 4297db96d56Sopenharmony_cidddvi661 divideint NaN9 -Inf -> NaN9 4307db96d56Sopenharmony_cidddvi662 divideint NaN8 1000 -> NaN8 4317db96d56Sopenharmony_cidddvi663 divideint NaN7 Inf -> NaN7 4327db96d56Sopenharmony_cidddvi664 divideint -NaN6 NaN5 -> -NaN6 4337db96d56Sopenharmony_cidddvi665 divideint -Inf NaN4 -> NaN4 4347db96d56Sopenharmony_cidddvi666 divideint -1000 NaN3 -> NaN3 4357db96d56Sopenharmony_cidddvi667 divideint Inf -NaN2 -> -NaN2 4367db96d56Sopenharmony_ci 4377db96d56Sopenharmony_cidddvi671 divideint -sNaN99 -Inf -> -NaN99 Invalid_operation 4387db96d56Sopenharmony_cidddvi672 divideint sNaN98 -1 -> NaN98 Invalid_operation 4397db96d56Sopenharmony_cidddvi673 divideint sNaN97 NaN -> NaN97 Invalid_operation 4407db96d56Sopenharmony_cidddvi674 divideint sNaN96 sNaN94 -> NaN96 Invalid_operation 4417db96d56Sopenharmony_cidddvi675 divideint NaN95 sNaN93 -> NaN93 Invalid_operation 4427db96d56Sopenharmony_cidddvi676 divideint -Inf sNaN92 -> NaN92 Invalid_operation 4437db96d56Sopenharmony_cidddvi677 divideint 0 sNaN91 -> NaN91 Invalid_operation 4447db96d56Sopenharmony_cidddvi678 divideint Inf -sNaN90 -> -NaN90 Invalid_operation 4457db96d56Sopenharmony_cidddvi679 divideint NaN sNaN89 -> NaN89 Invalid_operation 4467db96d56Sopenharmony_ci 4477db96d56Sopenharmony_ci-- Null tests 4487db96d56Sopenharmony_cidddvi900 divideint 10 # -> NaN Invalid_operation 4497db96d56Sopenharmony_cidddvi901 divideint # 10 -> NaN Invalid_operation 450