17db96d56Sopenharmony_ci------------------------------------------------------------------------ 27db96d56Sopenharmony_ci-- ddMultiply.decTest -- decDouble multiplication -- 37db96d56Sopenharmony_ci-- Copyright (c) IBM Corporation, 1981, 2008. All rights reserved. -- 47db96d56Sopenharmony_ci------------------------------------------------------------------------ 57db96d56Sopenharmony_ci-- Please see the document "General Decimal Arithmetic Testcases" -- 67db96d56Sopenharmony_ci-- at http://www2.hursley.ibm.com/decimal for the description of -- 77db96d56Sopenharmony_ci-- these testcases. -- 87db96d56Sopenharmony_ci-- -- 97db96d56Sopenharmony_ci-- These testcases are experimental ('beta' versions), and they -- 107db96d56Sopenharmony_ci-- may contain errors. They are offered on an as-is basis. In -- 117db96d56Sopenharmony_ci-- particular, achieving the same results as the tests here is not -- 127db96d56Sopenharmony_ci-- a guarantee that an implementation complies with any Standard -- 137db96d56Sopenharmony_ci-- or specification. The tests are not exhaustive. -- 147db96d56Sopenharmony_ci-- -- 157db96d56Sopenharmony_ci-- Please send comments, suggestions, and corrections to the author: -- 167db96d56Sopenharmony_ci-- Mike Cowlishaw, IBM Fellow -- 177db96d56Sopenharmony_ci-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK -- 187db96d56Sopenharmony_ci-- mfc@uk.ibm.com -- 197db96d56Sopenharmony_ci------------------------------------------------------------------------ 207db96d56Sopenharmony_civersion: 2.59 217db96d56Sopenharmony_ci 227db96d56Sopenharmony_ci-- This set of tests are for decDoubles only; all arguments are 237db96d56Sopenharmony_ci-- representable in a decDouble 247db96d56Sopenharmony_ciprecision: 16 257db96d56Sopenharmony_cimaxExponent: 384 267db96d56Sopenharmony_ciminExponent: -383 277db96d56Sopenharmony_ciextended: 1 287db96d56Sopenharmony_ciclamp: 1 297db96d56Sopenharmony_cirounding: half_even 307db96d56Sopenharmony_ci 317db96d56Sopenharmony_ci-- sanity checks 327db96d56Sopenharmony_ciddmul000 multiply 2 2 -> 4 337db96d56Sopenharmony_ciddmul001 multiply 2 3 -> 6 347db96d56Sopenharmony_ciddmul002 multiply 5 1 -> 5 357db96d56Sopenharmony_ciddmul003 multiply 5 2 -> 10 367db96d56Sopenharmony_ciddmul004 multiply 1.20 2 -> 2.40 377db96d56Sopenharmony_ciddmul005 multiply 1.20 0 -> 0.00 387db96d56Sopenharmony_ciddmul006 multiply 1.20 -2 -> -2.40 397db96d56Sopenharmony_ciddmul007 multiply -1.20 2 -> -2.40 407db96d56Sopenharmony_ciddmul008 multiply -1.20 0 -> -0.00 417db96d56Sopenharmony_ciddmul009 multiply -1.20 -2 -> 2.40 427db96d56Sopenharmony_ciddmul010 multiply 5.09 7.1 -> 36.139 437db96d56Sopenharmony_ciddmul011 multiply 2.5 4 -> 10.0 447db96d56Sopenharmony_ciddmul012 multiply 2.50 4 -> 10.00 457db96d56Sopenharmony_ciddmul013 multiply 1.23456789 1.00000000 -> 1.234567890000000 Rounded 467db96d56Sopenharmony_ciddmul015 multiply 2.50 4 -> 10.00 477db96d56Sopenharmony_ciddmul016 multiply 9.999999999 9.999999999 -> 99.99999998000000 Inexact Rounded 487db96d56Sopenharmony_ciddmul017 multiply 9.999999999 -9.999999999 -> -99.99999998000000 Inexact Rounded 497db96d56Sopenharmony_ciddmul018 multiply -9.999999999 9.999999999 -> -99.99999998000000 Inexact Rounded 507db96d56Sopenharmony_ciddmul019 multiply -9.999999999 -9.999999999 -> 99.99999998000000 Inexact Rounded 517db96d56Sopenharmony_ci 527db96d56Sopenharmony_ci-- zeros, etc. 537db96d56Sopenharmony_ciddmul021 multiply 0 0 -> 0 547db96d56Sopenharmony_ciddmul022 multiply 0 -0 -> -0 557db96d56Sopenharmony_ciddmul023 multiply -0 0 -> -0 567db96d56Sopenharmony_ciddmul024 multiply -0 -0 -> 0 577db96d56Sopenharmony_ciddmul025 multiply -0.0 -0.0 -> 0.00 587db96d56Sopenharmony_ciddmul026 multiply -0.0 -0.0 -> 0.00 597db96d56Sopenharmony_ciddmul027 multiply -0.0 -0.0 -> 0.00 607db96d56Sopenharmony_ciddmul028 multiply -0.0 -0.0 -> 0.00 617db96d56Sopenharmony_ciddmul030 multiply 5.00 1E-3 -> 0.00500 627db96d56Sopenharmony_ciddmul031 multiply 00.00 0.000 -> 0.00000 637db96d56Sopenharmony_ciddmul032 multiply 00.00 0E-3 -> 0.00000 -- rhs is 0 647db96d56Sopenharmony_ciddmul033 multiply 0E-3 00.00 -> 0.00000 -- lhs is 0 657db96d56Sopenharmony_ciddmul034 multiply -5.00 1E-3 -> -0.00500 667db96d56Sopenharmony_ciddmul035 multiply -00.00 0.000 -> -0.00000 677db96d56Sopenharmony_ciddmul036 multiply -00.00 0E-3 -> -0.00000 -- rhs is 0 687db96d56Sopenharmony_ciddmul037 multiply -0E-3 00.00 -> -0.00000 -- lhs is 0 697db96d56Sopenharmony_ciddmul038 multiply 5.00 -1E-3 -> -0.00500 707db96d56Sopenharmony_ciddmul039 multiply 00.00 -0.000 -> -0.00000 717db96d56Sopenharmony_ciddmul040 multiply 00.00 -0E-3 -> -0.00000 -- rhs is 0 727db96d56Sopenharmony_ciddmul041 multiply 0E-3 -00.00 -> -0.00000 -- lhs is 0 737db96d56Sopenharmony_ciddmul042 multiply -5.00 -1E-3 -> 0.00500 747db96d56Sopenharmony_ciddmul043 multiply -00.00 -0.000 -> 0.00000 757db96d56Sopenharmony_ciddmul044 multiply -00.00 -0E-3 -> 0.00000 -- rhs is 0 767db96d56Sopenharmony_ciddmul045 multiply -0E-3 -00.00 -> 0.00000 -- lhs is 0 777db96d56Sopenharmony_ci 787db96d56Sopenharmony_ci-- examples from decarith 797db96d56Sopenharmony_ciddmul050 multiply 1.20 3 -> 3.60 807db96d56Sopenharmony_ciddmul051 multiply 7 3 -> 21 817db96d56Sopenharmony_ciddmul052 multiply 0.9 0.8 -> 0.72 827db96d56Sopenharmony_ciddmul053 multiply 0.9 -0 -> -0.0 837db96d56Sopenharmony_ciddmul054 multiply 654321 654321 -> 428135971041 847db96d56Sopenharmony_ci 857db96d56Sopenharmony_ciddmul060 multiply 123.45 1e7 -> 1.2345E+9 867db96d56Sopenharmony_ciddmul061 multiply 123.45 1e8 -> 1.2345E+10 877db96d56Sopenharmony_ciddmul062 multiply 123.45 1e+9 -> 1.2345E+11 887db96d56Sopenharmony_ciddmul063 multiply 123.45 1e10 -> 1.2345E+12 897db96d56Sopenharmony_ciddmul064 multiply 123.45 1e11 -> 1.2345E+13 907db96d56Sopenharmony_ciddmul065 multiply 123.45 1e12 -> 1.2345E+14 917db96d56Sopenharmony_ciddmul066 multiply 123.45 1e13 -> 1.2345E+15 927db96d56Sopenharmony_ci 937db96d56Sopenharmony_ci 947db96d56Sopenharmony_ci-- test some intermediate lengths 957db96d56Sopenharmony_ci-- 1234567890123456 967db96d56Sopenharmony_ciddmul080 multiply 0.1 1230123456456789 -> 123012345645678.9 977db96d56Sopenharmony_ciddmul084 multiply 0.1 1230123456456789 -> 123012345645678.9 987db96d56Sopenharmony_ciddmul090 multiply 1230123456456789 0.1 -> 123012345645678.9 997db96d56Sopenharmony_ciddmul094 multiply 1230123456456789 0.1 -> 123012345645678.9 1007db96d56Sopenharmony_ci 1017db96d56Sopenharmony_ci-- test some more edge cases and carries 1027db96d56Sopenharmony_ciddmul101 multiply 9 9 -> 81 1037db96d56Sopenharmony_ciddmul102 multiply 9 90 -> 810 1047db96d56Sopenharmony_ciddmul103 multiply 9 900 -> 8100 1057db96d56Sopenharmony_ciddmul104 multiply 9 9000 -> 81000 1067db96d56Sopenharmony_ciddmul105 multiply 9 90000 -> 810000 1077db96d56Sopenharmony_ciddmul106 multiply 9 900000 -> 8100000 1087db96d56Sopenharmony_ciddmul107 multiply 9 9000000 -> 81000000 1097db96d56Sopenharmony_ciddmul108 multiply 9 90000000 -> 810000000 1107db96d56Sopenharmony_ciddmul109 multiply 9 900000000 -> 8100000000 1117db96d56Sopenharmony_ciddmul110 multiply 9 9000000000 -> 81000000000 1127db96d56Sopenharmony_ciddmul111 multiply 9 90000000000 -> 810000000000 1137db96d56Sopenharmony_ciddmul112 multiply 9 900000000000 -> 8100000000000 1147db96d56Sopenharmony_ciddmul113 multiply 9 9000000000000 -> 81000000000000 1157db96d56Sopenharmony_ciddmul114 multiply 9 90000000000000 -> 810000000000000 1167db96d56Sopenharmony_ciddmul115 multiply 9 900000000000000 -> 8100000000000000 1177db96d56Sopenharmony_ci--ddmul116 multiply 9 9000000000000000 -> 81000000000000000 1187db96d56Sopenharmony_ci--ddmul117 multiply 9 90000000000000000 -> 810000000000000000 1197db96d56Sopenharmony_ci--ddmul118 multiply 9 900000000000000000 -> 8100000000000000000 1207db96d56Sopenharmony_ci--ddmul119 multiply 9 9000000000000000000 -> 81000000000000000000 1217db96d56Sopenharmony_ci--ddmul120 multiply 9 90000000000000000000 -> 810000000000000000000 1227db96d56Sopenharmony_ci--ddmul121 multiply 9 900000000000000000000 -> 8100000000000000000000 1237db96d56Sopenharmony_ci--ddmul122 multiply 9 9000000000000000000000 -> 81000000000000000000000 1247db96d56Sopenharmony_ci--ddmul123 multiply 9 90000000000000000000000 -> 810000000000000000000000 1257db96d56Sopenharmony_ci-- test some more edge cases without carries 1267db96d56Sopenharmony_ciddmul131 multiply 3 3 -> 9 1277db96d56Sopenharmony_ciddmul132 multiply 3 30 -> 90 1287db96d56Sopenharmony_ciddmul133 multiply 3 300 -> 900 1297db96d56Sopenharmony_ciddmul134 multiply 3 3000 -> 9000 1307db96d56Sopenharmony_ciddmul135 multiply 3 30000 -> 90000 1317db96d56Sopenharmony_ciddmul136 multiply 3 300000 -> 900000 1327db96d56Sopenharmony_ciddmul137 multiply 3 3000000 -> 9000000 1337db96d56Sopenharmony_ciddmul138 multiply 3 30000000 -> 90000000 1347db96d56Sopenharmony_ciddmul139 multiply 3 300000000 -> 900000000 1357db96d56Sopenharmony_ciddmul140 multiply 3 3000000000 -> 9000000000 1367db96d56Sopenharmony_ciddmul141 multiply 3 30000000000 -> 90000000000 1377db96d56Sopenharmony_ciddmul142 multiply 3 300000000000 -> 900000000000 1387db96d56Sopenharmony_ciddmul143 multiply 3 3000000000000 -> 9000000000000 1397db96d56Sopenharmony_ciddmul144 multiply 3 30000000000000 -> 90000000000000 1407db96d56Sopenharmony_ciddmul145 multiply 3 300000000000000 -> 900000000000000 1417db96d56Sopenharmony_ci 1427db96d56Sopenharmony_ci-- test some edge cases with exact rounding 1437db96d56Sopenharmony_ciddmul301 multiply 9 9 -> 81 1447db96d56Sopenharmony_ciddmul302 multiply 9 90 -> 810 1457db96d56Sopenharmony_ciddmul303 multiply 9 900 -> 8100 1467db96d56Sopenharmony_ciddmul304 multiply 9 9000 -> 81000 1477db96d56Sopenharmony_ciddmul305 multiply 9 90000 -> 810000 1487db96d56Sopenharmony_ciddmul306 multiply 9 900000 -> 8100000 1497db96d56Sopenharmony_ciddmul307 multiply 9 9000000 -> 81000000 1507db96d56Sopenharmony_ciddmul308 multiply 9 90000000 -> 810000000 1517db96d56Sopenharmony_ciddmul309 multiply 9 900000000 -> 8100000000 1527db96d56Sopenharmony_ciddmul310 multiply 9 9000000000 -> 81000000000 1537db96d56Sopenharmony_ciddmul311 multiply 9 90000000000 -> 810000000000 1547db96d56Sopenharmony_ciddmul312 multiply 9 900000000000 -> 8100000000000 1557db96d56Sopenharmony_ciddmul313 multiply 9 9000000000000 -> 81000000000000 1567db96d56Sopenharmony_ciddmul314 multiply 9 90000000000000 -> 810000000000000 1577db96d56Sopenharmony_ciddmul315 multiply 9 900000000000000 -> 8100000000000000 1587db96d56Sopenharmony_ciddmul316 multiply 9 9000000000000000 -> 8.100000000000000E+16 Rounded 1597db96d56Sopenharmony_ciddmul317 multiply 90 9000000000000000 -> 8.100000000000000E+17 Rounded 1607db96d56Sopenharmony_ciddmul318 multiply 900 9000000000000000 -> 8.100000000000000E+18 Rounded 1617db96d56Sopenharmony_ciddmul319 multiply 9000 9000000000000000 -> 8.100000000000000E+19 Rounded 1627db96d56Sopenharmony_ciddmul320 multiply 90000 9000000000000000 -> 8.100000000000000E+20 Rounded 1637db96d56Sopenharmony_ciddmul321 multiply 900000 9000000000000000 -> 8.100000000000000E+21 Rounded 1647db96d56Sopenharmony_ciddmul322 multiply 9000000 9000000000000000 -> 8.100000000000000E+22 Rounded 1657db96d56Sopenharmony_ciddmul323 multiply 90000000 9000000000000000 -> 8.100000000000000E+23 Rounded 1667db96d56Sopenharmony_ci 1677db96d56Sopenharmony_ci-- tryzeros cases 1687db96d56Sopenharmony_ciddmul504 multiply 0E-260 1000E-260 -> 0E-398 Clamped 1697db96d56Sopenharmony_ciddmul505 multiply 100E+260 0E+260 -> 0E+369 Clamped 1707db96d56Sopenharmony_ci-- 65K-1 case 1717db96d56Sopenharmony_ciddmul506 multiply 77.1 850 -> 65535.0 1727db96d56Sopenharmony_ci 1737db96d56Sopenharmony_ci-- mixed with zeros 1747db96d56Sopenharmony_ciddmul541 multiply 0 -1 -> -0 1757db96d56Sopenharmony_ciddmul542 multiply -0 -1 -> 0 1767db96d56Sopenharmony_ciddmul543 multiply 0 1 -> 0 1777db96d56Sopenharmony_ciddmul544 multiply -0 1 -> -0 1787db96d56Sopenharmony_ciddmul545 multiply -1 0 -> -0 1797db96d56Sopenharmony_ciddmul546 multiply -1 -0 -> 0 1807db96d56Sopenharmony_ciddmul547 multiply 1 0 -> 0 1817db96d56Sopenharmony_ciddmul548 multiply 1 -0 -> -0 1827db96d56Sopenharmony_ci 1837db96d56Sopenharmony_ciddmul551 multiply 0.0 -1 -> -0.0 1847db96d56Sopenharmony_ciddmul552 multiply -0.0 -1 -> 0.0 1857db96d56Sopenharmony_ciddmul553 multiply 0.0 1 -> 0.0 1867db96d56Sopenharmony_ciddmul554 multiply -0.0 1 -> -0.0 1877db96d56Sopenharmony_ciddmul555 multiply -1.0 0 -> -0.0 1887db96d56Sopenharmony_ciddmul556 multiply -1.0 -0 -> 0.0 1897db96d56Sopenharmony_ciddmul557 multiply 1.0 0 -> 0.0 1907db96d56Sopenharmony_ciddmul558 multiply 1.0 -0 -> -0.0 1917db96d56Sopenharmony_ci 1927db96d56Sopenharmony_ciddmul561 multiply 0 -1.0 -> -0.0 1937db96d56Sopenharmony_ciddmul562 multiply -0 -1.0 -> 0.0 1947db96d56Sopenharmony_ciddmul563 multiply 0 1.0 -> 0.0 1957db96d56Sopenharmony_ciddmul564 multiply -0 1.0 -> -0.0 1967db96d56Sopenharmony_ciddmul565 multiply -1 0.0 -> -0.0 1977db96d56Sopenharmony_ciddmul566 multiply -1 -0.0 -> 0.0 1987db96d56Sopenharmony_ciddmul567 multiply 1 0.0 -> 0.0 1997db96d56Sopenharmony_ciddmul568 multiply 1 -0.0 -> -0.0 2007db96d56Sopenharmony_ci 2017db96d56Sopenharmony_ciddmul571 multiply 0.0 -1.0 -> -0.00 2027db96d56Sopenharmony_ciddmul572 multiply -0.0 -1.0 -> 0.00 2037db96d56Sopenharmony_ciddmul573 multiply 0.0 1.0 -> 0.00 2047db96d56Sopenharmony_ciddmul574 multiply -0.0 1.0 -> -0.00 2057db96d56Sopenharmony_ciddmul575 multiply -1.0 0.0 -> -0.00 2067db96d56Sopenharmony_ciddmul576 multiply -1.0 -0.0 -> 0.00 2077db96d56Sopenharmony_ciddmul577 multiply 1.0 0.0 -> 0.00 2087db96d56Sopenharmony_ciddmul578 multiply 1.0 -0.0 -> -0.00 2097db96d56Sopenharmony_ci 2107db96d56Sopenharmony_ci 2117db96d56Sopenharmony_ci-- Specials 2127db96d56Sopenharmony_ciddmul580 multiply Inf -Inf -> -Infinity 2137db96d56Sopenharmony_ciddmul581 multiply Inf -1000 -> -Infinity 2147db96d56Sopenharmony_ciddmul582 multiply Inf -1 -> -Infinity 2157db96d56Sopenharmony_ciddmul583 multiply Inf -0 -> NaN Invalid_operation 2167db96d56Sopenharmony_ciddmul584 multiply Inf 0 -> NaN Invalid_operation 2177db96d56Sopenharmony_ciddmul585 multiply Inf 1 -> Infinity 2187db96d56Sopenharmony_ciddmul586 multiply Inf 1000 -> Infinity 2197db96d56Sopenharmony_ciddmul587 multiply Inf Inf -> Infinity 2207db96d56Sopenharmony_ciddmul588 multiply -1000 Inf -> -Infinity 2217db96d56Sopenharmony_ciddmul589 multiply -Inf Inf -> -Infinity 2227db96d56Sopenharmony_ciddmul590 multiply -1 Inf -> -Infinity 2237db96d56Sopenharmony_ciddmul591 multiply -0 Inf -> NaN Invalid_operation 2247db96d56Sopenharmony_ciddmul592 multiply 0 Inf -> NaN Invalid_operation 2257db96d56Sopenharmony_ciddmul593 multiply 1 Inf -> Infinity 2267db96d56Sopenharmony_ciddmul594 multiply 1000 Inf -> Infinity 2277db96d56Sopenharmony_ciddmul595 multiply Inf Inf -> Infinity 2287db96d56Sopenharmony_ci 2297db96d56Sopenharmony_ciddmul600 multiply -Inf -Inf -> Infinity 2307db96d56Sopenharmony_ciddmul601 multiply -Inf -1000 -> Infinity 2317db96d56Sopenharmony_ciddmul602 multiply -Inf -1 -> Infinity 2327db96d56Sopenharmony_ciddmul603 multiply -Inf -0 -> NaN Invalid_operation 2337db96d56Sopenharmony_ciddmul604 multiply -Inf 0 -> NaN Invalid_operation 2347db96d56Sopenharmony_ciddmul605 multiply -Inf 1 -> -Infinity 2357db96d56Sopenharmony_ciddmul606 multiply -Inf 1000 -> -Infinity 2367db96d56Sopenharmony_ciddmul607 multiply -Inf Inf -> -Infinity 2377db96d56Sopenharmony_ciddmul608 multiply -1000 Inf -> -Infinity 2387db96d56Sopenharmony_ciddmul609 multiply -Inf -Inf -> Infinity 2397db96d56Sopenharmony_ciddmul610 multiply -1 -Inf -> Infinity 2407db96d56Sopenharmony_ciddmul611 multiply -0 -Inf -> NaN Invalid_operation 2417db96d56Sopenharmony_ciddmul612 multiply 0 -Inf -> NaN Invalid_operation 2427db96d56Sopenharmony_ciddmul613 multiply 1 -Inf -> -Infinity 2437db96d56Sopenharmony_ciddmul614 multiply 1000 -Inf -> -Infinity 2447db96d56Sopenharmony_ciddmul615 multiply Inf -Inf -> -Infinity 2457db96d56Sopenharmony_ci 2467db96d56Sopenharmony_ciddmul621 multiply NaN -Inf -> NaN 2477db96d56Sopenharmony_ciddmul622 multiply NaN -1000 -> NaN 2487db96d56Sopenharmony_ciddmul623 multiply NaN -1 -> NaN 2497db96d56Sopenharmony_ciddmul624 multiply NaN -0 -> NaN 2507db96d56Sopenharmony_ciddmul625 multiply NaN 0 -> NaN 2517db96d56Sopenharmony_ciddmul626 multiply NaN 1 -> NaN 2527db96d56Sopenharmony_ciddmul627 multiply NaN 1000 -> NaN 2537db96d56Sopenharmony_ciddmul628 multiply NaN Inf -> NaN 2547db96d56Sopenharmony_ciddmul629 multiply NaN NaN -> NaN 2557db96d56Sopenharmony_ciddmul630 multiply -Inf NaN -> NaN 2567db96d56Sopenharmony_ciddmul631 multiply -1000 NaN -> NaN 2577db96d56Sopenharmony_ciddmul632 multiply -1 NaN -> NaN 2587db96d56Sopenharmony_ciddmul633 multiply -0 NaN -> NaN 2597db96d56Sopenharmony_ciddmul634 multiply 0 NaN -> NaN 2607db96d56Sopenharmony_ciddmul635 multiply 1 NaN -> NaN 2617db96d56Sopenharmony_ciddmul636 multiply 1000 NaN -> NaN 2627db96d56Sopenharmony_ciddmul637 multiply Inf NaN -> NaN 2637db96d56Sopenharmony_ci 2647db96d56Sopenharmony_ciddmul641 multiply sNaN -Inf -> NaN Invalid_operation 2657db96d56Sopenharmony_ciddmul642 multiply sNaN -1000 -> NaN Invalid_operation 2667db96d56Sopenharmony_ciddmul643 multiply sNaN -1 -> NaN Invalid_operation 2677db96d56Sopenharmony_ciddmul644 multiply sNaN -0 -> NaN Invalid_operation 2687db96d56Sopenharmony_ciddmul645 multiply sNaN 0 -> NaN Invalid_operation 2697db96d56Sopenharmony_ciddmul646 multiply sNaN 1 -> NaN Invalid_operation 2707db96d56Sopenharmony_ciddmul647 multiply sNaN 1000 -> NaN Invalid_operation 2717db96d56Sopenharmony_ciddmul648 multiply sNaN NaN -> NaN Invalid_operation 2727db96d56Sopenharmony_ciddmul649 multiply sNaN sNaN -> NaN Invalid_operation 2737db96d56Sopenharmony_ciddmul650 multiply NaN sNaN -> NaN Invalid_operation 2747db96d56Sopenharmony_ciddmul651 multiply -Inf sNaN -> NaN Invalid_operation 2757db96d56Sopenharmony_ciddmul652 multiply -1000 sNaN -> NaN Invalid_operation 2767db96d56Sopenharmony_ciddmul653 multiply -1 sNaN -> NaN Invalid_operation 2777db96d56Sopenharmony_ciddmul654 multiply -0 sNaN -> NaN Invalid_operation 2787db96d56Sopenharmony_ciddmul655 multiply 0 sNaN -> NaN Invalid_operation 2797db96d56Sopenharmony_ciddmul656 multiply 1 sNaN -> NaN Invalid_operation 2807db96d56Sopenharmony_ciddmul657 multiply 1000 sNaN -> NaN Invalid_operation 2817db96d56Sopenharmony_ciddmul658 multiply Inf sNaN -> NaN Invalid_operation 2827db96d56Sopenharmony_ciddmul659 multiply NaN sNaN -> NaN Invalid_operation 2837db96d56Sopenharmony_ci 2847db96d56Sopenharmony_ci-- propagating NaNs 2857db96d56Sopenharmony_ciddmul661 multiply NaN9 -Inf -> NaN9 2867db96d56Sopenharmony_ciddmul662 multiply NaN8 999 -> NaN8 2877db96d56Sopenharmony_ciddmul663 multiply NaN71 Inf -> NaN71 2887db96d56Sopenharmony_ciddmul664 multiply NaN6 NaN5 -> NaN6 2897db96d56Sopenharmony_ciddmul665 multiply -Inf NaN4 -> NaN4 2907db96d56Sopenharmony_ciddmul666 multiply -999 NaN33 -> NaN33 2917db96d56Sopenharmony_ciddmul667 multiply Inf NaN2 -> NaN2 2927db96d56Sopenharmony_ci 2937db96d56Sopenharmony_ciddmul671 multiply sNaN99 -Inf -> NaN99 Invalid_operation 2947db96d56Sopenharmony_ciddmul672 multiply sNaN98 -11 -> NaN98 Invalid_operation 2957db96d56Sopenharmony_ciddmul673 multiply sNaN97 NaN -> NaN97 Invalid_operation 2967db96d56Sopenharmony_ciddmul674 multiply sNaN16 sNaN94 -> NaN16 Invalid_operation 2977db96d56Sopenharmony_ciddmul675 multiply NaN95 sNaN93 -> NaN93 Invalid_operation 2987db96d56Sopenharmony_ciddmul676 multiply -Inf sNaN92 -> NaN92 Invalid_operation 2997db96d56Sopenharmony_ciddmul677 multiply 088 sNaN91 -> NaN91 Invalid_operation 3007db96d56Sopenharmony_ciddmul678 multiply Inf sNaN90 -> NaN90 Invalid_operation 3017db96d56Sopenharmony_ciddmul679 multiply NaN sNaN89 -> NaN89 Invalid_operation 3027db96d56Sopenharmony_ci 3037db96d56Sopenharmony_ciddmul681 multiply -NaN9 -Inf -> -NaN9 3047db96d56Sopenharmony_ciddmul682 multiply -NaN8 999 -> -NaN8 3057db96d56Sopenharmony_ciddmul683 multiply -NaN71 Inf -> -NaN71 3067db96d56Sopenharmony_ciddmul684 multiply -NaN6 -NaN5 -> -NaN6 3077db96d56Sopenharmony_ciddmul685 multiply -Inf -NaN4 -> -NaN4 3087db96d56Sopenharmony_ciddmul686 multiply -999 -NaN33 -> -NaN33 3097db96d56Sopenharmony_ciddmul687 multiply Inf -NaN2 -> -NaN2 3107db96d56Sopenharmony_ci 3117db96d56Sopenharmony_ciddmul691 multiply -sNaN99 -Inf -> -NaN99 Invalid_operation 3127db96d56Sopenharmony_ciddmul692 multiply -sNaN98 -11 -> -NaN98 Invalid_operation 3137db96d56Sopenharmony_ciddmul693 multiply -sNaN97 NaN -> -NaN97 Invalid_operation 3147db96d56Sopenharmony_ciddmul694 multiply -sNaN16 -sNaN94 -> -NaN16 Invalid_operation 3157db96d56Sopenharmony_ciddmul695 multiply -NaN95 -sNaN93 -> -NaN93 Invalid_operation 3167db96d56Sopenharmony_ciddmul696 multiply -Inf -sNaN92 -> -NaN92 Invalid_operation 3177db96d56Sopenharmony_ciddmul697 multiply 088 -sNaN91 -> -NaN91 Invalid_operation 3187db96d56Sopenharmony_ciddmul698 multiply Inf -sNaN90 -> -NaN90 Invalid_operation 3197db96d56Sopenharmony_ciddmul699 multiply -NaN -sNaN89 -> -NaN89 Invalid_operation 3207db96d56Sopenharmony_ci 3217db96d56Sopenharmony_ciddmul701 multiply -NaN -Inf -> -NaN 3227db96d56Sopenharmony_ciddmul702 multiply -NaN 999 -> -NaN 3237db96d56Sopenharmony_ciddmul703 multiply -NaN Inf -> -NaN 3247db96d56Sopenharmony_ciddmul704 multiply -NaN -NaN -> -NaN 3257db96d56Sopenharmony_ciddmul705 multiply -Inf -NaN0 -> -NaN 3267db96d56Sopenharmony_ciddmul706 multiply -999 -NaN -> -NaN 3277db96d56Sopenharmony_ciddmul707 multiply Inf -NaN -> -NaN 3287db96d56Sopenharmony_ci 3297db96d56Sopenharmony_ciddmul711 multiply -sNaN -Inf -> -NaN Invalid_operation 3307db96d56Sopenharmony_ciddmul712 multiply -sNaN -11 -> -NaN Invalid_operation 3317db96d56Sopenharmony_ciddmul713 multiply -sNaN00 NaN -> -NaN Invalid_operation 3327db96d56Sopenharmony_ciddmul714 multiply -sNaN -sNaN -> -NaN Invalid_operation 3337db96d56Sopenharmony_ciddmul715 multiply -NaN -sNaN -> -NaN Invalid_operation 3347db96d56Sopenharmony_ciddmul716 multiply -Inf -sNaN -> -NaN Invalid_operation 3357db96d56Sopenharmony_ciddmul717 multiply 088 -sNaN -> -NaN Invalid_operation 3367db96d56Sopenharmony_ciddmul718 multiply Inf -sNaN -> -NaN Invalid_operation 3377db96d56Sopenharmony_ciddmul719 multiply -NaN -sNaN -> -NaN Invalid_operation 3387db96d56Sopenharmony_ci 3397db96d56Sopenharmony_ci-- overflow and underflow tests .. note subnormal results 3407db96d56Sopenharmony_ci-- signs 3417db96d56Sopenharmony_ciddmul751 multiply 1e+277 1e+311 -> Infinity Overflow Inexact Rounded 3427db96d56Sopenharmony_ciddmul752 multiply 1e+277 -1e+311 -> -Infinity Overflow Inexact Rounded 3437db96d56Sopenharmony_ciddmul753 multiply -1e+277 1e+311 -> -Infinity Overflow Inexact Rounded 3447db96d56Sopenharmony_ciddmul754 multiply -1e+277 -1e+311 -> Infinity Overflow Inexact Rounded 3457db96d56Sopenharmony_ciddmul755 multiply 1e-277 1e-311 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped 3467db96d56Sopenharmony_ciddmul756 multiply 1e-277 -1e-311 -> -0E-398 Underflow Subnormal Inexact Rounded Clamped 3477db96d56Sopenharmony_ciddmul757 multiply -1e-277 1e-311 -> -0E-398 Underflow Subnormal Inexact Rounded Clamped 3487db96d56Sopenharmony_ciddmul758 multiply -1e-277 -1e-311 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped 3497db96d56Sopenharmony_ci 3507db96d56Sopenharmony_ci-- 'subnormal' boundary (all hard underflow or overflow in base arithmetic) 3517db96d56Sopenharmony_ciddmul760 multiply 1e-291 1e-101 -> 1E-392 Subnormal 3527db96d56Sopenharmony_ciddmul761 multiply 1e-291 1e-102 -> 1E-393 Subnormal 3537db96d56Sopenharmony_ciddmul762 multiply 1e-291 1e-103 -> 1E-394 Subnormal 3547db96d56Sopenharmony_ciddmul763 multiply 1e-291 1e-104 -> 1E-395 Subnormal 3557db96d56Sopenharmony_ciddmul764 multiply 1e-291 1e-105 -> 1E-396 Subnormal 3567db96d56Sopenharmony_ciddmul765 multiply 1e-291 1e-106 -> 1E-397 Subnormal 3577db96d56Sopenharmony_ciddmul766 multiply 1e-291 1e-107 -> 1E-398 Subnormal 3587db96d56Sopenharmony_ciddmul767 multiply 1e-291 1e-108 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped 3597db96d56Sopenharmony_ciddmul768 multiply 1e-291 1e-109 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped 3607db96d56Sopenharmony_ciddmul769 multiply 1e-291 1e-110 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped 3617db96d56Sopenharmony_ci-- [no equivalent of 'subnormal' for overflow] 3627db96d56Sopenharmony_ciddmul770 multiply 1e+60 1e+321 -> 1.000000000000E+381 Clamped 3637db96d56Sopenharmony_ciddmul771 multiply 1e+60 1e+322 -> 1.0000000000000E+382 Clamped 3647db96d56Sopenharmony_ciddmul772 multiply 1e+60 1e+323 -> 1.00000000000000E+383 Clamped 3657db96d56Sopenharmony_ciddmul773 multiply 1e+60 1e+324 -> 1.000000000000000E+384 Clamped 3667db96d56Sopenharmony_ciddmul774 multiply 1e+60 1e+325 -> Infinity Overflow Inexact Rounded 3677db96d56Sopenharmony_ciddmul775 multiply 1e+60 1e+326 -> Infinity Overflow Inexact Rounded 3687db96d56Sopenharmony_ciddmul776 multiply 1e+60 1e+327 -> Infinity Overflow Inexact Rounded 3697db96d56Sopenharmony_ciddmul777 multiply 1e+60 1e+328 -> Infinity Overflow Inexact Rounded 3707db96d56Sopenharmony_ciddmul778 multiply 1e+60 1e+329 -> Infinity Overflow Inexact Rounded 3717db96d56Sopenharmony_ciddmul779 multiply 1e+60 1e+330 -> Infinity Overflow Inexact Rounded 3727db96d56Sopenharmony_ci 3737db96d56Sopenharmony_ciddmul801 multiply 1.0000E-394 1 -> 1.0000E-394 Subnormal 3747db96d56Sopenharmony_ciddmul802 multiply 1.000E-394 1e-1 -> 1.000E-395 Subnormal 3757db96d56Sopenharmony_ciddmul803 multiply 1.00E-394 1e-2 -> 1.00E-396 Subnormal 3767db96d56Sopenharmony_ciddmul804 multiply 1.0E-394 1e-3 -> 1.0E-397 Subnormal 3777db96d56Sopenharmony_ciddmul805 multiply 1.0E-394 1e-4 -> 1E-398 Subnormal Rounded 3787db96d56Sopenharmony_ciddmul806 multiply 1.3E-394 1e-4 -> 1E-398 Underflow Subnormal Inexact Rounded 3797db96d56Sopenharmony_ciddmul807 multiply 1.5E-394 1e-4 -> 2E-398 Underflow Subnormal Inexact Rounded 3807db96d56Sopenharmony_ciddmul808 multiply 1.7E-394 1e-4 -> 2E-398 Underflow Subnormal Inexact Rounded 3817db96d56Sopenharmony_ciddmul809 multiply 2.3E-394 1e-4 -> 2E-398 Underflow Subnormal Inexact Rounded 3827db96d56Sopenharmony_ciddmul810 multiply 2.5E-394 1e-4 -> 2E-398 Underflow Subnormal Inexact Rounded 3837db96d56Sopenharmony_ciddmul811 multiply 2.7E-394 1e-4 -> 3E-398 Underflow Subnormal Inexact Rounded 3847db96d56Sopenharmony_ciddmul812 multiply 1.49E-394 1e-4 -> 1E-398 Underflow Subnormal Inexact Rounded 3857db96d56Sopenharmony_ciddmul813 multiply 1.50E-394 1e-4 -> 2E-398 Underflow Subnormal Inexact Rounded 3867db96d56Sopenharmony_ciddmul814 multiply 1.51E-394 1e-4 -> 2E-398 Underflow Subnormal Inexact Rounded 3877db96d56Sopenharmony_ciddmul815 multiply 2.49E-394 1e-4 -> 2E-398 Underflow Subnormal Inexact Rounded 3887db96d56Sopenharmony_ciddmul816 multiply 2.50E-394 1e-4 -> 2E-398 Underflow Subnormal Inexact Rounded 3897db96d56Sopenharmony_ciddmul817 multiply 2.51E-394 1e-4 -> 3E-398 Underflow Subnormal Inexact Rounded 3907db96d56Sopenharmony_ci 3917db96d56Sopenharmony_ciddmul818 multiply 1E-394 1e-4 -> 1E-398 Subnormal 3927db96d56Sopenharmony_ciddmul819 multiply 3E-394 1e-5 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped 3937db96d56Sopenharmony_ciddmul820 multiply 5E-394 1e-5 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped 3947db96d56Sopenharmony_ciddmul821 multiply 7E-394 1e-5 -> 1E-398 Underflow Subnormal Inexact Rounded 3957db96d56Sopenharmony_ciddmul822 multiply 9E-394 1e-5 -> 1E-398 Underflow Subnormal Inexact Rounded 3967db96d56Sopenharmony_ciddmul823 multiply 9.9E-394 1e-5 -> 1E-398 Underflow Subnormal Inexact Rounded 3977db96d56Sopenharmony_ci 3987db96d56Sopenharmony_ciddmul824 multiply 1E-394 -1e-4 -> -1E-398 Subnormal 3997db96d56Sopenharmony_ciddmul825 multiply 3E-394 -1e-5 -> -0E-398 Underflow Subnormal Inexact Rounded Clamped 4007db96d56Sopenharmony_ciddmul826 multiply -5E-394 1e-5 -> -0E-398 Underflow Subnormal Inexact Rounded Clamped 4017db96d56Sopenharmony_ciddmul827 multiply 7E-394 -1e-5 -> -1E-398 Underflow Subnormal Inexact Rounded 4027db96d56Sopenharmony_ciddmul828 multiply -9E-394 1e-5 -> -1E-398 Underflow Subnormal Inexact Rounded 4037db96d56Sopenharmony_ciddmul829 multiply 9.9E-394 -1e-5 -> -1E-398 Underflow Subnormal Inexact Rounded 4047db96d56Sopenharmony_ciddmul830 multiply 3.0E-394 -1e-5 -> -0E-398 Underflow Subnormal Inexact Rounded Clamped 4057db96d56Sopenharmony_ci 4067db96d56Sopenharmony_ciddmul831 multiply 1.0E-199 1e-200 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped 4077db96d56Sopenharmony_ciddmul832 multiply 1.0E-199 1e-199 -> 1E-398 Subnormal Rounded 4087db96d56Sopenharmony_ciddmul833 multiply 1.0E-199 1e-198 -> 1.0E-397 Subnormal 4097db96d56Sopenharmony_ciddmul834 multiply 2.0E-199 2e-198 -> 4.0E-397 Subnormal 4107db96d56Sopenharmony_ciddmul835 multiply 4.0E-199 4e-198 -> 1.60E-396 Subnormal 4117db96d56Sopenharmony_ciddmul836 multiply 10.0E-199 10e-198 -> 1.000E-395 Subnormal 4127db96d56Sopenharmony_ciddmul837 multiply 30.0E-199 30e-198 -> 9.000E-395 Subnormal 4137db96d56Sopenharmony_ciddmul838 multiply 40.0E-199 40e-188 -> 1.6000E-384 Subnormal 4147db96d56Sopenharmony_ciddmul839 multiply 40.0E-199 40e-187 -> 1.6000E-383 4157db96d56Sopenharmony_ciddmul840 multiply 40.0E-199 40e-186 -> 1.6000E-382 4167db96d56Sopenharmony_ci 4177db96d56Sopenharmony_ci-- Long operand overflow may be a different path 4187db96d56Sopenharmony_ciddmul870 multiply 100 9.999E+383 -> Infinity Inexact Overflow Rounded 4197db96d56Sopenharmony_ciddmul871 multiply 100 -9.999E+383 -> -Infinity Inexact Overflow Rounded 4207db96d56Sopenharmony_ciddmul872 multiply 9.999E+383 100 -> Infinity Inexact Overflow Rounded 4217db96d56Sopenharmony_ciddmul873 multiply -9.999E+383 100 -> -Infinity Inexact Overflow Rounded 4227db96d56Sopenharmony_ci 4237db96d56Sopenharmony_ci-- check for double-rounded subnormals 4247db96d56Sopenharmony_ciddmul881 multiply 1.2347E-355 1.2347E-40 -> 1.524E-395 Inexact Rounded Subnormal Underflow 4257db96d56Sopenharmony_ciddmul882 multiply 1.234E-355 1.234E-40 -> 1.523E-395 Inexact Rounded Subnormal Underflow 4267db96d56Sopenharmony_ciddmul883 multiply 1.23E-355 1.23E-40 -> 1.513E-395 Inexact Rounded Subnormal Underflow 4277db96d56Sopenharmony_ciddmul884 multiply 1.2E-355 1.2E-40 -> 1.44E-395 Subnormal 4287db96d56Sopenharmony_ciddmul885 multiply 1.2E-355 1.2E-41 -> 1.44E-396 Subnormal 4297db96d56Sopenharmony_ciddmul886 multiply 1.2E-355 1.2E-42 -> 1.4E-397 Subnormal Inexact Rounded Underflow 4307db96d56Sopenharmony_ciddmul887 multiply 1.2E-355 1.3E-42 -> 1.6E-397 Subnormal Inexact Rounded Underflow 4317db96d56Sopenharmony_ciddmul888 multiply 1.3E-355 1.3E-42 -> 1.7E-397 Subnormal Inexact Rounded Underflow 4327db96d56Sopenharmony_ciddmul889 multiply 1.3E-355 1.3E-43 -> 2E-398 Subnormal Inexact Rounded Underflow 4337db96d56Sopenharmony_ciddmul890 multiply 1.3E-356 1.3E-43 -> 0E-398 Clamped Subnormal Inexact Rounded Underflow 4347db96d56Sopenharmony_ci 4357db96d56Sopenharmony_ciddmul891 multiply 1.2345E-39 1.234E-355 -> 1.5234E-394 Inexact Rounded Subnormal Underflow 4367db96d56Sopenharmony_ciddmul892 multiply 1.23456E-39 1.234E-355 -> 1.5234E-394 Inexact Rounded Subnormal Underflow 4377db96d56Sopenharmony_ciddmul893 multiply 1.2345E-40 1.234E-355 -> 1.523E-395 Inexact Rounded Subnormal Underflow 4387db96d56Sopenharmony_ciddmul894 multiply 1.23456E-40 1.234E-355 -> 1.523E-395 Inexact Rounded Subnormal Underflow 4397db96d56Sopenharmony_ciddmul895 multiply 1.2345E-41 1.234E-355 -> 1.52E-396 Inexact Rounded Subnormal Underflow 4407db96d56Sopenharmony_ciddmul896 multiply 1.23456E-41 1.234E-355 -> 1.52E-396 Inexact Rounded Subnormal Underflow 4417db96d56Sopenharmony_ci 4427db96d56Sopenharmony_ci-- Now explore the case where we get a normal result with Underflow 4437db96d56Sopenharmony_ci-- 1 234567890123456 4447db96d56Sopenharmony_ciddmul900 multiply 0.3000000000E-191 0.3000000000E-191 -> 9.00000000000000E-384 Subnormal Rounded 4457db96d56Sopenharmony_ciddmul901 multiply 0.3000000001E-191 0.3000000001E-191 -> 9.00000000600000E-384 Underflow Inexact Subnormal Rounded 4467db96d56Sopenharmony_ciddmul902 multiply 9.999999999999999E-383 0.0999999999999 -> 9.99999999999000E-384 Underflow Inexact Subnormal Rounded 4477db96d56Sopenharmony_ciddmul903 multiply 9.999999999999999E-383 0.09999999999999 -> 9.99999999999900E-384 Underflow Inexact Subnormal Rounded 4487db96d56Sopenharmony_ciddmul904 multiply 9.999999999999999E-383 0.099999999999999 -> 9.99999999999990E-384 Underflow Inexact Subnormal Rounded 4497db96d56Sopenharmony_ciddmul905 multiply 9.999999999999999E-383 0.0999999999999999 -> 9.99999999999999E-384 Underflow Inexact Subnormal Rounded 4507db96d56Sopenharmony_ci-- The next rounds to Nmin (b**emin); this is the distinguishing case 4517db96d56Sopenharmony_ci-- for detecting tininess (before or after rounding) -- if after 4527db96d56Sopenharmony_ci-- rounding then the result would be the same, but the Underflow flag 4537db96d56Sopenharmony_ci-- would not be set 4547db96d56Sopenharmony_ciddmul906 multiply 9.999999999999999E-383 0.09999999999999999 -> 1.000000000000000E-383 Underflow Inexact Subnormal Rounded 4557db96d56Sopenharmony_ci-- prove those operands were exact 4567db96d56Sopenharmony_ciddmul907 multiply 9.999999999999999E-383 1 -> 9.999999999999999E-383 4577db96d56Sopenharmony_ciddmul908 multiply 1 0.09999999999999999 -> 0.09999999999999999 4587db96d56Sopenharmony_ci 4597db96d56Sopenharmony_ci-- reducing tiniest 4607db96d56Sopenharmony_ciddmul910 multiply 1e-398 0.99 -> 1E-398 Subnormal Inexact Rounded Underflow 4617db96d56Sopenharmony_ciddmul911 multiply 1e-398 0.75 -> 1E-398 Subnormal Inexact Rounded Underflow 4627db96d56Sopenharmony_ciddmul912 multiply 1e-398 0.5 -> 0E-398 Subnormal Inexact Rounded Underflow Clamped 4637db96d56Sopenharmony_ciddmul913 multiply 1e-398 0.25 -> 0E-398 Subnormal Inexact Rounded Underflow Clamped 4647db96d56Sopenharmony_ciddmul914 multiply 1e-398 0.01 -> 0E-398 Subnormal Inexact Rounded Underflow Clamped 4657db96d56Sopenharmony_ci 4667db96d56Sopenharmony_ci-- hugest 4677db96d56Sopenharmony_ciddmul920 multiply 9999999999999999 9999999999999999 -> 9.999999999999998E+31 Inexact Rounded 4687db96d56Sopenharmony_ci 4697db96d56Sopenharmony_ci-- power-of-ten edge cases 4707db96d56Sopenharmony_ciddmul1001 multiply 1 10 -> 10 4717db96d56Sopenharmony_ciddmul1002 multiply 1 100 -> 100 4727db96d56Sopenharmony_ciddmul1003 multiply 1 1000 -> 1000 4737db96d56Sopenharmony_ciddmul1004 multiply 1 10000 -> 10000 4747db96d56Sopenharmony_ciddmul1005 multiply 1 100000 -> 100000 4757db96d56Sopenharmony_ciddmul1006 multiply 1 1000000 -> 1000000 4767db96d56Sopenharmony_ciddmul1007 multiply 1 10000000 -> 10000000 4777db96d56Sopenharmony_ciddmul1008 multiply 1 100000000 -> 100000000 4787db96d56Sopenharmony_ciddmul1009 multiply 1 1000000000 -> 1000000000 4797db96d56Sopenharmony_ciddmul1010 multiply 1 10000000000 -> 10000000000 4807db96d56Sopenharmony_ciddmul1011 multiply 1 100000000000 -> 100000000000 4817db96d56Sopenharmony_ciddmul1012 multiply 1 1000000000000 -> 1000000000000 4827db96d56Sopenharmony_ciddmul1013 multiply 1 10000000000000 -> 10000000000000 4837db96d56Sopenharmony_ciddmul1014 multiply 1 100000000000000 -> 100000000000000 4847db96d56Sopenharmony_ciddmul1015 multiply 1 1000000000000000 -> 1000000000000000 4857db96d56Sopenharmony_ciddmul1021 multiply 10 1 -> 10 4867db96d56Sopenharmony_ciddmul1022 multiply 10 10 -> 100 4877db96d56Sopenharmony_ciddmul1023 multiply 10 100 -> 1000 4887db96d56Sopenharmony_ciddmul1024 multiply 10 1000 -> 10000 4897db96d56Sopenharmony_ciddmul1025 multiply 10 10000 -> 100000 4907db96d56Sopenharmony_ciddmul1026 multiply 10 100000 -> 1000000 4917db96d56Sopenharmony_ciddmul1027 multiply 10 1000000 -> 10000000 4927db96d56Sopenharmony_ciddmul1028 multiply 10 10000000 -> 100000000 4937db96d56Sopenharmony_ciddmul1029 multiply 10 100000000 -> 1000000000 4947db96d56Sopenharmony_ciddmul1030 multiply 10 1000000000 -> 10000000000 4957db96d56Sopenharmony_ciddmul1031 multiply 10 10000000000 -> 100000000000 4967db96d56Sopenharmony_ciddmul1032 multiply 10 100000000000 -> 1000000000000 4977db96d56Sopenharmony_ciddmul1033 multiply 10 1000000000000 -> 10000000000000 4987db96d56Sopenharmony_ciddmul1034 multiply 10 10000000000000 -> 100000000000000 4997db96d56Sopenharmony_ciddmul1035 multiply 10 100000000000000 -> 1000000000000000 5007db96d56Sopenharmony_ciddmul1041 multiply 100 0.1 -> 10.0 5017db96d56Sopenharmony_ciddmul1042 multiply 100 1 -> 100 5027db96d56Sopenharmony_ciddmul1043 multiply 100 10 -> 1000 5037db96d56Sopenharmony_ciddmul1044 multiply 100 100 -> 10000 5047db96d56Sopenharmony_ciddmul1045 multiply 100 1000 -> 100000 5057db96d56Sopenharmony_ciddmul1046 multiply 100 10000 -> 1000000 5067db96d56Sopenharmony_ciddmul1047 multiply 100 100000 -> 10000000 5077db96d56Sopenharmony_ciddmul1048 multiply 100 1000000 -> 100000000 5087db96d56Sopenharmony_ciddmul1049 multiply 100 10000000 -> 1000000000 5097db96d56Sopenharmony_ciddmul1050 multiply 100 100000000 -> 10000000000 5107db96d56Sopenharmony_ciddmul1051 multiply 100 1000000000 -> 100000000000 5117db96d56Sopenharmony_ciddmul1052 multiply 100 10000000000 -> 1000000000000 5127db96d56Sopenharmony_ciddmul1053 multiply 100 100000000000 -> 10000000000000 5137db96d56Sopenharmony_ciddmul1054 multiply 100 1000000000000 -> 100000000000000 5147db96d56Sopenharmony_ciddmul1055 multiply 100 10000000000000 -> 1000000000000000 5157db96d56Sopenharmony_ciddmul1061 multiply 1000 0.01 -> 10.00 5167db96d56Sopenharmony_ciddmul1062 multiply 1000 0.1 -> 100.0 5177db96d56Sopenharmony_ciddmul1063 multiply 1000 1 -> 1000 5187db96d56Sopenharmony_ciddmul1064 multiply 1000 10 -> 10000 5197db96d56Sopenharmony_ciddmul1065 multiply 1000 100 -> 100000 5207db96d56Sopenharmony_ciddmul1066 multiply 1000 1000 -> 1000000 5217db96d56Sopenharmony_ciddmul1067 multiply 1000 10000 -> 10000000 5227db96d56Sopenharmony_ciddmul1068 multiply 1000 100000 -> 100000000 5237db96d56Sopenharmony_ciddmul1069 multiply 1000 1000000 -> 1000000000 5247db96d56Sopenharmony_ciddmul1070 multiply 1000 10000000 -> 10000000000 5257db96d56Sopenharmony_ciddmul1071 multiply 1000 100000000 -> 100000000000 5267db96d56Sopenharmony_ciddmul1072 multiply 1000 1000000000 -> 1000000000000 5277db96d56Sopenharmony_ciddmul1073 multiply 1000 10000000000 -> 10000000000000 5287db96d56Sopenharmony_ciddmul1074 multiply 1000 100000000000 -> 100000000000000 5297db96d56Sopenharmony_ciddmul1075 multiply 1000 1000000000000 -> 1000000000000000 5307db96d56Sopenharmony_ciddmul1081 multiply 10000 0.001 -> 10.000 5317db96d56Sopenharmony_ciddmul1082 multiply 10000 0.01 -> 100.00 5327db96d56Sopenharmony_ciddmul1083 multiply 10000 0.1 -> 1000.0 5337db96d56Sopenharmony_ciddmul1084 multiply 10000 1 -> 10000 5347db96d56Sopenharmony_ciddmul1085 multiply 10000 10 -> 100000 5357db96d56Sopenharmony_ciddmul1086 multiply 10000 100 -> 1000000 5367db96d56Sopenharmony_ciddmul1087 multiply 10000 1000 -> 10000000 5377db96d56Sopenharmony_ciddmul1088 multiply 10000 10000 -> 100000000 5387db96d56Sopenharmony_ciddmul1089 multiply 10000 100000 -> 1000000000 5397db96d56Sopenharmony_ciddmul1090 multiply 10000 1000000 -> 10000000000 5407db96d56Sopenharmony_ciddmul1091 multiply 10000 10000000 -> 100000000000 5417db96d56Sopenharmony_ciddmul1092 multiply 10000 100000000 -> 1000000000000 5427db96d56Sopenharmony_ciddmul1093 multiply 10000 1000000000 -> 10000000000000 5437db96d56Sopenharmony_ciddmul1094 multiply 10000 10000000000 -> 100000000000000 5447db96d56Sopenharmony_ciddmul1095 multiply 10000 100000000000 -> 1000000000000000 5457db96d56Sopenharmony_ci 5467db96d56Sopenharmony_ciddmul1097 multiply 10000 99999999999 -> 999999999990000 5477db96d56Sopenharmony_ciddmul1098 multiply 10000 99999999999 -> 999999999990000 5487db96d56Sopenharmony_ci 5497db96d56Sopenharmony_ci 5507db96d56Sopenharmony_ci-- Null tests 5517db96d56Sopenharmony_ciddmul9990 multiply 10 # -> NaN Invalid_operation 5527db96d56Sopenharmony_ciddmul9991 multiply # 10 -> NaN Invalid_operation 5537db96d56Sopenharmony_ci 554