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