17db96d56Sopenharmony_ci------------------------------------------------------------------------ 27db96d56Sopenharmony_ci-- rounding.decTest -- decimal rounding modes testcases -- 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-- These tests require that implementations take account of residues in 237db96d56Sopenharmony_ci-- order to get correct results for some rounding modes. Rather than 247db96d56Sopenharmony_ci-- single rounding tests we therefore need tests for most operators. 257db96d56Sopenharmony_ci-- [We do assume add/minus/plus/subtract are common paths, however, as 267db96d56Sopenharmony_ci-- is rounding of negatives (if the latter works for addition, assume it 277db96d56Sopenharmony_ci-- works for the others, too).] 287db96d56Sopenharmony_ci-- 297db96d56Sopenharmony_ci-- Round-for-reround (05UP) is tested as a separate block, mostly for 307db96d56Sopenharmony_ci-- 'historical' reasons. 317db96d56Sopenharmony_ci-- 327db96d56Sopenharmony_ci-- Underflow Subnormal and overflow behaviours are tested under the 337db96d56Sopenharmony_ci-- individual operators. 347db96d56Sopenharmony_ci 357db96d56Sopenharmony_ciextended: 1 367db96d56Sopenharmony_ciprecision: 5 -- for easier visual inspection 377db96d56Sopenharmony_cimaxExponent: 999 387db96d56Sopenharmony_ciminexponent: -999 397db96d56Sopenharmony_ci 407db96d56Sopenharmony_ci-- Addition operators ------------------------------------------------- 417db96d56Sopenharmony_cirounding: down 427db96d56Sopenharmony_ci 437db96d56Sopenharmony_ciradx100 add 12345 -0.1 -> 12344 Inexact Rounded 447db96d56Sopenharmony_ciradx101 add 12345 -0.01 -> 12344 Inexact Rounded 457db96d56Sopenharmony_ciradx102 add 12345 -0.001 -> 12344 Inexact Rounded 467db96d56Sopenharmony_ciradx103 add 12345 -0.00001 -> 12344 Inexact Rounded 477db96d56Sopenharmony_ciradx104 add 12345 -0.000001 -> 12344 Inexact Rounded 487db96d56Sopenharmony_ciradx105 add 12345 -0.0000001 -> 12344 Inexact Rounded 497db96d56Sopenharmony_ciradx106 add 12345 0 -> 12345 507db96d56Sopenharmony_ciradx107 add 12345 0.0000001 -> 12345 Inexact Rounded 517db96d56Sopenharmony_ciradx108 add 12345 0.000001 -> 12345 Inexact Rounded 527db96d56Sopenharmony_ciradx109 add 12345 0.00001 -> 12345 Inexact Rounded 537db96d56Sopenharmony_ciradx110 add 12345 0.0001 -> 12345 Inexact Rounded 547db96d56Sopenharmony_ciradx111 add 12345 0.001 -> 12345 Inexact Rounded 557db96d56Sopenharmony_ciradx112 add 12345 0.01 -> 12345 Inexact Rounded 567db96d56Sopenharmony_ciradx113 add 12345 0.1 -> 12345 Inexact Rounded 577db96d56Sopenharmony_ci 587db96d56Sopenharmony_ciradx115 add 12346 0.49999 -> 12346 Inexact Rounded 597db96d56Sopenharmony_ciradx116 add 12346 0.5 -> 12346 Inexact Rounded 607db96d56Sopenharmony_ciradx117 add 12346 0.50001 -> 12346 Inexact Rounded 617db96d56Sopenharmony_ci 627db96d56Sopenharmony_ciradx120 add 12345 0.4 -> 12345 Inexact Rounded 637db96d56Sopenharmony_ciradx121 add 12345 0.49 -> 12345 Inexact Rounded 647db96d56Sopenharmony_ciradx122 add 12345 0.499 -> 12345 Inexact Rounded 657db96d56Sopenharmony_ciradx123 add 12345 0.49999 -> 12345 Inexact Rounded 667db96d56Sopenharmony_ciradx124 add 12345 0.5 -> 12345 Inexact Rounded 677db96d56Sopenharmony_ciradx125 add 12345 0.50001 -> 12345 Inexact Rounded 687db96d56Sopenharmony_ciradx126 add 12345 0.5001 -> 12345 Inexact Rounded 697db96d56Sopenharmony_ciradx127 add 12345 0.501 -> 12345 Inexact Rounded 707db96d56Sopenharmony_ciradx128 add 12345 0.51 -> 12345 Inexact Rounded 717db96d56Sopenharmony_ciradx129 add 12345 0.6 -> 12345 Inexact Rounded 727db96d56Sopenharmony_ci 737db96d56Sopenharmony_cirounding: half_down 747db96d56Sopenharmony_ci 757db96d56Sopenharmony_ciradx140 add 12345 -0.1 -> 12345 Inexact Rounded 767db96d56Sopenharmony_ciradx141 add 12345 -0.01 -> 12345 Inexact Rounded 777db96d56Sopenharmony_ciradx142 add 12345 -0.001 -> 12345 Inexact Rounded 787db96d56Sopenharmony_ciradx143 add 12345 -0.00001 -> 12345 Inexact Rounded 797db96d56Sopenharmony_ciradx144 add 12345 -0.000001 -> 12345 Inexact Rounded 807db96d56Sopenharmony_ciradx145 add 12345 -0.0000001 -> 12345 Inexact Rounded 817db96d56Sopenharmony_ciradx146 add 12345 0 -> 12345 827db96d56Sopenharmony_ciradx147 add 12345 0.0000001 -> 12345 Inexact Rounded 837db96d56Sopenharmony_ciradx148 add 12345 0.000001 -> 12345 Inexact Rounded 847db96d56Sopenharmony_ciradx149 add 12345 0.00001 -> 12345 Inexact Rounded 857db96d56Sopenharmony_ciradx150 add 12345 0.0001 -> 12345 Inexact Rounded 867db96d56Sopenharmony_ciradx151 add 12345 0.001 -> 12345 Inexact Rounded 877db96d56Sopenharmony_ciradx152 add 12345 0.01 -> 12345 Inexact Rounded 887db96d56Sopenharmony_ciradx153 add 12345 0.1 -> 12345 Inexact Rounded 897db96d56Sopenharmony_ci 907db96d56Sopenharmony_ciradx155 add 12346 0.49999 -> 12346 Inexact Rounded 917db96d56Sopenharmony_ciradx156 add 12346 0.5 -> 12346 Inexact Rounded 927db96d56Sopenharmony_ciradx157 add 12346 0.50001 -> 12347 Inexact Rounded 937db96d56Sopenharmony_ci 947db96d56Sopenharmony_ciradx160 add 12345 0.4 -> 12345 Inexact Rounded 957db96d56Sopenharmony_ciradx161 add 12345 0.49 -> 12345 Inexact Rounded 967db96d56Sopenharmony_ciradx162 add 12345 0.499 -> 12345 Inexact Rounded 977db96d56Sopenharmony_ciradx163 add 12345 0.49999 -> 12345 Inexact Rounded 987db96d56Sopenharmony_ciradx164 add 12345 0.5 -> 12345 Inexact Rounded 997db96d56Sopenharmony_ciradx165 add 12345 0.50001 -> 12346 Inexact Rounded 1007db96d56Sopenharmony_ciradx166 add 12345 0.5001 -> 12346 Inexact Rounded 1017db96d56Sopenharmony_ciradx167 add 12345 0.501 -> 12346 Inexact Rounded 1027db96d56Sopenharmony_ciradx168 add 12345 0.51 -> 12346 Inexact Rounded 1037db96d56Sopenharmony_ciradx169 add 12345 0.6 -> 12346 Inexact Rounded 1047db96d56Sopenharmony_ci 1057db96d56Sopenharmony_cirounding: half_even 1067db96d56Sopenharmony_ci 1077db96d56Sopenharmony_ciradx170 add 12345 -0.1 -> 12345 Inexact Rounded 1087db96d56Sopenharmony_ciradx171 add 12345 -0.01 -> 12345 Inexact Rounded 1097db96d56Sopenharmony_ciradx172 add 12345 -0.001 -> 12345 Inexact Rounded 1107db96d56Sopenharmony_ciradx173 add 12345 -0.00001 -> 12345 Inexact Rounded 1117db96d56Sopenharmony_ciradx174 add 12345 -0.000001 -> 12345 Inexact Rounded 1127db96d56Sopenharmony_ciradx175 add 12345 -0.0000001 -> 12345 Inexact Rounded 1137db96d56Sopenharmony_ciradx176 add 12345 0 -> 12345 1147db96d56Sopenharmony_ciradx177 add 12345 0.0000001 -> 12345 Inexact Rounded 1157db96d56Sopenharmony_ciradx178 add 12345 0.000001 -> 12345 Inexact Rounded 1167db96d56Sopenharmony_ciradx179 add 12345 0.00001 -> 12345 Inexact Rounded 1177db96d56Sopenharmony_ciradx180 add 12345 0.0001 -> 12345 Inexact Rounded 1187db96d56Sopenharmony_ciradx181 add 12345 0.001 -> 12345 Inexact Rounded 1197db96d56Sopenharmony_ciradx182 add 12345 0.01 -> 12345 Inexact Rounded 1207db96d56Sopenharmony_ciradx183 add 12345 0.1 -> 12345 Inexact Rounded 1217db96d56Sopenharmony_ci 1227db96d56Sopenharmony_ciradx185 add 12346 0.49999 -> 12346 Inexact Rounded 1237db96d56Sopenharmony_ciradx186 add 12346 0.5 -> 12346 Inexact Rounded 1247db96d56Sopenharmony_ciradx187 add 12346 0.50001 -> 12347 Inexact Rounded 1257db96d56Sopenharmony_ci 1267db96d56Sopenharmony_ciradx190 add 12345 0.4 -> 12345 Inexact Rounded 1277db96d56Sopenharmony_ciradx191 add 12345 0.49 -> 12345 Inexact Rounded 1287db96d56Sopenharmony_ciradx192 add 12345 0.499 -> 12345 Inexact Rounded 1297db96d56Sopenharmony_ciradx193 add 12345 0.49999 -> 12345 Inexact Rounded 1307db96d56Sopenharmony_ciradx194 add 12345 0.5 -> 12346 Inexact Rounded 1317db96d56Sopenharmony_ciradx195 add 12345 0.50001 -> 12346 Inexact Rounded 1327db96d56Sopenharmony_ciradx196 add 12345 0.5001 -> 12346 Inexact Rounded 1337db96d56Sopenharmony_ciradx197 add 12345 0.501 -> 12346 Inexact Rounded 1347db96d56Sopenharmony_ciradx198 add 12345 0.51 -> 12346 Inexact Rounded 1357db96d56Sopenharmony_ciradx199 add 12345 0.6 -> 12346 Inexact Rounded 1367db96d56Sopenharmony_ci 1377db96d56Sopenharmony_cirounding: half_up 1387db96d56Sopenharmony_ci 1397db96d56Sopenharmony_ciradx200 add 12345 -0.1 -> 12345 Inexact Rounded 1407db96d56Sopenharmony_ciradx201 add 12345 -0.01 -> 12345 Inexact Rounded 1417db96d56Sopenharmony_ciradx202 add 12345 -0.001 -> 12345 Inexact Rounded 1427db96d56Sopenharmony_ciradx203 add 12345 -0.00001 -> 12345 Inexact Rounded 1437db96d56Sopenharmony_ciradx204 add 12345 -0.000001 -> 12345 Inexact Rounded 1447db96d56Sopenharmony_ciradx205 add 12345 -0.0000001 -> 12345 Inexact Rounded 1457db96d56Sopenharmony_ciradx206 add 12345 0 -> 12345 1467db96d56Sopenharmony_ciradx207 add 12345 0.0000001 -> 12345 Inexact Rounded 1477db96d56Sopenharmony_ciradx208 add 12345 0.000001 -> 12345 Inexact Rounded 1487db96d56Sopenharmony_ciradx209 add 12345 0.00001 -> 12345 Inexact Rounded 1497db96d56Sopenharmony_ciradx210 add 12345 0.0001 -> 12345 Inexact Rounded 1507db96d56Sopenharmony_ciradx211 add 12345 0.001 -> 12345 Inexact Rounded 1517db96d56Sopenharmony_ciradx212 add 12345 0.01 -> 12345 Inexact Rounded 1527db96d56Sopenharmony_ciradx213 add 12345 0.1 -> 12345 Inexact Rounded 1537db96d56Sopenharmony_ci 1547db96d56Sopenharmony_ciradx215 add 12346 0.49999 -> 12346 Inexact Rounded 1557db96d56Sopenharmony_ciradx216 add 12346 0.5 -> 12347 Inexact Rounded 1567db96d56Sopenharmony_ciradx217 add 12346 0.50001 -> 12347 Inexact Rounded 1577db96d56Sopenharmony_ci 1587db96d56Sopenharmony_ciradx220 add 12345 0.4 -> 12345 Inexact Rounded 1597db96d56Sopenharmony_ciradx221 add 12345 0.49 -> 12345 Inexact Rounded 1607db96d56Sopenharmony_ciradx222 add 12345 0.499 -> 12345 Inexact Rounded 1617db96d56Sopenharmony_ciradx223 add 12345 0.49999 -> 12345 Inexact Rounded 1627db96d56Sopenharmony_ciradx224 add 12345 0.5 -> 12346 Inexact Rounded 1637db96d56Sopenharmony_ciradx225 add 12345 0.50001 -> 12346 Inexact Rounded 1647db96d56Sopenharmony_ciradx226 add 12345 0.5001 -> 12346 Inexact Rounded 1657db96d56Sopenharmony_ciradx227 add 12345 0.501 -> 12346 Inexact Rounded 1667db96d56Sopenharmony_ciradx228 add 12345 0.51 -> 12346 Inexact Rounded 1677db96d56Sopenharmony_ciradx229 add 12345 0.6 -> 12346 Inexact Rounded 1687db96d56Sopenharmony_ci 1697db96d56Sopenharmony_cirounding: up 1707db96d56Sopenharmony_ci 1717db96d56Sopenharmony_ciradx230 add 12345 -0.1 -> 12345 Inexact Rounded 1727db96d56Sopenharmony_ciradx231 add 12345 -0.01 -> 12345 Inexact Rounded 1737db96d56Sopenharmony_ciradx232 add 12345 -0.001 -> 12345 Inexact Rounded 1747db96d56Sopenharmony_ciradx233 add 12345 -0.00001 -> 12345 Inexact Rounded 1757db96d56Sopenharmony_ciradx234 add 12345 -0.000001 -> 12345 Inexact Rounded 1767db96d56Sopenharmony_ciradx235 add 12345 -0.0000001 -> 12345 Inexact Rounded 1777db96d56Sopenharmony_ciradx236 add 12345 0 -> 12345 1787db96d56Sopenharmony_ciradx237 add 12345 0.0000001 -> 12346 Inexact Rounded 1797db96d56Sopenharmony_ciradx238 add 12345 0.000001 -> 12346 Inexact Rounded 1807db96d56Sopenharmony_ciradx239 add 12345 0.00001 -> 12346 Inexact Rounded 1817db96d56Sopenharmony_ciradx240 add 12345 0.0001 -> 12346 Inexact Rounded 1827db96d56Sopenharmony_ciradx241 add 12345 0.001 -> 12346 Inexact Rounded 1837db96d56Sopenharmony_ciradx242 add 12345 0.01 -> 12346 Inexact Rounded 1847db96d56Sopenharmony_ciradx243 add 12345 0.1 -> 12346 Inexact Rounded 1857db96d56Sopenharmony_ci 1867db96d56Sopenharmony_ciradx245 add 12346 0.49999 -> 12347 Inexact Rounded 1877db96d56Sopenharmony_ciradx246 add 12346 0.5 -> 12347 Inexact Rounded 1887db96d56Sopenharmony_ciradx247 add 12346 0.50001 -> 12347 Inexact Rounded 1897db96d56Sopenharmony_ci 1907db96d56Sopenharmony_ciradx250 add 12345 0.4 -> 12346 Inexact Rounded 1917db96d56Sopenharmony_ciradx251 add 12345 0.49 -> 12346 Inexact Rounded 1927db96d56Sopenharmony_ciradx252 add 12345 0.499 -> 12346 Inexact Rounded 1937db96d56Sopenharmony_ciradx253 add 12345 0.49999 -> 12346 Inexact Rounded 1947db96d56Sopenharmony_ciradx254 add 12345 0.5 -> 12346 Inexact Rounded 1957db96d56Sopenharmony_ciradx255 add 12345 0.50001 -> 12346 Inexact Rounded 1967db96d56Sopenharmony_ciradx256 add 12345 0.5001 -> 12346 Inexact Rounded 1977db96d56Sopenharmony_ciradx257 add 12345 0.501 -> 12346 Inexact Rounded 1987db96d56Sopenharmony_ciradx258 add 12345 0.51 -> 12346 Inexact Rounded 1997db96d56Sopenharmony_ciradx259 add 12345 0.6 -> 12346 Inexact Rounded 2007db96d56Sopenharmony_ci 2017db96d56Sopenharmony_cirounding: floor 2027db96d56Sopenharmony_ci 2037db96d56Sopenharmony_ciradx300 add 12345 -0.1 -> 12344 Inexact Rounded 2047db96d56Sopenharmony_ciradx301 add 12345 -0.01 -> 12344 Inexact Rounded 2057db96d56Sopenharmony_ciradx302 add 12345 -0.001 -> 12344 Inexact Rounded 2067db96d56Sopenharmony_ciradx303 add 12345 -0.00001 -> 12344 Inexact Rounded 2077db96d56Sopenharmony_ciradx304 add 12345 -0.000001 -> 12344 Inexact Rounded 2087db96d56Sopenharmony_ciradx305 add 12345 -0.0000001 -> 12344 Inexact Rounded 2097db96d56Sopenharmony_ciradx306 add 12345 0 -> 12345 2107db96d56Sopenharmony_ciradx307 add 12345 0.0000001 -> 12345 Inexact Rounded 2117db96d56Sopenharmony_ciradx308 add 12345 0.000001 -> 12345 Inexact Rounded 2127db96d56Sopenharmony_ciradx309 add 12345 0.00001 -> 12345 Inexact Rounded 2137db96d56Sopenharmony_ciradx310 add 12345 0.0001 -> 12345 Inexact Rounded 2147db96d56Sopenharmony_ciradx311 add 12345 0.001 -> 12345 Inexact Rounded 2157db96d56Sopenharmony_ciradx312 add 12345 0.01 -> 12345 Inexact Rounded 2167db96d56Sopenharmony_ciradx313 add 12345 0.1 -> 12345 Inexact Rounded 2177db96d56Sopenharmony_ci 2187db96d56Sopenharmony_ciradx315 add 12346 0.49999 -> 12346 Inexact Rounded 2197db96d56Sopenharmony_ciradx316 add 12346 0.5 -> 12346 Inexact Rounded 2207db96d56Sopenharmony_ciradx317 add 12346 0.50001 -> 12346 Inexact Rounded 2217db96d56Sopenharmony_ci 2227db96d56Sopenharmony_ciradx320 add 12345 0.4 -> 12345 Inexact Rounded 2237db96d56Sopenharmony_ciradx321 add 12345 0.49 -> 12345 Inexact Rounded 2247db96d56Sopenharmony_ciradx322 add 12345 0.499 -> 12345 Inexact Rounded 2257db96d56Sopenharmony_ciradx323 add 12345 0.49999 -> 12345 Inexact Rounded 2267db96d56Sopenharmony_ciradx324 add 12345 0.5 -> 12345 Inexact Rounded 2277db96d56Sopenharmony_ciradx325 add 12345 0.50001 -> 12345 Inexact Rounded 2287db96d56Sopenharmony_ciradx326 add 12345 0.5001 -> 12345 Inexact Rounded 2297db96d56Sopenharmony_ciradx327 add 12345 0.501 -> 12345 Inexact Rounded 2307db96d56Sopenharmony_ciradx328 add 12345 0.51 -> 12345 Inexact Rounded 2317db96d56Sopenharmony_ciradx329 add 12345 0.6 -> 12345 Inexact Rounded 2327db96d56Sopenharmony_ci 2337db96d56Sopenharmony_cirounding: ceiling 2347db96d56Sopenharmony_ci 2357db96d56Sopenharmony_ciradx330 add 12345 -0.1 -> 12345 Inexact Rounded 2367db96d56Sopenharmony_ciradx331 add 12345 -0.01 -> 12345 Inexact Rounded 2377db96d56Sopenharmony_ciradx332 add 12345 -0.001 -> 12345 Inexact Rounded 2387db96d56Sopenharmony_ciradx333 add 12345 -0.00001 -> 12345 Inexact Rounded 2397db96d56Sopenharmony_ciradx334 add 12345 -0.000001 -> 12345 Inexact Rounded 2407db96d56Sopenharmony_ciradx335 add 12345 -0.0000001 -> 12345 Inexact Rounded 2417db96d56Sopenharmony_ciradx336 add 12345 0 -> 12345 2427db96d56Sopenharmony_ciradx337 add 12345 0.0000001 -> 12346 Inexact Rounded 2437db96d56Sopenharmony_ciradx338 add 12345 0.000001 -> 12346 Inexact Rounded 2447db96d56Sopenharmony_ciradx339 add 12345 0.00001 -> 12346 Inexact Rounded 2457db96d56Sopenharmony_ciradx340 add 12345 0.0001 -> 12346 Inexact Rounded 2467db96d56Sopenharmony_ciradx341 add 12345 0.001 -> 12346 Inexact Rounded 2477db96d56Sopenharmony_ciradx342 add 12345 0.01 -> 12346 Inexact Rounded 2487db96d56Sopenharmony_ciradx343 add 12345 0.1 -> 12346 Inexact Rounded 2497db96d56Sopenharmony_ci 2507db96d56Sopenharmony_ciradx345 add 12346 0.49999 -> 12347 Inexact Rounded 2517db96d56Sopenharmony_ciradx346 add 12346 0.5 -> 12347 Inexact Rounded 2527db96d56Sopenharmony_ciradx347 add 12346 0.50001 -> 12347 Inexact Rounded 2537db96d56Sopenharmony_ci 2547db96d56Sopenharmony_ciradx350 add 12345 0.4 -> 12346 Inexact Rounded 2557db96d56Sopenharmony_ciradx351 add 12345 0.49 -> 12346 Inexact Rounded 2567db96d56Sopenharmony_ciradx352 add 12345 0.499 -> 12346 Inexact Rounded 2577db96d56Sopenharmony_ciradx353 add 12345 0.49999 -> 12346 Inexact Rounded 2587db96d56Sopenharmony_ciradx354 add 12345 0.5 -> 12346 Inexact Rounded 2597db96d56Sopenharmony_ciradx355 add 12345 0.50001 -> 12346 Inexact Rounded 2607db96d56Sopenharmony_ciradx356 add 12345 0.5001 -> 12346 Inexact Rounded 2617db96d56Sopenharmony_ciradx357 add 12345 0.501 -> 12346 Inexact Rounded 2627db96d56Sopenharmony_ciradx358 add 12345 0.51 -> 12346 Inexact Rounded 2637db96d56Sopenharmony_ciradx359 add 12345 0.6 -> 12346 Inexact Rounded 2647db96d56Sopenharmony_ci 2657db96d56Sopenharmony_ci-- negatives... 2667db96d56Sopenharmony_ci 2677db96d56Sopenharmony_cirounding: down 2687db96d56Sopenharmony_ci 2697db96d56Sopenharmony_cirsux100 add -12345 -0.1 -> -12345 Inexact Rounded 2707db96d56Sopenharmony_cirsux101 add -12345 -0.01 -> -12345 Inexact Rounded 2717db96d56Sopenharmony_cirsux102 add -12345 -0.001 -> -12345 Inexact Rounded 2727db96d56Sopenharmony_cirsux103 add -12345 -0.00001 -> -12345 Inexact Rounded 2737db96d56Sopenharmony_cirsux104 add -12345 -0.000001 -> -12345 Inexact Rounded 2747db96d56Sopenharmony_cirsux105 add -12345 -0.0000001 -> -12345 Inexact Rounded 2757db96d56Sopenharmony_cirsux106 add -12345 0 -> -12345 2767db96d56Sopenharmony_cirsux107 add -12345 0.0000001 -> -12344 Inexact Rounded 2777db96d56Sopenharmony_cirsux108 add -12345 0.000001 -> -12344 Inexact Rounded 2787db96d56Sopenharmony_cirsux109 add -12345 0.00001 -> -12344 Inexact Rounded 2797db96d56Sopenharmony_cirsux110 add -12345 0.0001 -> -12344 Inexact Rounded 2807db96d56Sopenharmony_cirsux111 add -12345 0.001 -> -12344 Inexact Rounded 2817db96d56Sopenharmony_cirsux112 add -12345 0.01 -> -12344 Inexact Rounded 2827db96d56Sopenharmony_cirsux113 add -12345 0.1 -> -12344 Inexact Rounded 2837db96d56Sopenharmony_ci 2847db96d56Sopenharmony_cirsux115 add -12346 0.49999 -> -12345 Inexact Rounded 2857db96d56Sopenharmony_cirsux116 add -12346 0.5 -> -12345 Inexact Rounded 2867db96d56Sopenharmony_cirsux117 add -12346 0.50001 -> -12345 Inexact Rounded 2877db96d56Sopenharmony_ci 2887db96d56Sopenharmony_cirsux120 add -12345 0.4 -> -12344 Inexact Rounded 2897db96d56Sopenharmony_cirsux121 add -12345 0.49 -> -12344 Inexact Rounded 2907db96d56Sopenharmony_cirsux122 add -12345 0.499 -> -12344 Inexact Rounded 2917db96d56Sopenharmony_cirsux123 add -12345 0.49999 -> -12344 Inexact Rounded 2927db96d56Sopenharmony_cirsux124 add -12345 0.5 -> -12344 Inexact Rounded 2937db96d56Sopenharmony_cirsux125 add -12345 0.50001 -> -12344 Inexact Rounded 2947db96d56Sopenharmony_cirsux126 add -12345 0.5001 -> -12344 Inexact Rounded 2957db96d56Sopenharmony_cirsux127 add -12345 0.501 -> -12344 Inexact Rounded 2967db96d56Sopenharmony_cirsux128 add -12345 0.51 -> -12344 Inexact Rounded 2977db96d56Sopenharmony_cirsux129 add -12345 0.6 -> -12344 Inexact Rounded 2987db96d56Sopenharmony_ci 2997db96d56Sopenharmony_cirounding: half_down 3007db96d56Sopenharmony_ci 3017db96d56Sopenharmony_cirsux140 add -12345 -0.1 -> -12345 Inexact Rounded 3027db96d56Sopenharmony_cirsux141 add -12345 -0.01 -> -12345 Inexact Rounded 3037db96d56Sopenharmony_cirsux142 add -12345 -0.001 -> -12345 Inexact Rounded 3047db96d56Sopenharmony_cirsux143 add -12345 -0.00001 -> -12345 Inexact Rounded 3057db96d56Sopenharmony_cirsux144 add -12345 -0.000001 -> -12345 Inexact Rounded 3067db96d56Sopenharmony_cirsux145 add -12345 -0.0000001 -> -12345 Inexact Rounded 3077db96d56Sopenharmony_cirsux146 add -12345 0 -> -12345 3087db96d56Sopenharmony_cirsux147 add -12345 0.0000001 -> -12345 Inexact Rounded 3097db96d56Sopenharmony_cirsux148 add -12345 0.000001 -> -12345 Inexact Rounded 3107db96d56Sopenharmony_cirsux149 add -12345 0.00001 -> -12345 Inexact Rounded 3117db96d56Sopenharmony_cirsux150 add -12345 0.0001 -> -12345 Inexact Rounded 3127db96d56Sopenharmony_cirsux151 add -12345 0.001 -> -12345 Inexact Rounded 3137db96d56Sopenharmony_cirsux152 add -12345 0.01 -> -12345 Inexact Rounded 3147db96d56Sopenharmony_cirsux153 add -12345 0.1 -> -12345 Inexact Rounded 3157db96d56Sopenharmony_ci 3167db96d56Sopenharmony_cirsux155 add -12346 0.49999 -> -12346 Inexact Rounded 3177db96d56Sopenharmony_cirsux156 add -12346 0.5 -> -12345 Inexact Rounded 3187db96d56Sopenharmony_cirsux157 add -12346 0.50001 -> -12345 Inexact Rounded 3197db96d56Sopenharmony_ci 3207db96d56Sopenharmony_cirsux160 add -12345 0.4 -> -12345 Inexact Rounded 3217db96d56Sopenharmony_cirsux161 add -12345 0.49 -> -12345 Inexact Rounded 3227db96d56Sopenharmony_cirsux162 add -12345 0.499 -> -12345 Inexact Rounded 3237db96d56Sopenharmony_cirsux163 add -12345 0.49999 -> -12345 Inexact Rounded 3247db96d56Sopenharmony_cirsux164 add -12345 0.5 -> -12344 Inexact Rounded 3257db96d56Sopenharmony_cirsux165 add -12345 0.50001 -> -12344 Inexact Rounded 3267db96d56Sopenharmony_cirsux166 add -12345 0.5001 -> -12344 Inexact Rounded 3277db96d56Sopenharmony_cirsux167 add -12345 0.501 -> -12344 Inexact Rounded 3287db96d56Sopenharmony_cirsux168 add -12345 0.51 -> -12344 Inexact Rounded 3297db96d56Sopenharmony_cirsux169 add -12345 0.6 -> -12344 Inexact Rounded 3307db96d56Sopenharmony_ci 3317db96d56Sopenharmony_cirounding: half_even 3327db96d56Sopenharmony_ci 3337db96d56Sopenharmony_cirsux170 add -12345 -0.1 -> -12345 Inexact Rounded 3347db96d56Sopenharmony_cirsux171 add -12345 -0.01 -> -12345 Inexact Rounded 3357db96d56Sopenharmony_cirsux172 add -12345 -0.001 -> -12345 Inexact Rounded 3367db96d56Sopenharmony_cirsux173 add -12345 -0.00001 -> -12345 Inexact Rounded 3377db96d56Sopenharmony_cirsux174 add -12345 -0.000001 -> -12345 Inexact Rounded 3387db96d56Sopenharmony_cirsux175 add -12345 -0.0000001 -> -12345 Inexact Rounded 3397db96d56Sopenharmony_cirsux176 add -12345 0 -> -12345 3407db96d56Sopenharmony_cirsux177 add -12345 0.0000001 -> -12345 Inexact Rounded 3417db96d56Sopenharmony_cirsux178 add -12345 0.000001 -> -12345 Inexact Rounded 3427db96d56Sopenharmony_cirsux179 add -12345 0.00001 -> -12345 Inexact Rounded 3437db96d56Sopenharmony_cirsux180 add -12345 0.0001 -> -12345 Inexact Rounded 3447db96d56Sopenharmony_cirsux181 add -12345 0.001 -> -12345 Inexact Rounded 3457db96d56Sopenharmony_cirsux182 add -12345 0.01 -> -12345 Inexact Rounded 3467db96d56Sopenharmony_cirsux183 add -12345 0.1 -> -12345 Inexact Rounded 3477db96d56Sopenharmony_ci 3487db96d56Sopenharmony_cirsux185 add -12346 0.49999 -> -12346 Inexact Rounded 3497db96d56Sopenharmony_cirsux186 add -12346 0.5 -> -12346 Inexact Rounded 3507db96d56Sopenharmony_cirsux187 add -12346 0.50001 -> -12345 Inexact Rounded 3517db96d56Sopenharmony_ci 3527db96d56Sopenharmony_cirsux190 add -12345 0.4 -> -12345 Inexact Rounded 3537db96d56Sopenharmony_cirsux191 add -12345 0.49 -> -12345 Inexact Rounded 3547db96d56Sopenharmony_cirsux192 add -12345 0.499 -> -12345 Inexact Rounded 3557db96d56Sopenharmony_cirsux193 add -12345 0.49999 -> -12345 Inexact Rounded 3567db96d56Sopenharmony_cirsux194 add -12345 0.5 -> -12344 Inexact Rounded 3577db96d56Sopenharmony_cirsux195 add -12345 0.50001 -> -12344 Inexact Rounded 3587db96d56Sopenharmony_cirsux196 add -12345 0.5001 -> -12344 Inexact Rounded 3597db96d56Sopenharmony_cirsux197 add -12345 0.501 -> -12344 Inexact Rounded 3607db96d56Sopenharmony_cirsux198 add -12345 0.51 -> -12344 Inexact Rounded 3617db96d56Sopenharmony_cirsux199 add -12345 0.6 -> -12344 Inexact Rounded 3627db96d56Sopenharmony_ci 3637db96d56Sopenharmony_cirounding: half_up 3647db96d56Sopenharmony_ci 3657db96d56Sopenharmony_cirsux200 add -12345 -0.1 -> -12345 Inexact Rounded 3667db96d56Sopenharmony_cirsux201 add -12345 -0.01 -> -12345 Inexact Rounded 3677db96d56Sopenharmony_cirsux202 add -12345 -0.001 -> -12345 Inexact Rounded 3687db96d56Sopenharmony_cirsux203 add -12345 -0.00001 -> -12345 Inexact Rounded 3697db96d56Sopenharmony_cirsux204 add -12345 -0.000001 -> -12345 Inexact Rounded 3707db96d56Sopenharmony_cirsux205 add -12345 -0.0000001 -> -12345 Inexact Rounded 3717db96d56Sopenharmony_cirsux206 add -12345 0 -> -12345 3727db96d56Sopenharmony_cirsux207 add -12345 0.0000001 -> -12345 Inexact Rounded 3737db96d56Sopenharmony_cirsux208 add -12345 0.000001 -> -12345 Inexact Rounded 3747db96d56Sopenharmony_cirsux209 add -12345 0.00001 -> -12345 Inexact Rounded 3757db96d56Sopenharmony_cirsux210 add -12345 0.0001 -> -12345 Inexact Rounded 3767db96d56Sopenharmony_cirsux211 add -12345 0.001 -> -12345 Inexact Rounded 3777db96d56Sopenharmony_cirsux212 add -12345 0.01 -> -12345 Inexact Rounded 3787db96d56Sopenharmony_cirsux213 add -12345 0.1 -> -12345 Inexact Rounded 3797db96d56Sopenharmony_ci 3807db96d56Sopenharmony_cirsux215 add -12346 0.49999 -> -12346 Inexact Rounded 3817db96d56Sopenharmony_cirsux216 add -12346 0.5 -> -12346 Inexact Rounded 3827db96d56Sopenharmony_cirsux217 add -12346 0.50001 -> -12345 Inexact Rounded 3837db96d56Sopenharmony_ci 3847db96d56Sopenharmony_cirsux220 add -12345 0.4 -> -12345 Inexact Rounded 3857db96d56Sopenharmony_cirsux221 add -12345 0.49 -> -12345 Inexact Rounded 3867db96d56Sopenharmony_cirsux222 add -12345 0.499 -> -12345 Inexact Rounded 3877db96d56Sopenharmony_cirsux223 add -12345 0.49999 -> -12345 Inexact Rounded 3887db96d56Sopenharmony_cirsux224 add -12345 0.5 -> -12345 Inexact Rounded 3897db96d56Sopenharmony_cirsux225 add -12345 0.50001 -> -12344 Inexact Rounded 3907db96d56Sopenharmony_cirsux226 add -12345 0.5001 -> -12344 Inexact Rounded 3917db96d56Sopenharmony_cirsux227 add -12345 0.501 -> -12344 Inexact Rounded 3927db96d56Sopenharmony_cirsux228 add -12345 0.51 -> -12344 Inexact Rounded 3937db96d56Sopenharmony_cirsux229 add -12345 0.6 -> -12344 Inexact Rounded 3947db96d56Sopenharmony_ci 3957db96d56Sopenharmony_cirounding: up 3967db96d56Sopenharmony_ci 3977db96d56Sopenharmony_cirsux230 add -12345 -0.1 -> -12346 Inexact Rounded 3987db96d56Sopenharmony_cirsux231 add -12345 -0.01 -> -12346 Inexact Rounded 3997db96d56Sopenharmony_cirsux232 add -12345 -0.001 -> -12346 Inexact Rounded 4007db96d56Sopenharmony_cirsux233 add -12345 -0.00001 -> -12346 Inexact Rounded 4017db96d56Sopenharmony_cirsux234 add -12345 -0.000001 -> -12346 Inexact Rounded 4027db96d56Sopenharmony_cirsux235 add -12345 -0.0000001 -> -12346 Inexact Rounded 4037db96d56Sopenharmony_cirsux236 add -12345 0 -> -12345 4047db96d56Sopenharmony_cirsux237 add -12345 0.0000001 -> -12345 Inexact Rounded 4057db96d56Sopenharmony_cirsux238 add -12345 0.000001 -> -12345 Inexact Rounded 4067db96d56Sopenharmony_cirsux239 add -12345 0.00001 -> -12345 Inexact Rounded 4077db96d56Sopenharmony_cirsux240 add -12345 0.0001 -> -12345 Inexact Rounded 4087db96d56Sopenharmony_cirsux241 add -12345 0.001 -> -12345 Inexact Rounded 4097db96d56Sopenharmony_cirsux242 add -12345 0.01 -> -12345 Inexact Rounded 4107db96d56Sopenharmony_cirsux243 add -12345 0.1 -> -12345 Inexact Rounded 4117db96d56Sopenharmony_ci 4127db96d56Sopenharmony_cirsux245 add -12346 0.49999 -> -12346 Inexact Rounded 4137db96d56Sopenharmony_cirsux246 add -12346 0.5 -> -12346 Inexact Rounded 4147db96d56Sopenharmony_cirsux247 add -12346 0.50001 -> -12346 Inexact Rounded 4157db96d56Sopenharmony_ci 4167db96d56Sopenharmony_cirsux250 add -12345 0.4 -> -12345 Inexact Rounded 4177db96d56Sopenharmony_cirsux251 add -12345 0.49 -> -12345 Inexact Rounded 4187db96d56Sopenharmony_cirsux252 add -12345 0.499 -> -12345 Inexact Rounded 4197db96d56Sopenharmony_cirsux253 add -12345 0.49999 -> -12345 Inexact Rounded 4207db96d56Sopenharmony_cirsux254 add -12345 0.5 -> -12345 Inexact Rounded 4217db96d56Sopenharmony_cirsux255 add -12345 0.50001 -> -12345 Inexact Rounded 4227db96d56Sopenharmony_cirsux256 add -12345 0.5001 -> -12345 Inexact Rounded 4237db96d56Sopenharmony_cirsux257 add -12345 0.501 -> -12345 Inexact Rounded 4247db96d56Sopenharmony_cirsux258 add -12345 0.51 -> -12345 Inexact Rounded 4257db96d56Sopenharmony_cirsux259 add -12345 0.6 -> -12345 Inexact Rounded 4267db96d56Sopenharmony_ci 4277db96d56Sopenharmony_cirounding: floor 4287db96d56Sopenharmony_ci 4297db96d56Sopenharmony_cirsux300 add -12345 -0.1 -> -12346 Inexact Rounded 4307db96d56Sopenharmony_cirsux301 add -12345 -0.01 -> -12346 Inexact Rounded 4317db96d56Sopenharmony_cirsux302 add -12345 -0.001 -> -12346 Inexact Rounded 4327db96d56Sopenharmony_cirsux303 add -12345 -0.00001 -> -12346 Inexact Rounded 4337db96d56Sopenharmony_cirsux304 add -12345 -0.000001 -> -12346 Inexact Rounded 4347db96d56Sopenharmony_cirsux305 add -12345 -0.0000001 -> -12346 Inexact Rounded 4357db96d56Sopenharmony_cirsux306 add -12345 0 -> -12345 4367db96d56Sopenharmony_cirsux307 add -12345 0.0000001 -> -12345 Inexact Rounded 4377db96d56Sopenharmony_cirsux308 add -12345 0.000001 -> -12345 Inexact Rounded 4387db96d56Sopenharmony_cirsux309 add -12345 0.00001 -> -12345 Inexact Rounded 4397db96d56Sopenharmony_cirsux310 add -12345 0.0001 -> -12345 Inexact Rounded 4407db96d56Sopenharmony_cirsux311 add -12345 0.001 -> -12345 Inexact Rounded 4417db96d56Sopenharmony_cirsux312 add -12345 0.01 -> -12345 Inexact Rounded 4427db96d56Sopenharmony_cirsux313 add -12345 0.1 -> -12345 Inexact Rounded 4437db96d56Sopenharmony_ci 4447db96d56Sopenharmony_cirsux315 add -12346 0.49999 -> -12346 Inexact Rounded 4457db96d56Sopenharmony_cirsux316 add -12346 0.5 -> -12346 Inexact Rounded 4467db96d56Sopenharmony_cirsux317 add -12346 0.50001 -> -12346 Inexact Rounded 4477db96d56Sopenharmony_ci 4487db96d56Sopenharmony_cirsux320 add -12345 0.4 -> -12345 Inexact Rounded 4497db96d56Sopenharmony_cirsux321 add -12345 0.49 -> -12345 Inexact Rounded 4507db96d56Sopenharmony_cirsux322 add -12345 0.499 -> -12345 Inexact Rounded 4517db96d56Sopenharmony_cirsux323 add -12345 0.49999 -> -12345 Inexact Rounded 4527db96d56Sopenharmony_cirsux324 add -12345 0.5 -> -12345 Inexact Rounded 4537db96d56Sopenharmony_cirsux325 add -12345 0.50001 -> -12345 Inexact Rounded 4547db96d56Sopenharmony_cirsux326 add -12345 0.5001 -> -12345 Inexact Rounded 4557db96d56Sopenharmony_cirsux327 add -12345 0.501 -> -12345 Inexact Rounded 4567db96d56Sopenharmony_cirsux328 add -12345 0.51 -> -12345 Inexact Rounded 4577db96d56Sopenharmony_cirsux329 add -12345 0.6 -> -12345 Inexact Rounded 4587db96d56Sopenharmony_ci 4597db96d56Sopenharmony_cirounding: ceiling 4607db96d56Sopenharmony_ci 4617db96d56Sopenharmony_cirsux330 add -12345 -0.1 -> -12345 Inexact Rounded 4627db96d56Sopenharmony_cirsux331 add -12345 -0.01 -> -12345 Inexact Rounded 4637db96d56Sopenharmony_cirsux332 add -12345 -0.001 -> -12345 Inexact Rounded 4647db96d56Sopenharmony_cirsux333 add -12345 -0.00001 -> -12345 Inexact Rounded 4657db96d56Sopenharmony_cirsux334 add -12345 -0.000001 -> -12345 Inexact Rounded 4667db96d56Sopenharmony_cirsux335 add -12345 -0.0000001 -> -12345 Inexact Rounded 4677db96d56Sopenharmony_cirsux336 add -12345 0 -> -12345 4687db96d56Sopenharmony_cirsux337 add -12345 0.0000001 -> -12344 Inexact Rounded 4697db96d56Sopenharmony_cirsux338 add -12345 0.000001 -> -12344 Inexact Rounded 4707db96d56Sopenharmony_cirsux339 add -12345 0.00001 -> -12344 Inexact Rounded 4717db96d56Sopenharmony_cirsux340 add -12345 0.0001 -> -12344 Inexact Rounded 4727db96d56Sopenharmony_cirsux341 add -12345 0.001 -> -12344 Inexact Rounded 4737db96d56Sopenharmony_cirsux342 add -12345 0.01 -> -12344 Inexact Rounded 4747db96d56Sopenharmony_cirsux343 add -12345 0.1 -> -12344 Inexact Rounded 4757db96d56Sopenharmony_ci 4767db96d56Sopenharmony_cirsux345 add -12346 0.49999 -> -12345 Inexact Rounded 4777db96d56Sopenharmony_cirsux346 add -12346 0.5 -> -12345 Inexact Rounded 4787db96d56Sopenharmony_cirsux347 add -12346 0.50001 -> -12345 Inexact Rounded 4797db96d56Sopenharmony_ci 4807db96d56Sopenharmony_cirsux350 add -12345 0.4 -> -12344 Inexact Rounded 4817db96d56Sopenharmony_cirsux351 add -12345 0.49 -> -12344 Inexact Rounded 4827db96d56Sopenharmony_cirsux352 add -12345 0.499 -> -12344 Inexact Rounded 4837db96d56Sopenharmony_cirsux353 add -12345 0.49999 -> -12344 Inexact Rounded 4847db96d56Sopenharmony_cirsux354 add -12345 0.5 -> -12344 Inexact Rounded 4857db96d56Sopenharmony_cirsux355 add -12345 0.50001 -> -12344 Inexact Rounded 4867db96d56Sopenharmony_cirsux356 add -12345 0.5001 -> -12344 Inexact Rounded 4877db96d56Sopenharmony_cirsux357 add -12345 0.501 -> -12344 Inexact Rounded 4887db96d56Sopenharmony_cirsux358 add -12345 0.51 -> -12344 Inexact Rounded 4897db96d56Sopenharmony_cirsux359 add -12345 0.6 -> -12344 Inexact Rounded 4907db96d56Sopenharmony_ci 4917db96d56Sopenharmony_ci-- Check cancellation subtractions 4927db96d56Sopenharmony_ci-- (The IEEE 854 'curious rule' in $6.3) 4937db96d56Sopenharmony_ci 4947db96d56Sopenharmony_cirounding: down 4957db96d56Sopenharmony_cirzex001 add 0 0 -> 0 4967db96d56Sopenharmony_cirzex002 add 0 -0 -> 0 4977db96d56Sopenharmony_cirzex003 add -0 0 -> 0 4987db96d56Sopenharmony_cirzex004 add -0 -0 -> -0 4997db96d56Sopenharmony_cirzex005 add 1 -1 -> 0 5007db96d56Sopenharmony_cirzex006 add -1 1 -> 0 5017db96d56Sopenharmony_cirzex007 add 1.5 -1.5 -> 0.0 5027db96d56Sopenharmony_cirzex008 add -1.5 1.5 -> 0.0 5037db96d56Sopenharmony_cirzex009 add 2 -2 -> 0 5047db96d56Sopenharmony_cirzex010 add -2 2 -> 0 5057db96d56Sopenharmony_ci 5067db96d56Sopenharmony_cirounding: up 5077db96d56Sopenharmony_cirzex011 add 0 0 -> 0 5087db96d56Sopenharmony_cirzex012 add 0 -0 -> 0 5097db96d56Sopenharmony_cirzex013 add -0 0 -> 0 5107db96d56Sopenharmony_cirzex014 add -0 -0 -> -0 5117db96d56Sopenharmony_cirzex015 add 1 -1 -> 0 5127db96d56Sopenharmony_cirzex016 add -1 1 -> 0 5137db96d56Sopenharmony_cirzex017 add 1.5 -1.5 -> 0.0 5147db96d56Sopenharmony_cirzex018 add -1.5 1.5 -> 0.0 5157db96d56Sopenharmony_cirzex019 add 2 -2 -> 0 5167db96d56Sopenharmony_cirzex020 add -2 2 -> 0 5177db96d56Sopenharmony_ci 5187db96d56Sopenharmony_cirounding: half_up 5197db96d56Sopenharmony_cirzex021 add 0 0 -> 0 5207db96d56Sopenharmony_cirzex022 add 0 -0 -> 0 5217db96d56Sopenharmony_cirzex023 add -0 0 -> 0 5227db96d56Sopenharmony_cirzex024 add -0 -0 -> -0 5237db96d56Sopenharmony_cirzex025 add 1 -1 -> 0 5247db96d56Sopenharmony_cirzex026 add -1 1 -> 0 5257db96d56Sopenharmony_cirzex027 add 1.5 -1.5 -> 0.0 5267db96d56Sopenharmony_cirzex028 add -1.5 1.5 -> 0.0 5277db96d56Sopenharmony_cirzex029 add 2 -2 -> 0 5287db96d56Sopenharmony_cirzex030 add -2 2 -> 0 5297db96d56Sopenharmony_ci 5307db96d56Sopenharmony_cirounding: half_down 5317db96d56Sopenharmony_cirzex031 add 0 0 -> 0 5327db96d56Sopenharmony_cirzex032 add 0 -0 -> 0 5337db96d56Sopenharmony_cirzex033 add -0 0 -> 0 5347db96d56Sopenharmony_cirzex034 add -0 -0 -> -0 5357db96d56Sopenharmony_cirzex035 add 1 -1 -> 0 5367db96d56Sopenharmony_cirzex036 add -1 1 -> 0 5377db96d56Sopenharmony_cirzex037 add 1.5 -1.5 -> 0.0 5387db96d56Sopenharmony_cirzex038 add -1.5 1.5 -> 0.0 5397db96d56Sopenharmony_cirzex039 add 2 -2 -> 0 5407db96d56Sopenharmony_cirzex040 add -2 2 -> 0 5417db96d56Sopenharmony_ci 5427db96d56Sopenharmony_cirounding: half_even 5437db96d56Sopenharmony_cirzex041 add 0 0 -> 0 5447db96d56Sopenharmony_cirzex042 add 0 -0 -> 0 5457db96d56Sopenharmony_cirzex043 add -0 0 -> 0 5467db96d56Sopenharmony_cirzex044 add -0 -0 -> -0 5477db96d56Sopenharmony_cirzex045 add 1 -1 -> 0 5487db96d56Sopenharmony_cirzex046 add -1 1 -> 0 5497db96d56Sopenharmony_cirzex047 add 1.5 -1.5 -> 0.0 5507db96d56Sopenharmony_cirzex048 add -1.5 1.5 -> 0.0 5517db96d56Sopenharmony_cirzex049 add 2 -2 -> 0 5527db96d56Sopenharmony_cirzex050 add -2 2 -> 0 5537db96d56Sopenharmony_ci 5547db96d56Sopenharmony_cirounding: floor 5557db96d56Sopenharmony_cirzex051 add 0 0 -> 0 5567db96d56Sopenharmony_cirzex052 add 0 -0 -> -0 -- here are two 'curious' 5577db96d56Sopenharmony_cirzex053 add -0 0 -> -0 -- 5587db96d56Sopenharmony_cirzex054 add -0 -0 -> -0 5597db96d56Sopenharmony_cirzex055 add 1 -1 -> -0 -- here are the rest 5607db96d56Sopenharmony_cirzex056 add -1 1 -> -0 -- .. 5617db96d56Sopenharmony_cirzex057 add 1.5 -1.5 -> -0.0 -- .. 5627db96d56Sopenharmony_cirzex058 add -1.5 1.5 -> -0.0 -- .. 5637db96d56Sopenharmony_cirzex059 add 2 -2 -> -0 -- .. 5647db96d56Sopenharmony_cirzex060 add -2 2 -> -0 -- .. 5657db96d56Sopenharmony_ci 5667db96d56Sopenharmony_cirounding: ceiling 5677db96d56Sopenharmony_cirzex061 add 0 0 -> 0 5687db96d56Sopenharmony_cirzex062 add 0 -0 -> 0 5697db96d56Sopenharmony_cirzex063 add -0 0 -> 0 5707db96d56Sopenharmony_cirzex064 add -0 -0 -> -0 5717db96d56Sopenharmony_cirzex065 add 1 -1 -> 0 5727db96d56Sopenharmony_cirzex066 add -1 1 -> 0 5737db96d56Sopenharmony_cirzex067 add 1.5 -1.5 -> 0.0 5747db96d56Sopenharmony_cirzex068 add -1.5 1.5 -> 0.0 5757db96d56Sopenharmony_cirzex069 add 2 -2 -> 0 5767db96d56Sopenharmony_cirzex070 add -2 2 -> 0 5777db96d56Sopenharmony_ci 5787db96d56Sopenharmony_ci 5797db96d56Sopenharmony_ci-- Division operators ------------------------------------------------- 5807db96d56Sopenharmony_ci 5817db96d56Sopenharmony_cirounding: down 5827db96d56Sopenharmony_cirdvx101 divide 12345 1 -> 12345 5837db96d56Sopenharmony_cirdvx102 divide 12345 1.0001 -> 12343 Inexact Rounded 5847db96d56Sopenharmony_cirdvx103 divide 12345 1.001 -> 12332 Inexact Rounded 5857db96d56Sopenharmony_cirdvx104 divide 12345 1.01 -> 12222 Inexact Rounded 5867db96d56Sopenharmony_cirdvx105 divide 12345 1.1 -> 11222 Inexact Rounded 5877db96d56Sopenharmony_cirdvx106 divide 12355 4 -> 3088.7 Inexact Rounded 5887db96d56Sopenharmony_cirdvx107 divide 12345 4 -> 3086.2 Inexact Rounded 5897db96d56Sopenharmony_cirdvx108 divide 12355 4.0001 -> 3088.6 Inexact Rounded 5907db96d56Sopenharmony_cirdvx109 divide 12345 4.0001 -> 3086.1 Inexact Rounded 5917db96d56Sopenharmony_cirdvx110 divide 12345 4.9 -> 2519.3 Inexact Rounded 5927db96d56Sopenharmony_cirdvx111 divide 12345 4.99 -> 2473.9 Inexact Rounded 5937db96d56Sopenharmony_cirdvx112 divide 12345 4.999 -> 2469.4 Inexact Rounded 5947db96d56Sopenharmony_cirdvx113 divide 12345 4.9999 -> 2469.0 Inexact Rounded 5957db96d56Sopenharmony_cirdvx114 divide 12345 5 -> 2469 5967db96d56Sopenharmony_cirdvx115 divide 12345 5.0001 -> 2468.9 Inexact Rounded 5977db96d56Sopenharmony_cirdvx116 divide 12345 5.001 -> 2468.5 Inexact Rounded 5987db96d56Sopenharmony_cirdvx117 divide 12345 5.01 -> 2464.0 Inexact Rounded 5997db96d56Sopenharmony_cirdvx118 divide 12345 5.1 -> 2420.5 Inexact Rounded 6007db96d56Sopenharmony_ci 6017db96d56Sopenharmony_cirounding: half_down 6027db96d56Sopenharmony_cirdvx201 divide 12345 1 -> 12345 6037db96d56Sopenharmony_cirdvx202 divide 12345 1.0001 -> 12344 Inexact Rounded 6047db96d56Sopenharmony_cirdvx203 divide 12345 1.001 -> 12333 Inexact Rounded 6057db96d56Sopenharmony_cirdvx204 divide 12345 1.01 -> 12223 Inexact Rounded 6067db96d56Sopenharmony_cirdvx205 divide 12345 1.1 -> 11223 Inexact Rounded 6077db96d56Sopenharmony_cirdvx206 divide 12355 4 -> 3088.7 Inexact Rounded 6087db96d56Sopenharmony_cirdvx207 divide 12345 4 -> 3086.2 Inexact Rounded 6097db96d56Sopenharmony_cirdvx208 divide 12355 4.0001 -> 3088.7 Inexact Rounded 6107db96d56Sopenharmony_cirdvx209 divide 12345 4.0001 -> 3086.2 Inexact Rounded 6117db96d56Sopenharmony_cirdvx210 divide 12345 4.9 -> 2519.4 Inexact Rounded 6127db96d56Sopenharmony_cirdvx211 divide 12345 4.99 -> 2473.9 Inexact Rounded 6137db96d56Sopenharmony_cirdvx212 divide 12345 4.999 -> 2469.5 Inexact Rounded 6147db96d56Sopenharmony_cirdvx213 divide 12345 4.9999 -> 2469.0 Inexact Rounded 6157db96d56Sopenharmony_cirdvx214 divide 12345 5 -> 2469 6167db96d56Sopenharmony_cirdvx215 divide 12345 5.0001 -> 2469.0 Inexact Rounded 6177db96d56Sopenharmony_cirdvx216 divide 12345 5.001 -> 2468.5 Inexact Rounded 6187db96d56Sopenharmony_cirdvx217 divide 12345 5.01 -> 2464.1 Inexact Rounded 6197db96d56Sopenharmony_cirdvx218 divide 12345 5.1 -> 2420.6 Inexact Rounded 6207db96d56Sopenharmony_ci 6217db96d56Sopenharmony_cirounding: half_even 6227db96d56Sopenharmony_cirdvx301 divide 12345 1 -> 12345 6237db96d56Sopenharmony_cirdvx302 divide 12345 1.0001 -> 12344 Inexact Rounded 6247db96d56Sopenharmony_cirdvx303 divide 12345 1.001 -> 12333 Inexact Rounded 6257db96d56Sopenharmony_cirdvx304 divide 12345 1.01 -> 12223 Inexact Rounded 6267db96d56Sopenharmony_cirdvx305 divide 12345 1.1 -> 11223 Inexact Rounded 6277db96d56Sopenharmony_cirdvx306 divide 12355 4 -> 3088.8 Inexact Rounded 6287db96d56Sopenharmony_cirdvx307 divide 12345 4 -> 3086.2 Inexact Rounded 6297db96d56Sopenharmony_cirdvx308 divide 12355 4.0001 -> 3088.7 Inexact Rounded 6307db96d56Sopenharmony_cirdvx309 divide 12345 4.0001 -> 3086.2 Inexact Rounded 6317db96d56Sopenharmony_cirdvx310 divide 12345 4.9 -> 2519.4 Inexact Rounded 6327db96d56Sopenharmony_cirdvx311 divide 12345 4.99 -> 2473.9 Inexact Rounded 6337db96d56Sopenharmony_cirdvx312 divide 12345 4.999 -> 2469.5 Inexact Rounded 6347db96d56Sopenharmony_cirdvx313 divide 12345 4.9999 -> 2469.0 Inexact Rounded 6357db96d56Sopenharmony_cirdvx314 divide 12345 5 -> 2469 6367db96d56Sopenharmony_cirdvx315 divide 12345 5.0001 -> 2469.0 Inexact Rounded 6377db96d56Sopenharmony_cirdvx316 divide 12345 5.001 -> 2468.5 Inexact Rounded 6387db96d56Sopenharmony_cirdvx317 divide 12345 5.01 -> 2464.1 Inexact Rounded 6397db96d56Sopenharmony_cirdvx318 divide 12345 5.1 -> 2420.6 Inexact Rounded 6407db96d56Sopenharmony_ci 6417db96d56Sopenharmony_cirounding: half_up 6427db96d56Sopenharmony_cirdvx401 divide 12345 1 -> 12345 6437db96d56Sopenharmony_cirdvx402 divide 12345 1.0001 -> 12344 Inexact Rounded 6447db96d56Sopenharmony_cirdvx403 divide 12345 1.001 -> 12333 Inexact Rounded 6457db96d56Sopenharmony_cirdvx404 divide 12345 1.01 -> 12223 Inexact Rounded 6467db96d56Sopenharmony_cirdvx405 divide 12345 1.1 -> 11223 Inexact Rounded 6477db96d56Sopenharmony_cirdvx406 divide 12355 4 -> 3088.8 Inexact Rounded 6487db96d56Sopenharmony_cirdvx407 divide 12345 4 -> 3086.3 Inexact Rounded 6497db96d56Sopenharmony_cirdvx408 divide 12355 4.0001 -> 3088.7 Inexact Rounded 6507db96d56Sopenharmony_cirdvx409 divide 12345 4.0001 -> 3086.2 Inexact Rounded 6517db96d56Sopenharmony_cirdvx410 divide 12345 4.9 -> 2519.4 Inexact Rounded 6527db96d56Sopenharmony_cirdvx411 divide 12345 4.99 -> 2473.9 Inexact Rounded 6537db96d56Sopenharmony_cirdvx412 divide 12345 4.999 -> 2469.5 Inexact Rounded 6547db96d56Sopenharmony_cirdvx413 divide 12345 4.9999 -> 2469.0 Inexact Rounded 6557db96d56Sopenharmony_cirdvx414 divide 12345 5 -> 2469 6567db96d56Sopenharmony_cirdvx415 divide 12345 5.0001 -> 2469.0 Inexact Rounded 6577db96d56Sopenharmony_cirdvx416 divide 12345 5.001 -> 2468.5 Inexact Rounded 6587db96d56Sopenharmony_cirdvx417 divide 12345 5.01 -> 2464.1 Inexact Rounded 6597db96d56Sopenharmony_cirdvx418 divide 12345 5.1 -> 2420.6 Inexact Rounded 6607db96d56Sopenharmony_ci 6617db96d56Sopenharmony_cirounding: up 6627db96d56Sopenharmony_cirdvx501 divide 12345 1 -> 12345 6637db96d56Sopenharmony_cirdvx502 divide 12345 1.0001 -> 12344 Inexact Rounded 6647db96d56Sopenharmony_cirdvx503 divide 12345 1.001 -> 12333 Inexact Rounded 6657db96d56Sopenharmony_cirdvx504 divide 12345 1.01 -> 12223 Inexact Rounded 6667db96d56Sopenharmony_cirdvx505 divide 12345 1.1 -> 11223 Inexact Rounded 6677db96d56Sopenharmony_cirdvx506 divide 12355 4 -> 3088.8 Inexact Rounded 6687db96d56Sopenharmony_cirdvx507 divide 12345 4 -> 3086.3 Inexact Rounded 6697db96d56Sopenharmony_cirdvx508 divide 12355 4.0001 -> 3088.7 Inexact Rounded 6707db96d56Sopenharmony_cirdvx509 divide 12345 4.0001 -> 3086.2 Inexact Rounded 6717db96d56Sopenharmony_cirdvx510 divide 12345 4.9 -> 2519.4 Inexact Rounded 6727db96d56Sopenharmony_cirdvx511 divide 12345 4.99 -> 2474.0 Inexact Rounded 6737db96d56Sopenharmony_cirdvx512 divide 12345 4.999 -> 2469.5 Inexact Rounded 6747db96d56Sopenharmony_cirdvx513 divide 12345 4.9999 -> 2469.1 Inexact Rounded 6757db96d56Sopenharmony_cirdvx514 divide 12345 5 -> 2469 6767db96d56Sopenharmony_cirdvx515 divide 12345 5.0001 -> 2469.0 Inexact Rounded 6777db96d56Sopenharmony_cirdvx516 divide 12345 5.001 -> 2468.6 Inexact Rounded 6787db96d56Sopenharmony_cirdvx517 divide 12345 5.01 -> 2464.1 Inexact Rounded 6797db96d56Sopenharmony_cirdvx518 divide 12345 5.1 -> 2420.6 Inexact Rounded 6807db96d56Sopenharmony_ci 6817db96d56Sopenharmony_cirounding: floor 6827db96d56Sopenharmony_cirdvx601 divide 12345 1 -> 12345 6837db96d56Sopenharmony_cirdvx602 divide 12345 1.0001 -> 12343 Inexact Rounded 6847db96d56Sopenharmony_cirdvx603 divide 12345 1.001 -> 12332 Inexact Rounded 6857db96d56Sopenharmony_cirdvx604 divide 12345 1.01 -> 12222 Inexact Rounded 6867db96d56Sopenharmony_cirdvx605 divide 12345 1.1 -> 11222 Inexact Rounded 6877db96d56Sopenharmony_cirdvx606 divide 12355 4 -> 3088.7 Inexact Rounded 6887db96d56Sopenharmony_cirdvx607 divide 12345 4 -> 3086.2 Inexact Rounded 6897db96d56Sopenharmony_cirdvx608 divide 12355 4.0001 -> 3088.6 Inexact Rounded 6907db96d56Sopenharmony_cirdvx609 divide 12345 4.0001 -> 3086.1 Inexact Rounded 6917db96d56Sopenharmony_cirdvx610 divide 12345 4.9 -> 2519.3 Inexact Rounded 6927db96d56Sopenharmony_cirdvx611 divide 12345 4.99 -> 2473.9 Inexact Rounded 6937db96d56Sopenharmony_cirdvx612 divide 12345 4.999 -> 2469.4 Inexact Rounded 6947db96d56Sopenharmony_cirdvx613 divide 12345 4.9999 -> 2469.0 Inexact Rounded 6957db96d56Sopenharmony_cirdvx614 divide 12345 5 -> 2469 6967db96d56Sopenharmony_cirdvx615 divide 12345 5.0001 -> 2468.9 Inexact Rounded 6977db96d56Sopenharmony_cirdvx616 divide 12345 5.001 -> 2468.5 Inexact Rounded 6987db96d56Sopenharmony_cirdvx617 divide 12345 5.01 -> 2464.0 Inexact Rounded 6997db96d56Sopenharmony_cirdvx618 divide 12345 5.1 -> 2420.5 Inexact Rounded 7007db96d56Sopenharmony_ci 7017db96d56Sopenharmony_cirounding: ceiling 7027db96d56Sopenharmony_cirdvx701 divide 12345 1 -> 12345 7037db96d56Sopenharmony_cirdvx702 divide 12345 1.0001 -> 12344 Inexact Rounded 7047db96d56Sopenharmony_cirdvx703 divide 12345 1.001 -> 12333 Inexact Rounded 7057db96d56Sopenharmony_cirdvx704 divide 12345 1.01 -> 12223 Inexact Rounded 7067db96d56Sopenharmony_cirdvx705 divide 12345 1.1 -> 11223 Inexact Rounded 7077db96d56Sopenharmony_cirdvx706 divide 12355 4 -> 3088.8 Inexact Rounded 7087db96d56Sopenharmony_cirdvx707 divide 12345 4 -> 3086.3 Inexact Rounded 7097db96d56Sopenharmony_cirdvx708 divide 12355 4.0001 -> 3088.7 Inexact Rounded 7107db96d56Sopenharmony_cirdvx709 divide 12345 4.0001 -> 3086.2 Inexact Rounded 7117db96d56Sopenharmony_cirdvx710 divide 12345 4.9 -> 2519.4 Inexact Rounded 7127db96d56Sopenharmony_cirdvx711 divide 12345 4.99 -> 2474.0 Inexact Rounded 7137db96d56Sopenharmony_cirdvx712 divide 12345 4.999 -> 2469.5 Inexact Rounded 7147db96d56Sopenharmony_cirdvx713 divide 12345 4.9999 -> 2469.1 Inexact Rounded 7157db96d56Sopenharmony_cirdvx714 divide 12345 5 -> 2469 7167db96d56Sopenharmony_cirdvx715 divide 12345 5.0001 -> 2469.0 Inexact Rounded 7177db96d56Sopenharmony_cirdvx716 divide 12345 5.001 -> 2468.6 Inexact Rounded 7187db96d56Sopenharmony_cirdvx717 divide 12345 5.01 -> 2464.1 Inexact Rounded 7197db96d56Sopenharmony_cirdvx718 divide 12345 5.1 -> 2420.6 Inexact Rounded 7207db96d56Sopenharmony_ci 7217db96d56Sopenharmony_ci-- [divideInteger and remainder unaffected] 7227db96d56Sopenharmony_ci 7237db96d56Sopenharmony_ci-- Multiplication operator -------------------------------------------- 7247db96d56Sopenharmony_ci 7257db96d56Sopenharmony_cirounding: down 7267db96d56Sopenharmony_cirmux101 multiply 12345 1 -> 12345 7277db96d56Sopenharmony_cirmux102 multiply 12345 1.0001 -> 12346 Inexact Rounded 7287db96d56Sopenharmony_cirmux103 multiply 12345 1.001 -> 12357 Inexact Rounded 7297db96d56Sopenharmony_cirmux104 multiply 12345 1.01 -> 12468 Inexact Rounded 7307db96d56Sopenharmony_cirmux105 multiply 12345 1.1 -> 13579 Inexact Rounded 7317db96d56Sopenharmony_cirmux106 multiply 12345 4 -> 49380 7327db96d56Sopenharmony_cirmux107 multiply 12345 4.0001 -> 49381 Inexact Rounded 7337db96d56Sopenharmony_cirmux108 multiply 12345 4.9 -> 60490 Inexact Rounded 7347db96d56Sopenharmony_cirmux109 multiply 12345 4.99 -> 61601 Inexact Rounded 7357db96d56Sopenharmony_cirmux110 multiply 12345 4.999 -> 61712 Inexact Rounded 7367db96d56Sopenharmony_cirmux111 multiply 12345 4.9999 -> 61723 Inexact Rounded 7377db96d56Sopenharmony_cirmux112 multiply 12345 5 -> 61725 7387db96d56Sopenharmony_cirmux113 multiply 12345 5.0001 -> 61726 Inexact Rounded 7397db96d56Sopenharmony_cirmux114 multiply 12345 5.001 -> 61737 Inexact Rounded 7407db96d56Sopenharmony_cirmux115 multiply 12345 5.01 -> 61848 Inexact Rounded 7417db96d56Sopenharmony_cirmux116 multiply 12345 12 -> 1.4814E+5 Rounded 7427db96d56Sopenharmony_cirmux117 multiply 12345 13 -> 1.6048E+5 Inexact Rounded 7437db96d56Sopenharmony_cirmux118 multiply 12355 12 -> 1.4826E+5 Rounded 7447db96d56Sopenharmony_cirmux119 multiply 12355 13 -> 1.6061E+5 Inexact Rounded 7457db96d56Sopenharmony_ci 7467db96d56Sopenharmony_cirounding: half_down 7477db96d56Sopenharmony_cirmux201 multiply 12345 1 -> 12345 7487db96d56Sopenharmony_cirmux202 multiply 12345 1.0001 -> 12346 Inexact Rounded 7497db96d56Sopenharmony_cirmux203 multiply 12345 1.001 -> 12357 Inexact Rounded 7507db96d56Sopenharmony_cirmux204 multiply 12345 1.01 -> 12468 Inexact Rounded 7517db96d56Sopenharmony_cirmux205 multiply 12345 1.1 -> 13579 Inexact Rounded 7527db96d56Sopenharmony_cirmux206 multiply 12345 4 -> 49380 7537db96d56Sopenharmony_cirmux207 multiply 12345 4.0001 -> 49381 Inexact Rounded 7547db96d56Sopenharmony_cirmux208 multiply 12345 4.9 -> 60490 Inexact Rounded 7557db96d56Sopenharmony_cirmux209 multiply 12345 4.99 -> 61602 Inexact Rounded 7567db96d56Sopenharmony_cirmux210 multiply 12345 4.999 -> 61713 Inexact Rounded 7577db96d56Sopenharmony_cirmux211 multiply 12345 4.9999 -> 61724 Inexact Rounded 7587db96d56Sopenharmony_cirmux212 multiply 12345 5 -> 61725 7597db96d56Sopenharmony_cirmux213 multiply 12345 5.0001 -> 61726 Inexact Rounded 7607db96d56Sopenharmony_cirmux214 multiply 12345 5.001 -> 61737 Inexact Rounded 7617db96d56Sopenharmony_cirmux215 multiply 12345 5.01 -> 61848 Inexact Rounded 7627db96d56Sopenharmony_cirmux216 multiply 12345 12 -> 1.4814E+5 Rounded 7637db96d56Sopenharmony_cirmux217 multiply 12345 13 -> 1.6048E+5 Inexact Rounded 7647db96d56Sopenharmony_cirmux218 multiply 12355 12 -> 1.4826E+5 Rounded 7657db96d56Sopenharmony_cirmux219 multiply 12355 13 -> 1.6061E+5 Inexact Rounded 7667db96d56Sopenharmony_ci 7677db96d56Sopenharmony_cirounding: half_even 7687db96d56Sopenharmony_cirmux301 multiply 12345 1 -> 12345 7697db96d56Sopenharmony_cirmux302 multiply 12345 1.0001 -> 12346 Inexact Rounded 7707db96d56Sopenharmony_cirmux303 multiply 12345 1.001 -> 12357 Inexact Rounded 7717db96d56Sopenharmony_cirmux304 multiply 12345 1.01 -> 12468 Inexact Rounded 7727db96d56Sopenharmony_cirmux305 multiply 12345 1.1 -> 13580 Inexact Rounded 7737db96d56Sopenharmony_cirmux306 multiply 12345 4 -> 49380 7747db96d56Sopenharmony_cirmux307 multiply 12345 4.0001 -> 49381 Inexact Rounded 7757db96d56Sopenharmony_cirmux308 multiply 12345 4.9 -> 60490 Inexact Rounded 7767db96d56Sopenharmony_cirmux309 multiply 12345 4.99 -> 61602 Inexact Rounded 7777db96d56Sopenharmony_cirmux310 multiply 12345 4.999 -> 61713 Inexact Rounded 7787db96d56Sopenharmony_cirmux311 multiply 12345 4.9999 -> 61724 Inexact Rounded 7797db96d56Sopenharmony_cirmux312 multiply 12345 5 -> 61725 7807db96d56Sopenharmony_cirmux313 multiply 12345 5.0001 -> 61726 Inexact Rounded 7817db96d56Sopenharmony_cirmux314 multiply 12345 5.001 -> 61737 Inexact Rounded 7827db96d56Sopenharmony_cirmux315 multiply 12345 5.01 -> 61848 Inexact Rounded 7837db96d56Sopenharmony_cirmux316 multiply 12345 12 -> 1.4814E+5 Rounded 7847db96d56Sopenharmony_cirmux317 multiply 12345 13 -> 1.6048E+5 Inexact Rounded 7857db96d56Sopenharmony_cirmux318 multiply 12355 12 -> 1.4826E+5 Rounded 7867db96d56Sopenharmony_cirmux319 multiply 12355 13 -> 1.6062E+5 Inexact Rounded 7877db96d56Sopenharmony_ci 7887db96d56Sopenharmony_cirounding: half_up 7897db96d56Sopenharmony_cirmux401 multiply 12345 1 -> 12345 7907db96d56Sopenharmony_cirmux402 multiply 12345 1.0001 -> 12346 Inexact Rounded 7917db96d56Sopenharmony_cirmux403 multiply 12345 1.001 -> 12357 Inexact Rounded 7927db96d56Sopenharmony_cirmux404 multiply 12345 1.01 -> 12468 Inexact Rounded 7937db96d56Sopenharmony_cirmux405 multiply 12345 1.1 -> 13580 Inexact Rounded 7947db96d56Sopenharmony_cirmux406 multiply 12345 4 -> 49380 7957db96d56Sopenharmony_cirmux407 multiply 12345 4.0001 -> 49381 Inexact Rounded 7967db96d56Sopenharmony_cirmux408 multiply 12345 4.9 -> 60491 Inexact Rounded 7977db96d56Sopenharmony_cirmux409 multiply 12345 4.99 -> 61602 Inexact Rounded 7987db96d56Sopenharmony_cirmux410 multiply 12345 4.999 -> 61713 Inexact Rounded 7997db96d56Sopenharmony_cirmux411 multiply 12345 4.9999 -> 61724 Inexact Rounded 8007db96d56Sopenharmony_cirmux412 multiply 12345 5 -> 61725 8017db96d56Sopenharmony_cirmux413 multiply 12345 5.0001 -> 61726 Inexact Rounded 8027db96d56Sopenharmony_cirmux414 multiply 12345 5.001 -> 61737 Inexact Rounded 8037db96d56Sopenharmony_cirmux415 multiply 12345 5.01 -> 61848 Inexact Rounded 8047db96d56Sopenharmony_cirmux416 multiply 12345 12 -> 1.4814E+5 Rounded 8057db96d56Sopenharmony_cirmux417 multiply 12345 13 -> 1.6049E+5 Inexact Rounded 8067db96d56Sopenharmony_cirmux418 multiply 12355 12 -> 1.4826E+5 Rounded 8077db96d56Sopenharmony_cirmux419 multiply 12355 13 -> 1.6062E+5 Inexact Rounded 8087db96d56Sopenharmony_ci 8097db96d56Sopenharmony_cirounding: up 8107db96d56Sopenharmony_cirmux501 multiply 12345 1 -> 12345 8117db96d56Sopenharmony_cirmux502 multiply 12345 1.0001 -> 12347 Inexact Rounded 8127db96d56Sopenharmony_cirmux503 multiply 12345 1.001 -> 12358 Inexact Rounded 8137db96d56Sopenharmony_cirmux504 multiply 12345 1.01 -> 12469 Inexact Rounded 8147db96d56Sopenharmony_cirmux505 multiply 12345 1.1 -> 13580 Inexact Rounded 8157db96d56Sopenharmony_cirmux506 multiply 12345 4 -> 49380 8167db96d56Sopenharmony_cirmux507 multiply 12345 4.0001 -> 49382 Inexact Rounded 8177db96d56Sopenharmony_cirmux508 multiply 12345 4.9 -> 60491 Inexact Rounded 8187db96d56Sopenharmony_cirmux509 multiply 12345 4.99 -> 61602 Inexact Rounded 8197db96d56Sopenharmony_cirmux510 multiply 12345 4.999 -> 61713 Inexact Rounded 8207db96d56Sopenharmony_cirmux511 multiply 12345 4.9999 -> 61724 Inexact Rounded 8217db96d56Sopenharmony_cirmux512 multiply 12345 5 -> 61725 8227db96d56Sopenharmony_cirmux513 multiply 12345 5.0001 -> 61727 Inexact Rounded 8237db96d56Sopenharmony_cirmux514 multiply 12345 5.001 -> 61738 Inexact Rounded 8247db96d56Sopenharmony_cirmux515 multiply 12345 5.01 -> 61849 Inexact Rounded 8257db96d56Sopenharmony_cirmux516 multiply 12345 12 -> 1.4814E+5 Rounded 8267db96d56Sopenharmony_cirmux517 multiply 12345 13 -> 1.6049E+5 Inexact Rounded 8277db96d56Sopenharmony_cirmux518 multiply 12355 12 -> 1.4826E+5 Rounded 8287db96d56Sopenharmony_cirmux519 multiply 12355 13 -> 1.6062E+5 Inexact Rounded 8297db96d56Sopenharmony_ci-- [rmux516 & rmux518] can surprise 8307db96d56Sopenharmony_ci 8317db96d56Sopenharmony_cirounding: floor 8327db96d56Sopenharmony_cirmux601 multiply 12345 1 -> 12345 8337db96d56Sopenharmony_cirmux602 multiply 12345 1.0001 -> 12346 Inexact Rounded 8347db96d56Sopenharmony_cirmux603 multiply 12345 1.001 -> 12357 Inexact Rounded 8357db96d56Sopenharmony_cirmux604 multiply 12345 1.01 -> 12468 Inexact Rounded 8367db96d56Sopenharmony_cirmux605 multiply 12345 1.1 -> 13579 Inexact Rounded 8377db96d56Sopenharmony_cirmux606 multiply 12345 4 -> 49380 8387db96d56Sopenharmony_cirmux607 multiply 12345 4.0001 -> 49381 Inexact Rounded 8397db96d56Sopenharmony_cirmux608 multiply 12345 4.9 -> 60490 Inexact Rounded 8407db96d56Sopenharmony_cirmux609 multiply 12345 4.99 -> 61601 Inexact Rounded 8417db96d56Sopenharmony_cirmux610 multiply 12345 4.999 -> 61712 Inexact Rounded 8427db96d56Sopenharmony_cirmux611 multiply 12345 4.9999 -> 61723 Inexact Rounded 8437db96d56Sopenharmony_cirmux612 multiply 12345 5 -> 61725 8447db96d56Sopenharmony_cirmux613 multiply 12345 5.0001 -> 61726 Inexact Rounded 8457db96d56Sopenharmony_cirmux614 multiply 12345 5.001 -> 61737 Inexact Rounded 8467db96d56Sopenharmony_cirmux615 multiply 12345 5.01 -> 61848 Inexact Rounded 8477db96d56Sopenharmony_cirmux616 multiply 12345 12 -> 1.4814E+5 Rounded 8487db96d56Sopenharmony_cirmux617 multiply 12345 13 -> 1.6048E+5 Inexact Rounded 8497db96d56Sopenharmony_cirmux618 multiply 12355 12 -> 1.4826E+5 Rounded 8507db96d56Sopenharmony_cirmux619 multiply 12355 13 -> 1.6061E+5 Inexact Rounded 8517db96d56Sopenharmony_ci 8527db96d56Sopenharmony_cirounding: ceiling 8537db96d56Sopenharmony_cirmux701 multiply 12345 1 -> 12345 8547db96d56Sopenharmony_cirmux702 multiply 12345 1.0001 -> 12347 Inexact Rounded 8557db96d56Sopenharmony_cirmux703 multiply 12345 1.001 -> 12358 Inexact Rounded 8567db96d56Sopenharmony_cirmux704 multiply 12345 1.01 -> 12469 Inexact Rounded 8577db96d56Sopenharmony_cirmux705 multiply 12345 1.1 -> 13580 Inexact Rounded 8587db96d56Sopenharmony_cirmux706 multiply 12345 4 -> 49380 8597db96d56Sopenharmony_cirmux707 multiply 12345 4.0001 -> 49382 Inexact Rounded 8607db96d56Sopenharmony_cirmux708 multiply 12345 4.9 -> 60491 Inexact Rounded 8617db96d56Sopenharmony_cirmux709 multiply 12345 4.99 -> 61602 Inexact Rounded 8627db96d56Sopenharmony_cirmux710 multiply 12345 4.999 -> 61713 Inexact Rounded 8637db96d56Sopenharmony_cirmux711 multiply 12345 4.9999 -> 61724 Inexact Rounded 8647db96d56Sopenharmony_cirmux712 multiply 12345 5 -> 61725 8657db96d56Sopenharmony_cirmux713 multiply 12345 5.0001 -> 61727 Inexact Rounded 8667db96d56Sopenharmony_cirmux714 multiply 12345 5.001 -> 61738 Inexact Rounded 8677db96d56Sopenharmony_cirmux715 multiply 12345 5.01 -> 61849 Inexact Rounded 8687db96d56Sopenharmony_cirmux716 multiply 12345 12 -> 1.4814E+5 Rounded 8697db96d56Sopenharmony_cirmux717 multiply 12345 13 -> 1.6049E+5 Inexact Rounded 8707db96d56Sopenharmony_cirmux718 multiply 12355 12 -> 1.4826E+5 Rounded 8717db96d56Sopenharmony_cirmux719 multiply 12355 13 -> 1.6062E+5 Inexact Rounded 8727db96d56Sopenharmony_ci 8737db96d56Sopenharmony_ci-- Power operator ----------------------------------------------------- 8747db96d56Sopenharmony_ci 8757db96d56Sopenharmony_cirounding: down 8767db96d56Sopenharmony_cirpox101 power 12345 -5 -> 3.4877E-21 Inexact Rounded 8777db96d56Sopenharmony_cirpox102 power 12345 -4 -> 4.3056E-17 Inexact Rounded 8787db96d56Sopenharmony_cirpox103 power 12345 -3 -> 5.3152E-13 Inexact Rounded 8797db96d56Sopenharmony_cirpox104 power 12345 -2 -> 6.5617E-9 Inexact Rounded 8807db96d56Sopenharmony_cirpox105 power 12345 -1 -> 0.000081004 Inexact Rounded 8817db96d56Sopenharmony_cirpox106 power 12345 0 -> 1 8827db96d56Sopenharmony_cirpox107 power 12345 1 -> 12345 8837db96d56Sopenharmony_cirpox108 power 12345 2 -> 1.5239E+8 Inexact Rounded 8847db96d56Sopenharmony_cirpox109 power 12345 3 -> 1.8813E+12 Inexact Rounded 8857db96d56Sopenharmony_cirpox110 power 12345 4 -> 2.3225E+16 Inexact Rounded 8867db96d56Sopenharmony_cirpox111 power 12345 5 -> 2.8671E+20 Inexact Rounded 8877db96d56Sopenharmony_cirpox112 power 415 2 -> 1.7222E+5 Inexact Rounded 8887db96d56Sopenharmony_cirpox113 power 75 3 -> 4.2187E+5 Inexact Rounded 8897db96d56Sopenharmony_ci 8907db96d56Sopenharmony_cirounding: half_down 8917db96d56Sopenharmony_cirpox201 power 12345 -5 -> 3.4877E-21 Inexact Rounded 8927db96d56Sopenharmony_cirpox202 power 12345 -4 -> 4.3056E-17 Inexact Rounded 8937db96d56Sopenharmony_cirpox203 power 12345 -3 -> 5.3153E-13 Inexact Rounded 8947db96d56Sopenharmony_cirpox204 power 12345 -2 -> 6.5617E-9 Inexact Rounded 8957db96d56Sopenharmony_cirpox205 power 12345 -1 -> 0.000081004 Inexact Rounded 8967db96d56Sopenharmony_cirpox206 power 12345 0 -> 1 8977db96d56Sopenharmony_cirpox207 power 12345 1 -> 12345 8987db96d56Sopenharmony_cirpox208 power 12345 2 -> 1.5240E+8 Inexact Rounded 8997db96d56Sopenharmony_cirpox209 power 12345 3 -> 1.8814E+12 Inexact Rounded 9007db96d56Sopenharmony_cirpox210 power 12345 4 -> 2.3225E+16 Inexact Rounded 9017db96d56Sopenharmony_cirpox211 power 12345 5 -> 2.8672E+20 Inexact Rounded 9027db96d56Sopenharmony_cirpox212 power 415 2 -> 1.7222E+5 Inexact Rounded 9037db96d56Sopenharmony_cirpox213 power 75 3 -> 4.2187E+5 Inexact Rounded 9047db96d56Sopenharmony_ci 9057db96d56Sopenharmony_cirounding: half_even 9067db96d56Sopenharmony_cirpox301 power 12345 -5 -> 3.4877E-21 Inexact Rounded 9077db96d56Sopenharmony_cirpox302 power 12345 -4 -> 4.3056E-17 Inexact Rounded 9087db96d56Sopenharmony_cirpox303 power 12345 -3 -> 5.3153E-13 Inexact Rounded 9097db96d56Sopenharmony_cirpox304 power 12345 -2 -> 6.5617E-9 Inexact Rounded 9107db96d56Sopenharmony_cirpox305 power 12345 -1 -> 0.000081004 Inexact Rounded 9117db96d56Sopenharmony_cirpox306 power 12345 0 -> 1 9127db96d56Sopenharmony_cirpox307 power 12345 1 -> 12345 9137db96d56Sopenharmony_cirpox308 power 12345 2 -> 1.5240E+8 Inexact Rounded 9147db96d56Sopenharmony_cirpox309 power 12345 3 -> 1.8814E+12 Inexact Rounded 9157db96d56Sopenharmony_cirpox310 power 12345 4 -> 2.3225E+16 Inexact Rounded 9167db96d56Sopenharmony_cirpox311 power 12345 5 -> 2.8672E+20 Inexact Rounded 9177db96d56Sopenharmony_cirpox312 power 415 2 -> 1.7222E+5 Inexact Rounded 9187db96d56Sopenharmony_cirpox313 power 75 3 -> 4.2188E+5 Inexact Rounded 9197db96d56Sopenharmony_ci 9207db96d56Sopenharmony_cirounding: half_up 9217db96d56Sopenharmony_cirpox401 power 12345 -5 -> 3.4877E-21 Inexact Rounded 9227db96d56Sopenharmony_cirpox402 power 12345 -4 -> 4.3056E-17 Inexact Rounded 9237db96d56Sopenharmony_cirpox403 power 12345 -3 -> 5.3153E-13 Inexact Rounded 9247db96d56Sopenharmony_cirpox404 power 12345 -2 -> 6.5617E-9 Inexact Rounded 9257db96d56Sopenharmony_cirpox405 power 12345 -1 -> 0.000081004 Inexact Rounded 9267db96d56Sopenharmony_cirpox406 power 12345 0 -> 1 9277db96d56Sopenharmony_cirpox407 power 12345 1 -> 12345 9287db96d56Sopenharmony_cirpox408 power 12345 2 -> 1.5240E+8 Inexact Rounded 9297db96d56Sopenharmony_cirpox409 power 12345 3 -> 1.8814E+12 Inexact Rounded 9307db96d56Sopenharmony_cirpox410 power 12345 4 -> 2.3225E+16 Inexact Rounded 9317db96d56Sopenharmony_cirpox411 power 12345 5 -> 2.8672E+20 Inexact Rounded 9327db96d56Sopenharmony_cirpox412 power 415 2 -> 1.7223E+5 Inexact Rounded 9337db96d56Sopenharmony_cirpox413 power 75 3 -> 4.2188E+5 Inexact Rounded 9347db96d56Sopenharmony_ci 9357db96d56Sopenharmony_cirounding: up 9367db96d56Sopenharmony_cirpox501 power 12345 -5 -> 3.4878E-21 Inexact Rounded 9377db96d56Sopenharmony_cirpox502 power 12345 -4 -> 4.3057E-17 Inexact Rounded 9387db96d56Sopenharmony_cirpox503 power 12345 -3 -> 5.3153E-13 Inexact Rounded 9397db96d56Sopenharmony_cirpox504 power 12345 -2 -> 6.5618E-9 Inexact Rounded 9407db96d56Sopenharmony_cirpox505 power 12345 -1 -> 0.000081005 Inexact Rounded 9417db96d56Sopenharmony_cirpox506 power 12345 0 -> 1 9427db96d56Sopenharmony_cirpox507 power 12345 1 -> 12345 9437db96d56Sopenharmony_cirpox508 power 12345 2 -> 1.5240E+8 Inexact Rounded 9447db96d56Sopenharmony_cirpox509 power 12345 3 -> 1.8814E+12 Inexact Rounded 9457db96d56Sopenharmony_cirpox510 power 12345 4 -> 2.3226E+16 Inexact Rounded 9467db96d56Sopenharmony_cirpox511 power 12345 5 -> 2.8672E+20 Inexact Rounded 9477db96d56Sopenharmony_cirpox512 power 415 2 -> 1.7223E+5 Inexact Rounded 9487db96d56Sopenharmony_cirpox513 power 75 3 -> 4.2188E+5 Inexact Rounded 9497db96d56Sopenharmony_ci 9507db96d56Sopenharmony_cirounding: floor 9517db96d56Sopenharmony_cirpox601 power 12345 -5 -> 3.4877E-21 Inexact Rounded 9527db96d56Sopenharmony_cirpox602 power 12345 -4 -> 4.3056E-17 Inexact Rounded 9537db96d56Sopenharmony_cirpox603 power 12345 -3 -> 5.3152E-13 Inexact Rounded 9547db96d56Sopenharmony_cirpox604 power 12345 -2 -> 6.5617E-9 Inexact Rounded 9557db96d56Sopenharmony_cirpox605 power 12345 -1 -> 0.000081004 Inexact Rounded 9567db96d56Sopenharmony_cirpox606 power 12345 0 -> 1 9577db96d56Sopenharmony_cirpox607 power 12345 1 -> 12345 9587db96d56Sopenharmony_cirpox608 power 12345 2 -> 1.5239E+8 Inexact Rounded 9597db96d56Sopenharmony_cirpox609 power 12345 3 -> 1.8813E+12 Inexact Rounded 9607db96d56Sopenharmony_cirpox610 power 12345 4 -> 2.3225E+16 Inexact Rounded 9617db96d56Sopenharmony_cirpox611 power 12345 5 -> 2.8671E+20 Inexact Rounded 9627db96d56Sopenharmony_cirpox612 power 415 2 -> 1.7222E+5 Inexact Rounded 9637db96d56Sopenharmony_cirpox613 power 75 3 -> 4.2187E+5 Inexact Rounded 9647db96d56Sopenharmony_ci 9657db96d56Sopenharmony_cirounding: ceiling 9667db96d56Sopenharmony_cirpox701 power 12345 -5 -> 3.4878E-21 Inexact Rounded 9677db96d56Sopenharmony_cirpox702 power 12345 -4 -> 4.3057E-17 Inexact Rounded 9687db96d56Sopenharmony_cirpox703 power 12345 -3 -> 5.3153E-13 Inexact Rounded 9697db96d56Sopenharmony_cirpox704 power 12345 -2 -> 6.5618E-9 Inexact Rounded 9707db96d56Sopenharmony_cirpox705 power 12345 -1 -> 0.000081005 Inexact Rounded 9717db96d56Sopenharmony_cirpox706 power 12345 0 -> 1 9727db96d56Sopenharmony_cirpox707 power 12345 1 -> 12345 9737db96d56Sopenharmony_cirpox708 power 12345 2 -> 1.5240E+8 Inexact Rounded 9747db96d56Sopenharmony_cirpox709 power 12345 3 -> 1.8814E+12 Inexact Rounded 9757db96d56Sopenharmony_cirpox710 power 12345 4 -> 2.3226E+16 Inexact Rounded 9767db96d56Sopenharmony_cirpox711 power 12345 5 -> 2.8672E+20 Inexact Rounded 9777db96d56Sopenharmony_cirpox712 power 415 2 -> 1.7223E+5 Inexact Rounded 9787db96d56Sopenharmony_cirpox713 power 75 3 -> 4.2188E+5 Inexact Rounded 9797db96d56Sopenharmony_ci 9807db96d56Sopenharmony_ci-- Underflow Subnormal and overflow values vary with rounding mode and sign 9817db96d56Sopenharmony_cimaxexponent: 999999999 9827db96d56Sopenharmony_ciminexponent: -999999999 9837db96d56Sopenharmony_cirounding: down 9847db96d56Sopenharmony_cirovx100 multiply 10 9E+999999999 -> 9.9999E+999999999 Overflow Inexact Rounded 9857db96d56Sopenharmony_cirovx101 multiply -10 9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded 9867db96d56Sopenharmony_cirovx102 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 9877db96d56Sopenharmony_cirovx104 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 9887db96d56Sopenharmony_ci 9897db96d56Sopenharmony_cirounding: up 9907db96d56Sopenharmony_cirovx110 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded 9917db96d56Sopenharmony_cirovx111 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded 9927db96d56Sopenharmony_cirovx112 divide 1E-9 9E+999999999 -> 1E-1000000003 Underflow Subnormal Inexact Rounded 9937db96d56Sopenharmony_cirovx114 divide -1E-9 9E+999999999 -> -1E-1000000003 Underflow Subnormal Inexact Rounded 9947db96d56Sopenharmony_ci 9957db96d56Sopenharmony_cirounding: ceiling 9967db96d56Sopenharmony_cirovx120 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded 9977db96d56Sopenharmony_cirovx121 multiply -10 9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded 9987db96d56Sopenharmony_cirovx122 divide 1E-9 9E+999999999 -> 1E-1000000003 Underflow Subnormal Inexact Rounded 9997db96d56Sopenharmony_cirovx124 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 10007db96d56Sopenharmony_ci 10017db96d56Sopenharmony_cirounding: floor 10027db96d56Sopenharmony_cirovx130 multiply 10 9E+999999999 -> 9.9999E+999999999 Overflow Inexact Rounded 10037db96d56Sopenharmony_cirovx131 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded 10047db96d56Sopenharmony_cirovx132 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 10057db96d56Sopenharmony_cirovx134 divide -1E-9 9E+999999999 -> -1E-1000000003 Underflow Subnormal Inexact Rounded 10067db96d56Sopenharmony_ci 10077db96d56Sopenharmony_cirounding: half_up 10087db96d56Sopenharmony_cirovx140 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded 10097db96d56Sopenharmony_cirovx141 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded 10107db96d56Sopenharmony_cirovx142 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 10117db96d56Sopenharmony_cirovx144 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 10127db96d56Sopenharmony_ci 10137db96d56Sopenharmony_cirounding: half_even 10147db96d56Sopenharmony_cirovx150 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded 10157db96d56Sopenharmony_cirovx151 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded 10167db96d56Sopenharmony_cirovx152 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 10177db96d56Sopenharmony_cirovx154 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 10187db96d56Sopenharmony_ci 10197db96d56Sopenharmony_cirounding: half_down 10207db96d56Sopenharmony_cirovx160 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded 10217db96d56Sopenharmony_cirovx161 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded 10227db96d56Sopenharmony_cirovx162 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 10237db96d56Sopenharmony_cirovx164 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped 10247db96d56Sopenharmony_ci 10257db96d56Sopenharmony_ci-- check maximum finite value over a range of precisions 10267db96d56Sopenharmony_cirounding: down 10277db96d56Sopenharmony_ciprecision: 1 10287db96d56Sopenharmony_cirovx200 multiply 10 9E+999999999 -> 9E+999999999 Overflow Inexact Rounded 10297db96d56Sopenharmony_cirovx201 multiply -10 9E+999999999 -> -9E+999999999 Overflow Inexact Rounded 10307db96d56Sopenharmony_ciprecision: 2 10317db96d56Sopenharmony_cirovx210 multiply 10 9E+999999999 -> 9.9E+999999999 Overflow Inexact Rounded 10327db96d56Sopenharmony_cirovx211 multiply -10 9E+999999999 -> -9.9E+999999999 Overflow Inexact Rounded 10337db96d56Sopenharmony_ciprecision: 3 10347db96d56Sopenharmony_cirovx220 multiply 10 9E+999999999 -> 9.99E+999999999 Overflow Inexact Rounded 10357db96d56Sopenharmony_cirovx221 multiply -10 9E+999999999 -> -9.99E+999999999 Overflow Inexact Rounded 10367db96d56Sopenharmony_ciprecision: 4 10377db96d56Sopenharmony_cirovx230 multiply 10 9E+999999999 -> 9.999E+999999999 Overflow Inexact Rounded 10387db96d56Sopenharmony_cirovx231 multiply -10 9E+999999999 -> -9.999E+999999999 Overflow Inexact Rounded 10397db96d56Sopenharmony_ciprecision: 5 10407db96d56Sopenharmony_cirovx240 multiply 10 9E+999999999 -> 9.9999E+999999999 Overflow Inexact Rounded 10417db96d56Sopenharmony_cirovx241 multiply -10 9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded 10427db96d56Sopenharmony_ciprecision: 6 10437db96d56Sopenharmony_cirovx250 multiply 10 9E+999999999 -> 9.99999E+999999999 Overflow Inexact Rounded 10447db96d56Sopenharmony_cirovx251 multiply -10 9E+999999999 -> -9.99999E+999999999 Overflow Inexact Rounded 10457db96d56Sopenharmony_ciprecision: 7 10467db96d56Sopenharmony_cirovx260 multiply 10 9E+999999999 -> 9.999999E+999999999 Overflow Inexact Rounded 10477db96d56Sopenharmony_cirovx261 multiply -10 9E+999999999 -> -9.999999E+999999999 Overflow Inexact Rounded 10487db96d56Sopenharmony_ciprecision: 8 10497db96d56Sopenharmony_cirovx270 multiply 10 9E+999999999 -> 9.9999999E+999999999 Overflow Inexact Rounded 10507db96d56Sopenharmony_cirovx271 multiply -10 9E+999999999 -> -9.9999999E+999999999 Overflow Inexact Rounded 10517db96d56Sopenharmony_ciprecision: 9 10527db96d56Sopenharmony_cirovx280 multiply 10 9E+999999999 -> 9.99999999E+999999999 Overflow Inexact Rounded 10537db96d56Sopenharmony_cirovx281 multiply -10 9E+999999999 -> -9.99999999E+999999999 Overflow Inexact Rounded 10547db96d56Sopenharmony_ciprecision: 10 10557db96d56Sopenharmony_cirovx290 multiply 10 9E+999999999 -> 9.999999999E+999999999 Overflow Inexact Rounded 10567db96d56Sopenharmony_cirovx291 multiply -10 9E+999999999 -> -9.999999999E+999999999 Overflow Inexact Rounded 10577db96d56Sopenharmony_ci 10587db96d56Sopenharmony_ci-- reprise rounding mode effect (using multiplies so precision directive used) 10597db96d56Sopenharmony_ciprecision: 9 10607db96d56Sopenharmony_cimaxexponent: 999999999 10617db96d56Sopenharmony_cirounding: half_up 10627db96d56Sopenharmony_cirmex400 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded 10637db96d56Sopenharmony_cirmex401 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded 10647db96d56Sopenharmony_cirounding: half_down 10657db96d56Sopenharmony_cirmex402 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded 10667db96d56Sopenharmony_cirmex403 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded 10677db96d56Sopenharmony_cirounding: half_even 10687db96d56Sopenharmony_cirmex404 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded 10697db96d56Sopenharmony_cirmex405 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded 10707db96d56Sopenharmony_cirounding: floor 10717db96d56Sopenharmony_cirmex406 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded 10727db96d56Sopenharmony_cirmex407 multiply 9.999E+999999999 10 -> 9.99999999E+999999999 Overflow Inexact Rounded 10737db96d56Sopenharmony_cirounding: ceiling 10747db96d56Sopenharmony_cirmex408 multiply -9.999E+999999999 10 -> -9.99999999E+999999999 Overflow Inexact Rounded 10757db96d56Sopenharmony_cirmex409 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded 10767db96d56Sopenharmony_cirounding: up 10777db96d56Sopenharmony_cirmex410 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded 10787db96d56Sopenharmony_cirmex411 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded 10797db96d56Sopenharmony_cirounding: down 10807db96d56Sopenharmony_cirmex412 multiply -9.999E+999999999 10 -> -9.99999999E+999999999 Overflow Inexact Rounded 10817db96d56Sopenharmony_cirmex413 multiply 9.999E+999999999 10 -> 9.99999999E+999999999 Overflow Inexact Rounded 10827db96d56Sopenharmony_ci 10837db96d56Sopenharmony_ci----- Round-for-reround ----- 10847db96d56Sopenharmony_cirounding: 05up 10857db96d56Sopenharmony_ciprecision: 5 -- for easier visual inspection 10867db96d56Sopenharmony_cimaxExponent: 999 10877db96d56Sopenharmony_ciminexponent: -999 10887db96d56Sopenharmony_ci 10897db96d56Sopenharmony_ci-- basic rounding; really is just 0 and 5 up 10907db96d56Sopenharmony_cir05up001 add 12340 0.001 -> 12341 Inexact Rounded 10917db96d56Sopenharmony_cir05up002 add 12341 0.001 -> 12341 Inexact Rounded 10927db96d56Sopenharmony_cir05up003 add 12342 0.001 -> 12342 Inexact Rounded 10937db96d56Sopenharmony_cir05up004 add 12343 0.001 -> 12343 Inexact Rounded 10947db96d56Sopenharmony_cir05up005 add 12344 0.001 -> 12344 Inexact Rounded 10957db96d56Sopenharmony_cir05up006 add 12345 0.001 -> 12346 Inexact Rounded 10967db96d56Sopenharmony_cir05up007 add 12346 0.001 -> 12346 Inexact Rounded 10977db96d56Sopenharmony_cir05up008 add 12347 0.001 -> 12347 Inexact Rounded 10987db96d56Sopenharmony_cir05up009 add 12348 0.001 -> 12348 Inexact Rounded 10997db96d56Sopenharmony_cir05up010 add 12349 0.001 -> 12349 Inexact Rounded 11007db96d56Sopenharmony_ci 11017db96d56Sopenharmony_cir05up011 add 12340 0.000 -> 12340 Rounded 11027db96d56Sopenharmony_cir05up012 add 12341 0.000 -> 12341 Rounded 11037db96d56Sopenharmony_cir05up013 add 12342 0.000 -> 12342 Rounded 11047db96d56Sopenharmony_cir05up014 add 12343 0.000 -> 12343 Rounded 11057db96d56Sopenharmony_cir05up015 add 12344 0.000 -> 12344 Rounded 11067db96d56Sopenharmony_cir05up016 add 12345 0.000 -> 12345 Rounded 11077db96d56Sopenharmony_cir05up017 add 12346 0.000 -> 12346 Rounded 11087db96d56Sopenharmony_cir05up018 add 12347 0.000 -> 12347 Rounded 11097db96d56Sopenharmony_cir05up019 add 12348 0.000 -> 12348 Rounded 11107db96d56Sopenharmony_cir05up020 add 12349 0.000 -> 12349 Rounded 11117db96d56Sopenharmony_ci 11127db96d56Sopenharmony_cir05up021 add 12340 0.901 -> 12341 Inexact Rounded 11137db96d56Sopenharmony_cir05up022 add 12341 0.901 -> 12341 Inexact Rounded 11147db96d56Sopenharmony_cir05up023 add 12342 0.901 -> 12342 Inexact Rounded 11157db96d56Sopenharmony_cir05up024 add 12343 0.901 -> 12343 Inexact Rounded 11167db96d56Sopenharmony_cir05up025 add 12344 0.901 -> 12344 Inexact Rounded 11177db96d56Sopenharmony_cir05up026 add 12345 0.901 -> 12346 Inexact Rounded 11187db96d56Sopenharmony_cir05up027 add 12346 0.901 -> 12346 Inexact Rounded 11197db96d56Sopenharmony_cir05up028 add 12347 0.901 -> 12347 Inexact Rounded 11207db96d56Sopenharmony_cir05up029 add 12348 0.901 -> 12348 Inexact Rounded 11217db96d56Sopenharmony_cir05up030 add 12349 0.901 -> 12349 Inexact Rounded 11227db96d56Sopenharmony_ci 11237db96d56Sopenharmony_cir05up031 add -12340 -0.001 -> -12341 Inexact Rounded 11247db96d56Sopenharmony_cir05up032 add -12341 -0.001 -> -12341 Inexact Rounded 11257db96d56Sopenharmony_cir05up033 add -12342 -0.001 -> -12342 Inexact Rounded 11267db96d56Sopenharmony_cir05up034 add -12343 -0.001 -> -12343 Inexact Rounded 11277db96d56Sopenharmony_cir05up035 add -12344 -0.001 -> -12344 Inexact Rounded 11287db96d56Sopenharmony_cir05up036 add -12345 -0.001 -> -12346 Inexact Rounded 11297db96d56Sopenharmony_cir05up037 add -12346 -0.001 -> -12346 Inexact Rounded 11307db96d56Sopenharmony_cir05up038 add -12347 -0.001 -> -12347 Inexact Rounded 11317db96d56Sopenharmony_cir05up039 add -12348 -0.001 -> -12348 Inexact Rounded 11327db96d56Sopenharmony_cir05up040 add -12349 -0.001 -> -12349 Inexact Rounded 11337db96d56Sopenharmony_ci 11347db96d56Sopenharmony_cir05up041 add -12340 0.001 -> -12339 Inexact Rounded 11357db96d56Sopenharmony_cir05up042 add -12341 0.001 -> -12341 Inexact Rounded 11367db96d56Sopenharmony_cir05up043 add -12342 0.001 -> -12341 Inexact Rounded 11377db96d56Sopenharmony_cir05up044 add -12343 0.001 -> -12342 Inexact Rounded 11387db96d56Sopenharmony_cir05up045 add -12344 0.001 -> -12343 Inexact Rounded 11397db96d56Sopenharmony_cir05up046 add -12345 0.001 -> -12344 Inexact Rounded 11407db96d56Sopenharmony_cir05up047 add -12346 0.001 -> -12346 Inexact Rounded 11417db96d56Sopenharmony_cir05up048 add -12347 0.001 -> -12346 Inexact Rounded 11427db96d56Sopenharmony_cir05up049 add -12348 0.001 -> -12347 Inexact Rounded 11437db96d56Sopenharmony_cir05up050 add -12349 0.001 -> -12348 Inexact Rounded 11447db96d56Sopenharmony_ci 11457db96d56Sopenharmony_ci-- Addition operators ------------------------------------------------- 11467db96d56Sopenharmony_ci-- [The first few of these check negative residue possibilities; these 11477db96d56Sopenharmony_ci-- cases may be implemented as a negative residue in fastpaths] 11487db96d56Sopenharmony_ci 11497db96d56Sopenharmony_cir0adx100 add 12345 -0.1 -> 12344 Inexact Rounded 11507db96d56Sopenharmony_cir0adx101 add 12345 -0.01 -> 12344 Inexact Rounded 11517db96d56Sopenharmony_cir0adx102 add 12345 -0.001 -> 12344 Inexact Rounded 11527db96d56Sopenharmony_cir0adx103 add 12345 -0.00001 -> 12344 Inexact Rounded 11537db96d56Sopenharmony_cir0adx104 add 12345 -0.000001 -> 12344 Inexact Rounded 11547db96d56Sopenharmony_cir0adx105 add 12345 -0.0000001 -> 12344 Inexact Rounded 11557db96d56Sopenharmony_cir0adx106 add 12345 0 -> 12345 11567db96d56Sopenharmony_cir0adx107 add 12345 0.0000001 -> 12346 Inexact Rounded 11577db96d56Sopenharmony_cir0adx108 add 12345 0.000001 -> 12346 Inexact Rounded 11587db96d56Sopenharmony_cir0adx109 add 12345 0.00001 -> 12346 Inexact Rounded 11597db96d56Sopenharmony_cir0adx110 add 12345 0.0001 -> 12346 Inexact Rounded 11607db96d56Sopenharmony_cir0adx111 add 12345 0.001 -> 12346 Inexact Rounded 11617db96d56Sopenharmony_cir0adx112 add 12345 0.01 -> 12346 Inexact Rounded 11627db96d56Sopenharmony_cir0adx113 add 12345 0.1 -> 12346 Inexact Rounded 11637db96d56Sopenharmony_ci 11647db96d56Sopenharmony_cir0adx115 add 12346 0.49999 -> 12346 Inexact Rounded 11657db96d56Sopenharmony_cir0adx116 add 12346 0.5 -> 12346 Inexact Rounded 11667db96d56Sopenharmony_cir0adx117 add 12346 0.50001 -> 12346 Inexact Rounded 11677db96d56Sopenharmony_ci 11687db96d56Sopenharmony_cir0adx120 add 12345 0.4 -> 12346 Inexact Rounded 11697db96d56Sopenharmony_cir0adx121 add 12345 0.49 -> 12346 Inexact Rounded 11707db96d56Sopenharmony_cir0adx122 add 12345 0.499 -> 12346 Inexact Rounded 11717db96d56Sopenharmony_cir0adx123 add 12345 0.49999 -> 12346 Inexact Rounded 11727db96d56Sopenharmony_cir0adx124 add 12345 0.5 -> 12346 Inexact Rounded 11737db96d56Sopenharmony_cir0adx125 add 12345 0.50001 -> 12346 Inexact Rounded 11747db96d56Sopenharmony_cir0adx126 add 12345 0.5001 -> 12346 Inexact Rounded 11757db96d56Sopenharmony_cir0adx127 add 12345 0.501 -> 12346 Inexact Rounded 11767db96d56Sopenharmony_cir0adx128 add 12345 0.51 -> 12346 Inexact Rounded 11777db96d56Sopenharmony_cir0adx129 add 12345 0.6 -> 12346 Inexact Rounded 11787db96d56Sopenharmony_ci 11797db96d56Sopenharmony_ci-- negatives... 11807db96d56Sopenharmony_ci 11817db96d56Sopenharmony_cir0sux100 add -12345 -0.1 -> -12346 Inexact Rounded 11827db96d56Sopenharmony_cir0sux101 add -12345 -0.01 -> -12346 Inexact Rounded 11837db96d56Sopenharmony_cir0sux102 add -12345 -0.001 -> -12346 Inexact Rounded 11847db96d56Sopenharmony_cir0sux103 add -12345 -0.00001 -> -12346 Inexact Rounded 11857db96d56Sopenharmony_cir0sux104 add -12345 -0.000001 -> -12346 Inexact Rounded 11867db96d56Sopenharmony_cir0sux105 add -12345 -0.0000001 -> -12346 Inexact Rounded 11877db96d56Sopenharmony_cir0sux106 add -12345 0 -> -12345 11887db96d56Sopenharmony_cir0sux107 add -12345 0.0000001 -> -12344 Inexact Rounded 11897db96d56Sopenharmony_cir0sux108 add -12345 0.000001 -> -12344 Inexact Rounded 11907db96d56Sopenharmony_cir0sux109 add -12345 0.00001 -> -12344 Inexact Rounded 11917db96d56Sopenharmony_cir0sux110 add -12345 0.0001 -> -12344 Inexact Rounded 11927db96d56Sopenharmony_cir0sux111 add -12345 0.001 -> -12344 Inexact Rounded 11937db96d56Sopenharmony_cir0sux112 add -12345 0.01 -> -12344 Inexact Rounded 11947db96d56Sopenharmony_cir0sux113 add -12345 0.1 -> -12344 Inexact Rounded 11957db96d56Sopenharmony_ci 11967db96d56Sopenharmony_cir0sux115 add -12346 0.49999 -> -12346 Inexact Rounded 11977db96d56Sopenharmony_cir0sux116 add -12346 0.5 -> -12346 Inexact Rounded 11987db96d56Sopenharmony_cir0sux117 add -12346 0.50001 -> -12346 Inexact Rounded 11997db96d56Sopenharmony_ci 12007db96d56Sopenharmony_cir0sux120 add -12345 0.4 -> -12344 Inexact Rounded 12017db96d56Sopenharmony_cir0sux121 add -12345 0.49 -> -12344 Inexact Rounded 12027db96d56Sopenharmony_cir0sux122 add -12345 0.499 -> -12344 Inexact Rounded 12037db96d56Sopenharmony_cir0sux123 add -12345 0.49999 -> -12344 Inexact Rounded 12047db96d56Sopenharmony_cir0sux124 add -12345 0.5 -> -12344 Inexact Rounded 12057db96d56Sopenharmony_cir0sux125 add -12345 0.50001 -> -12344 Inexact Rounded 12067db96d56Sopenharmony_cir0sux126 add -12345 0.5001 -> -12344 Inexact Rounded 12077db96d56Sopenharmony_cir0sux127 add -12345 0.501 -> -12344 Inexact Rounded 12087db96d56Sopenharmony_cir0sux128 add -12345 0.51 -> -12344 Inexact Rounded 12097db96d56Sopenharmony_cir0sux129 add -12345 0.6 -> -12344 Inexact Rounded 12107db96d56Sopenharmony_ci 12117db96d56Sopenharmony_ci-- Check cancellation subtractions 12127db96d56Sopenharmony_ci-- (The IEEE 854 'curious rule' in $6.3) 12137db96d56Sopenharmony_ci 12147db96d56Sopenharmony_cir0zex001 add 0 0 -> 0 12157db96d56Sopenharmony_cir0zex002 add 0 -0 -> 0 12167db96d56Sopenharmony_cir0zex003 add -0 0 -> 0 12177db96d56Sopenharmony_cir0zex004 add -0 -0 -> -0 12187db96d56Sopenharmony_cir0zex005 add 1 -1 -> 0 12197db96d56Sopenharmony_cir0zex006 add -1 1 -> 0 12207db96d56Sopenharmony_cir0zex007 add 1.5 -1.5 -> 0.0 12217db96d56Sopenharmony_cir0zex008 add -1.5 1.5 -> 0.0 12227db96d56Sopenharmony_cir0zex009 add 2 -2 -> 0 12237db96d56Sopenharmony_cir0zex010 add -2 2 -> 0 12247db96d56Sopenharmony_ci 12257db96d56Sopenharmony_ci 12267db96d56Sopenharmony_ci-- Division operators ------------------------------------------------- 12277db96d56Sopenharmony_ci 12287db96d56Sopenharmony_cir0dvx101 divide 12345 1 -> 12345 12297db96d56Sopenharmony_cir0dvx102 divide 12345 1.0001 -> 12343 Inexact Rounded 12307db96d56Sopenharmony_cir0dvx103 divide 12345 1.001 -> 12332 Inexact Rounded 12317db96d56Sopenharmony_cir0dvx104 divide 12345 1.01 -> 12222 Inexact Rounded 12327db96d56Sopenharmony_cir0dvx105 divide 12345 1.1 -> 11222 Inexact Rounded 12337db96d56Sopenharmony_cir0dvx106 divide 12355 4 -> 3088.7 Inexact Rounded 12347db96d56Sopenharmony_cir0dvx107 divide 12345 4 -> 3086.2 Inexact Rounded 12357db96d56Sopenharmony_cir0dvx108 divide 12355 4.0001 -> 3088.6 Inexact Rounded 12367db96d56Sopenharmony_cir0dvx109 divide 12345 4.0001 -> 3086.1 Inexact Rounded 12377db96d56Sopenharmony_cir0dvx110 divide 12345 4.9 -> 2519.3 Inexact Rounded 12387db96d56Sopenharmony_cir0dvx111 divide 12345 4.99 -> 2473.9 Inexact Rounded 12397db96d56Sopenharmony_cir0dvx112 divide 12345 4.999 -> 2469.4 Inexact Rounded 12407db96d56Sopenharmony_cir0dvx113 divide 12345 4.9999 -> 2469.1 Inexact Rounded 12417db96d56Sopenharmony_cir0dvx114 divide 12345 5 -> 2469 12427db96d56Sopenharmony_cir0dvx115 divide 12345 5.0001 -> 2468.9 Inexact Rounded 12437db96d56Sopenharmony_cir0dvx116 divide 12345 5.001 -> 2468.6 Inexact Rounded 12447db96d56Sopenharmony_cir0dvx117 divide 12345 5.01 -> 2464.1 Inexact Rounded 12457db96d56Sopenharmony_cir0dvx118 divide 12345 5.1 -> 2420.6 Inexact Rounded 12467db96d56Sopenharmony_ci 12477db96d56Sopenharmony_ci-- [divideInteger and remainder unaffected] 12487db96d56Sopenharmony_ci 12497db96d56Sopenharmony_ci-- Multiplication operator -------------------------------------------- 12507db96d56Sopenharmony_ci 12517db96d56Sopenharmony_cir0mux101 multiply 12345 1 -> 12345 12527db96d56Sopenharmony_cir0mux102 multiply 12345 1.0001 -> 12346 Inexact Rounded 12537db96d56Sopenharmony_cir0mux103 multiply 12345 1.001 -> 12357 Inexact Rounded 12547db96d56Sopenharmony_cir0mux104 multiply 12345 1.01 -> 12468 Inexact Rounded 12557db96d56Sopenharmony_cir0mux105 multiply 12345 1.1 -> 13579 Inexact Rounded 12567db96d56Sopenharmony_cir0mux106 multiply 12345 4 -> 49380 12577db96d56Sopenharmony_cir0mux107 multiply 12345 4.0001 -> 49381 Inexact Rounded 12587db96d56Sopenharmony_cir0mux108 multiply 12345 4.9 -> 60491 Inexact Rounded 12597db96d56Sopenharmony_cir0mux109 multiply 12345 4.99 -> 61601 Inexact Rounded 12607db96d56Sopenharmony_cir0mux110 multiply 12345 4.999 -> 61712 Inexact Rounded 12617db96d56Sopenharmony_cir0mux111 multiply 12345 4.9999 -> 61723 Inexact Rounded 12627db96d56Sopenharmony_cir0mux112 multiply 12345 5 -> 61725 12637db96d56Sopenharmony_cir0mux113 multiply 12345 5.0001 -> 61726 Inexact Rounded 12647db96d56Sopenharmony_cir0mux114 multiply 12345 5.001 -> 61737 Inexact Rounded 12657db96d56Sopenharmony_cir0mux115 multiply 12345 5.01 -> 61848 Inexact Rounded 12667db96d56Sopenharmony_cir0mux116 multiply 12345 12 -> 1.4814E+5 Rounded 12677db96d56Sopenharmony_cir0mux117 multiply 12345 13 -> 1.6048E+5 Inexact Rounded 12687db96d56Sopenharmony_cir0mux118 multiply 12355 12 -> 1.4826E+5 Rounded 12697db96d56Sopenharmony_cir0mux119 multiply 12355 13 -> 1.6061E+5 Inexact Rounded 12707db96d56Sopenharmony_ci 12717db96d56Sopenharmony_ci 12727db96d56Sopenharmony_ci-- Power operator ----------------------------------------------------- 12737db96d56Sopenharmony_ci 12747db96d56Sopenharmony_cir0pox101 power 12345 -5 -> 3.4877E-21 Inexact Rounded 12757db96d56Sopenharmony_cir0pox102 power 12345 -4 -> 4.3056E-17 Inexact Rounded 12767db96d56Sopenharmony_cir0pox103 power 12345 -3 -> 5.3152E-13 Inexact Rounded 12777db96d56Sopenharmony_cir0pox104 power 12345 -2 -> 6.5617E-9 Inexact Rounded 12787db96d56Sopenharmony_cir0pox105 power 12345 -1 -> 0.000081004 Inexact Rounded 12797db96d56Sopenharmony_cir0pox106 power 12345 0 -> 1 12807db96d56Sopenharmony_cir0pox107 power 12345 1 -> 12345 12817db96d56Sopenharmony_cir0pox108 power 12345 2 -> 1.5239E+8 Inexact Rounded 12827db96d56Sopenharmony_cir0pox109 power 12345 3 -> 1.8813E+12 Inexact Rounded 12837db96d56Sopenharmony_cir0pox110 power 12345 4 -> 2.3226E+16 Inexact Rounded 12847db96d56Sopenharmony_cir0pox111 power 12345 5 -> 2.8671E+20 Inexact Rounded 12857db96d56Sopenharmony_cir0pox112 power 415 2 -> 1.7222E+5 Inexact Rounded 12867db96d56Sopenharmony_cir0pox113 power 75 3 -> 4.2187E+5 Inexact Rounded 12877db96d56Sopenharmony_ci 12887db96d56Sopenharmony_ci 12897db96d56Sopenharmony_ci-- Underflow Subnormal and overflow values vary with rounding mode and sign 12907db96d56Sopenharmony_cimaxexponent: 999999999 12917db96d56Sopenharmony_ciminexponent: -999999999 12927db96d56Sopenharmony_ci-- [round down gives Nmax on first two and .0E... on the next two] 12937db96d56Sopenharmony_cir0ovx100 multiply 10 9E+999999999 -> 9.9999E+999999999 Overflow Inexact Rounded 12947db96d56Sopenharmony_cir0ovx101 multiply -10 9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded 12957db96d56Sopenharmony_cir0ovx102 divide 1E-9 9E+999999999 -> 1E-1000000003 Underflow Subnormal Inexact Rounded 12967db96d56Sopenharmony_cir0ovx104 divide -1E-9 9E+999999999 -> -1E-1000000003 Underflow Subnormal Inexact Rounded 12977db96d56Sopenharmony_ci 12987db96d56Sopenharmony_ci-- reprise rounding mode effect (using multiplies so precision directive used) 12997db96d56Sopenharmony_ciprecision: 9 13007db96d56Sopenharmony_cimaxexponent: 999999999 13017db96d56Sopenharmony_cir0mex412 multiply -9.999E+999999999 10 -> -9.99999999E+999999999 Overflow Inexact Rounded 13027db96d56Sopenharmony_cir0mex413 multiply 9.999E+999999999 10 -> 9.99999999E+999999999 Overflow Inexact Rounded 13037db96d56Sopenharmony_ci 1304