symbian-qemu-0.9.1-12/python-2.6.1/Lib/test/decimaltestdata/rounding.decTest
changeset 1 2fb8b9db1c86
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian-qemu-0.9.1-12/python-2.6.1/Lib/test/decimaltestdata/rounding.decTest	Fri Jul 31 15:01:17 2009 +0100
@@ -0,0 +1,1303 @@
+------------------------------------------------------------------------
+-- rounding.decTest -- decimal rounding modes testcases               --
+-- Copyright (c) IBM Corporation, 1981, 2008.  All rights reserved.   --
+------------------------------------------------------------------------
+-- Please see the document "General Decimal Arithmetic Testcases"     --
+-- at http://www2.hursley.ibm.com/decimal for the description of      --
+-- these testcases.                                                   --
+--                                                                    --
+-- These testcases are experimental ('beta' versions), and they       --
+-- may contain errors.  They are offered on an as-is basis.  In       --
+-- particular, achieving the same results as the tests here is not    --
+-- a guarantee that an implementation complies with any Standard      --
+-- or specification.  The tests are not exhaustive.                   --
+--                                                                    --
+-- Please send comments, suggestions, and corrections to the author:  --
+--   Mike Cowlishaw, IBM Fellow                                       --
+--   IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK         --
+--   mfc@uk.ibm.com                                                   --
+------------------------------------------------------------------------
+version: 2.58
+
+-- These tests require that implementations take account of residues in
+-- order to get correct results for some rounding modes.  Rather than
+-- single rounding tests we therefore need tests for most operators.
+-- [We do assume add/minus/plus/subtract are common paths, however, as
+-- is rounding of negatives (if the latter works for addition, assume it
+-- works for the others, too).]
+--
+-- Round-for-reround (05UP) is tested as a separate block, mostly for
+-- 'historical' reasons.
+--
+-- Underflow Subnormal and overflow behaviours are tested under the
+-- individual operators.
+
+extended:    1
+precision:   5           -- for easier visual inspection
+maxExponent: 999
+minexponent: -999
+
+-- Addition operators -------------------------------------------------
+rounding: down
+
+radx100  add 12345 -0.1       -> 12344 Inexact Rounded
+radx101  add 12345 -0.01      -> 12344 Inexact Rounded
+radx102  add 12345 -0.001     -> 12344 Inexact Rounded
+radx103  add 12345 -0.00001   -> 12344 Inexact Rounded
+radx104  add 12345 -0.000001  -> 12344 Inexact Rounded
+radx105  add 12345 -0.0000001 -> 12344 Inexact Rounded
+radx106  add 12345  0         -> 12345
+radx107  add 12345  0.0000001 -> 12345 Inexact Rounded
+radx108  add 12345  0.000001  -> 12345 Inexact Rounded
+radx109  add 12345  0.00001   -> 12345 Inexact Rounded
+radx110  add 12345  0.0001    -> 12345 Inexact Rounded
+radx111  add 12345  0.001     -> 12345 Inexact Rounded
+radx112  add 12345  0.01      -> 12345 Inexact Rounded
+radx113  add 12345  0.1       -> 12345 Inexact Rounded
+
+radx115  add 12346  0.49999   -> 12346 Inexact Rounded
+radx116  add 12346  0.5       -> 12346 Inexact Rounded
+radx117  add 12346  0.50001   -> 12346 Inexact Rounded
+
+radx120  add 12345  0.4       -> 12345 Inexact Rounded
+radx121  add 12345  0.49      -> 12345 Inexact Rounded
+radx122  add 12345  0.499     -> 12345 Inexact Rounded
+radx123  add 12345  0.49999   -> 12345 Inexact Rounded
+radx124  add 12345  0.5       -> 12345 Inexact Rounded
+radx125  add 12345  0.50001   -> 12345 Inexact Rounded
+radx126  add 12345  0.5001    -> 12345 Inexact Rounded
+radx127  add 12345  0.501     -> 12345 Inexact Rounded
+radx128  add 12345  0.51      -> 12345 Inexact Rounded
+radx129  add 12345  0.6       -> 12345 Inexact Rounded
+
+rounding: half_down
+
+radx140  add 12345 -0.1       -> 12345 Inexact Rounded
+radx141  add 12345 -0.01      -> 12345 Inexact Rounded
+radx142  add 12345 -0.001     -> 12345 Inexact Rounded
+radx143  add 12345 -0.00001   -> 12345 Inexact Rounded
+radx144  add 12345 -0.000001  -> 12345 Inexact Rounded
+radx145  add 12345 -0.0000001 -> 12345 Inexact Rounded
+radx146  add 12345  0         -> 12345
+radx147  add 12345  0.0000001 -> 12345 Inexact Rounded
+radx148  add 12345  0.000001  -> 12345 Inexact Rounded
+radx149  add 12345  0.00001   -> 12345 Inexact Rounded
+radx150  add 12345  0.0001    -> 12345 Inexact Rounded
+radx151  add 12345  0.001     -> 12345 Inexact Rounded
+radx152  add 12345  0.01      -> 12345 Inexact Rounded
+radx153  add 12345  0.1       -> 12345 Inexact Rounded
+
+radx155  add 12346  0.49999   -> 12346 Inexact Rounded
+radx156  add 12346  0.5       -> 12346 Inexact Rounded
+radx157  add 12346  0.50001   -> 12347 Inexact Rounded
+
+radx160  add 12345  0.4       -> 12345 Inexact Rounded
+radx161  add 12345  0.49      -> 12345 Inexact Rounded
+radx162  add 12345  0.499     -> 12345 Inexact Rounded
+radx163  add 12345  0.49999   -> 12345 Inexact Rounded
+radx164  add 12345  0.5       -> 12345 Inexact Rounded
+radx165  add 12345  0.50001   -> 12346 Inexact Rounded
+radx166  add 12345  0.5001    -> 12346 Inexact Rounded
+radx167  add 12345  0.501     -> 12346 Inexact Rounded
+radx168  add 12345  0.51      -> 12346 Inexact Rounded
+radx169  add 12345  0.6       -> 12346 Inexact Rounded
+
+rounding: half_even
+
+radx170  add 12345 -0.1       -> 12345 Inexact Rounded
+radx171  add 12345 -0.01      -> 12345 Inexact Rounded
+radx172  add 12345 -0.001     -> 12345 Inexact Rounded
+radx173  add 12345 -0.00001   -> 12345 Inexact Rounded
+radx174  add 12345 -0.000001  -> 12345 Inexact Rounded
+radx175  add 12345 -0.0000001 -> 12345 Inexact Rounded
+radx176  add 12345  0         -> 12345
+radx177  add 12345  0.0000001 -> 12345 Inexact Rounded
+radx178  add 12345  0.000001  -> 12345 Inexact Rounded
+radx179  add 12345  0.00001   -> 12345 Inexact Rounded
+radx180  add 12345  0.0001    -> 12345 Inexact Rounded
+radx181  add 12345  0.001     -> 12345 Inexact Rounded
+radx182  add 12345  0.01      -> 12345 Inexact Rounded
+radx183  add 12345  0.1       -> 12345 Inexact Rounded
+
+radx185  add 12346  0.49999   -> 12346 Inexact Rounded
+radx186  add 12346  0.5       -> 12346 Inexact Rounded
+radx187  add 12346  0.50001   -> 12347 Inexact Rounded
+
+radx190  add 12345  0.4       -> 12345 Inexact Rounded
+radx191  add 12345  0.49      -> 12345 Inexact Rounded
+radx192  add 12345  0.499     -> 12345 Inexact Rounded
+radx193  add 12345  0.49999   -> 12345 Inexact Rounded
+radx194  add 12345  0.5       -> 12346 Inexact Rounded
+radx195  add 12345  0.50001   -> 12346 Inexact Rounded
+radx196  add 12345  0.5001    -> 12346 Inexact Rounded
+radx197  add 12345  0.501     -> 12346 Inexact Rounded
+radx198  add 12345  0.51      -> 12346 Inexact Rounded
+radx199  add 12345  0.6       -> 12346 Inexact Rounded
+
+rounding: half_up
+
+radx200  add 12345 -0.1       -> 12345 Inexact Rounded
+radx201  add 12345 -0.01      -> 12345 Inexact Rounded
+radx202  add 12345 -0.001     -> 12345 Inexact Rounded
+radx203  add 12345 -0.00001   -> 12345 Inexact Rounded
+radx204  add 12345 -0.000001  -> 12345 Inexact Rounded
+radx205  add 12345 -0.0000001 -> 12345 Inexact Rounded
+radx206  add 12345  0         -> 12345
+radx207  add 12345  0.0000001 -> 12345 Inexact Rounded
+radx208  add 12345  0.000001  -> 12345 Inexact Rounded
+radx209  add 12345  0.00001   -> 12345 Inexact Rounded
+radx210  add 12345  0.0001    -> 12345 Inexact Rounded
+radx211  add 12345  0.001     -> 12345 Inexact Rounded
+radx212  add 12345  0.01      -> 12345 Inexact Rounded
+radx213  add 12345  0.1       -> 12345 Inexact Rounded
+
+radx215  add 12346  0.49999   -> 12346 Inexact Rounded
+radx216  add 12346  0.5       -> 12347 Inexact Rounded
+radx217  add 12346  0.50001   -> 12347 Inexact Rounded
+
+radx220  add 12345  0.4       -> 12345 Inexact Rounded
+radx221  add 12345  0.49      -> 12345 Inexact Rounded
+radx222  add 12345  0.499     -> 12345 Inexact Rounded
+radx223  add 12345  0.49999   -> 12345 Inexact Rounded
+radx224  add 12345  0.5       -> 12346 Inexact Rounded
+radx225  add 12345  0.50001   -> 12346 Inexact Rounded
+radx226  add 12345  0.5001    -> 12346 Inexact Rounded
+radx227  add 12345  0.501     -> 12346 Inexact Rounded
+radx228  add 12345  0.51      -> 12346 Inexact Rounded
+radx229  add 12345  0.6       -> 12346 Inexact Rounded
+
+rounding: up
+
+radx230  add 12345 -0.1       -> 12345 Inexact Rounded
+radx231  add 12345 -0.01      -> 12345 Inexact Rounded
+radx232  add 12345 -0.001     -> 12345 Inexact Rounded
+radx233  add 12345 -0.00001   -> 12345 Inexact Rounded
+radx234  add 12345 -0.000001  -> 12345 Inexact Rounded
+radx235  add 12345 -0.0000001 -> 12345 Inexact Rounded
+radx236  add 12345  0         -> 12345
+radx237  add 12345  0.0000001 -> 12346 Inexact Rounded
+radx238  add 12345  0.000001  -> 12346 Inexact Rounded
+radx239  add 12345  0.00001   -> 12346 Inexact Rounded
+radx240  add 12345  0.0001    -> 12346 Inexact Rounded
+radx241  add 12345  0.001     -> 12346 Inexact Rounded
+radx242  add 12345  0.01      -> 12346 Inexact Rounded
+radx243  add 12345  0.1       -> 12346 Inexact Rounded
+
+radx245  add 12346  0.49999   -> 12347 Inexact Rounded
+radx246  add 12346  0.5       -> 12347 Inexact Rounded
+radx247  add 12346  0.50001   -> 12347 Inexact Rounded
+
+radx250  add 12345  0.4       -> 12346 Inexact Rounded
+radx251  add 12345  0.49      -> 12346 Inexact Rounded
+radx252  add 12345  0.499     -> 12346 Inexact Rounded
+radx253  add 12345  0.49999   -> 12346 Inexact Rounded
+radx254  add 12345  0.5       -> 12346 Inexact Rounded
+radx255  add 12345  0.50001   -> 12346 Inexact Rounded
+radx256  add 12345  0.5001    -> 12346 Inexact Rounded
+radx257  add 12345  0.501     -> 12346 Inexact Rounded
+radx258  add 12345  0.51      -> 12346 Inexact Rounded
+radx259  add 12345  0.6       -> 12346 Inexact Rounded
+
+rounding: floor
+
+radx300  add 12345 -0.1       -> 12344 Inexact Rounded
+radx301  add 12345 -0.01      -> 12344 Inexact Rounded
+radx302  add 12345 -0.001     -> 12344 Inexact Rounded
+radx303  add 12345 -0.00001   -> 12344 Inexact Rounded
+radx304  add 12345 -0.000001  -> 12344 Inexact Rounded
+radx305  add 12345 -0.0000001 -> 12344 Inexact Rounded
+radx306  add 12345  0         -> 12345
+radx307  add 12345  0.0000001 -> 12345 Inexact Rounded
+radx308  add 12345  0.000001  -> 12345 Inexact Rounded
+radx309  add 12345  0.00001   -> 12345 Inexact Rounded
+radx310  add 12345  0.0001    -> 12345 Inexact Rounded
+radx311  add 12345  0.001     -> 12345 Inexact Rounded
+radx312  add 12345  0.01      -> 12345 Inexact Rounded
+radx313  add 12345  0.1       -> 12345 Inexact Rounded
+
+radx315  add 12346  0.49999   -> 12346 Inexact Rounded
+radx316  add 12346  0.5       -> 12346 Inexact Rounded
+radx317  add 12346  0.50001   -> 12346 Inexact Rounded
+
+radx320  add 12345  0.4       -> 12345 Inexact Rounded
+radx321  add 12345  0.49      -> 12345 Inexact Rounded
+radx322  add 12345  0.499     -> 12345 Inexact Rounded
+radx323  add 12345  0.49999   -> 12345 Inexact Rounded
+radx324  add 12345  0.5       -> 12345 Inexact Rounded
+radx325  add 12345  0.50001   -> 12345 Inexact Rounded
+radx326  add 12345  0.5001    -> 12345 Inexact Rounded
+radx327  add 12345  0.501     -> 12345 Inexact Rounded
+radx328  add 12345  0.51      -> 12345 Inexact Rounded
+radx329  add 12345  0.6       -> 12345 Inexact Rounded
+
+rounding: ceiling
+
+radx330  add 12345 -0.1       -> 12345 Inexact Rounded
+radx331  add 12345 -0.01      -> 12345 Inexact Rounded
+radx332  add 12345 -0.001     -> 12345 Inexact Rounded
+radx333  add 12345 -0.00001   -> 12345 Inexact Rounded
+radx334  add 12345 -0.000001  -> 12345 Inexact Rounded
+radx335  add 12345 -0.0000001 -> 12345 Inexact Rounded
+radx336  add 12345  0         -> 12345
+radx337  add 12345  0.0000001 -> 12346 Inexact Rounded
+radx338  add 12345  0.000001  -> 12346 Inexact Rounded
+radx339  add 12345  0.00001   -> 12346 Inexact Rounded
+radx340  add 12345  0.0001    -> 12346 Inexact Rounded
+radx341  add 12345  0.001     -> 12346 Inexact Rounded
+radx342  add 12345  0.01      -> 12346 Inexact Rounded
+radx343  add 12345  0.1       -> 12346 Inexact Rounded
+
+radx345  add 12346  0.49999   -> 12347 Inexact Rounded
+radx346  add 12346  0.5       -> 12347 Inexact Rounded
+radx347  add 12346  0.50001   -> 12347 Inexact Rounded
+
+radx350  add 12345  0.4       -> 12346 Inexact Rounded
+radx351  add 12345  0.49      -> 12346 Inexact Rounded
+radx352  add 12345  0.499     -> 12346 Inexact Rounded
+radx353  add 12345  0.49999   -> 12346 Inexact Rounded
+radx354  add 12345  0.5       -> 12346 Inexact Rounded
+radx355  add 12345  0.50001   -> 12346 Inexact Rounded
+radx356  add 12345  0.5001    -> 12346 Inexact Rounded
+radx357  add 12345  0.501     -> 12346 Inexact Rounded
+radx358  add 12345  0.51      -> 12346 Inexact Rounded
+radx359  add 12345  0.6       -> 12346 Inexact Rounded
+
+-- negatives...
+
+rounding: down
+
+rsux100  add -12345 -0.1       -> -12345 Inexact Rounded
+rsux101  add -12345 -0.01      -> -12345 Inexact Rounded
+rsux102  add -12345 -0.001     -> -12345 Inexact Rounded
+rsux103  add -12345 -0.00001   -> -12345 Inexact Rounded
+rsux104  add -12345 -0.000001  -> -12345 Inexact Rounded
+rsux105  add -12345 -0.0000001 -> -12345 Inexact Rounded
+rsux106  add -12345  0         -> -12345
+rsux107  add -12345  0.0000001 -> -12344 Inexact Rounded
+rsux108  add -12345  0.000001  -> -12344 Inexact Rounded
+rsux109  add -12345  0.00001   -> -12344 Inexact Rounded
+rsux110  add -12345  0.0001    -> -12344 Inexact Rounded
+rsux111  add -12345  0.001     -> -12344 Inexact Rounded
+rsux112  add -12345  0.01      -> -12344 Inexact Rounded
+rsux113  add -12345  0.1       -> -12344 Inexact Rounded
+
+rsux115  add -12346  0.49999   -> -12345 Inexact Rounded
+rsux116  add -12346  0.5       -> -12345 Inexact Rounded
+rsux117  add -12346  0.50001   -> -12345 Inexact Rounded
+
+rsux120  add -12345  0.4       -> -12344 Inexact Rounded
+rsux121  add -12345  0.49      -> -12344 Inexact Rounded
+rsux122  add -12345  0.499     -> -12344 Inexact Rounded
+rsux123  add -12345  0.49999   -> -12344 Inexact Rounded
+rsux124  add -12345  0.5       -> -12344 Inexact Rounded
+rsux125  add -12345  0.50001   -> -12344 Inexact Rounded
+rsux126  add -12345  0.5001    -> -12344 Inexact Rounded
+rsux127  add -12345  0.501     -> -12344 Inexact Rounded
+rsux128  add -12345  0.51      -> -12344 Inexact Rounded
+rsux129  add -12345  0.6       -> -12344 Inexact Rounded
+
+rounding: half_down
+
+rsux140  add -12345 -0.1       -> -12345 Inexact Rounded
+rsux141  add -12345 -0.01      -> -12345 Inexact Rounded
+rsux142  add -12345 -0.001     -> -12345 Inexact Rounded
+rsux143  add -12345 -0.00001   -> -12345 Inexact Rounded
+rsux144  add -12345 -0.000001  -> -12345 Inexact Rounded
+rsux145  add -12345 -0.0000001 -> -12345 Inexact Rounded
+rsux146  add -12345  0         -> -12345
+rsux147  add -12345  0.0000001 -> -12345 Inexact Rounded
+rsux148  add -12345  0.000001  -> -12345 Inexact Rounded
+rsux149  add -12345  0.00001   -> -12345 Inexact Rounded
+rsux150  add -12345  0.0001    -> -12345 Inexact Rounded
+rsux151  add -12345  0.001     -> -12345 Inexact Rounded
+rsux152  add -12345  0.01      -> -12345 Inexact Rounded
+rsux153  add -12345  0.1       -> -12345 Inexact Rounded
+
+rsux155  add -12346  0.49999   -> -12346 Inexact Rounded
+rsux156  add -12346  0.5       -> -12345 Inexact Rounded
+rsux157  add -12346  0.50001   -> -12345 Inexact Rounded
+
+rsux160  add -12345  0.4       -> -12345 Inexact Rounded
+rsux161  add -12345  0.49      -> -12345 Inexact Rounded
+rsux162  add -12345  0.499     -> -12345 Inexact Rounded
+rsux163  add -12345  0.49999   -> -12345 Inexact Rounded
+rsux164  add -12345  0.5       -> -12344 Inexact Rounded
+rsux165  add -12345  0.50001   -> -12344 Inexact Rounded
+rsux166  add -12345  0.5001    -> -12344 Inexact Rounded
+rsux167  add -12345  0.501     -> -12344 Inexact Rounded
+rsux168  add -12345  0.51      -> -12344 Inexact Rounded
+rsux169  add -12345  0.6       -> -12344 Inexact Rounded
+
+rounding: half_even
+
+rsux170  add -12345 -0.1       -> -12345 Inexact Rounded
+rsux171  add -12345 -0.01      -> -12345 Inexact Rounded
+rsux172  add -12345 -0.001     -> -12345 Inexact Rounded
+rsux173  add -12345 -0.00001   -> -12345 Inexact Rounded
+rsux174  add -12345 -0.000001  -> -12345 Inexact Rounded
+rsux175  add -12345 -0.0000001 -> -12345 Inexact Rounded
+rsux176  add -12345  0         -> -12345
+rsux177  add -12345  0.0000001 -> -12345 Inexact Rounded
+rsux178  add -12345  0.000001  -> -12345 Inexact Rounded
+rsux179  add -12345  0.00001   -> -12345 Inexact Rounded
+rsux180  add -12345  0.0001    -> -12345 Inexact Rounded
+rsux181  add -12345  0.001     -> -12345 Inexact Rounded
+rsux182  add -12345  0.01      -> -12345 Inexact Rounded
+rsux183  add -12345  0.1       -> -12345 Inexact Rounded
+
+rsux185  add -12346  0.49999   -> -12346 Inexact Rounded
+rsux186  add -12346  0.5       -> -12346 Inexact Rounded
+rsux187  add -12346  0.50001   -> -12345 Inexact Rounded
+
+rsux190  add -12345  0.4       -> -12345 Inexact Rounded
+rsux191  add -12345  0.49      -> -12345 Inexact Rounded
+rsux192  add -12345  0.499     -> -12345 Inexact Rounded
+rsux193  add -12345  0.49999   -> -12345 Inexact Rounded
+rsux194  add -12345  0.5       -> -12344 Inexact Rounded
+rsux195  add -12345  0.50001   -> -12344 Inexact Rounded
+rsux196  add -12345  0.5001    -> -12344 Inexact Rounded
+rsux197  add -12345  0.501     -> -12344 Inexact Rounded
+rsux198  add -12345  0.51      -> -12344 Inexact Rounded
+rsux199  add -12345  0.6       -> -12344 Inexact Rounded
+
+rounding: half_up
+
+rsux200  add -12345 -0.1       -> -12345 Inexact Rounded
+rsux201  add -12345 -0.01      -> -12345 Inexact Rounded
+rsux202  add -12345 -0.001     -> -12345 Inexact Rounded
+rsux203  add -12345 -0.00001   -> -12345 Inexact Rounded
+rsux204  add -12345 -0.000001  -> -12345 Inexact Rounded
+rsux205  add -12345 -0.0000001 -> -12345 Inexact Rounded
+rsux206  add -12345  0         -> -12345
+rsux207  add -12345  0.0000001 -> -12345 Inexact Rounded
+rsux208  add -12345  0.000001  -> -12345 Inexact Rounded
+rsux209  add -12345  0.00001   -> -12345 Inexact Rounded
+rsux210  add -12345  0.0001    -> -12345 Inexact Rounded
+rsux211  add -12345  0.001     -> -12345 Inexact Rounded
+rsux212  add -12345  0.01      -> -12345 Inexact Rounded
+rsux213  add -12345  0.1       -> -12345 Inexact Rounded
+
+rsux215  add -12346  0.49999   -> -12346 Inexact Rounded
+rsux216  add -12346  0.5       -> -12346 Inexact Rounded
+rsux217  add -12346  0.50001   -> -12345 Inexact Rounded
+
+rsux220  add -12345  0.4       -> -12345 Inexact Rounded
+rsux221  add -12345  0.49      -> -12345 Inexact Rounded
+rsux222  add -12345  0.499     -> -12345 Inexact Rounded
+rsux223  add -12345  0.49999   -> -12345 Inexact Rounded
+rsux224  add -12345  0.5       -> -12345 Inexact Rounded
+rsux225  add -12345  0.50001   -> -12344 Inexact Rounded
+rsux226  add -12345  0.5001    -> -12344 Inexact Rounded
+rsux227  add -12345  0.501     -> -12344 Inexact Rounded
+rsux228  add -12345  0.51      -> -12344 Inexact Rounded
+rsux229  add -12345  0.6       -> -12344 Inexact Rounded
+
+rounding: up
+
+rsux230  add -12345 -0.1       -> -12346 Inexact Rounded
+rsux231  add -12345 -0.01      -> -12346 Inexact Rounded
+rsux232  add -12345 -0.001     -> -12346 Inexact Rounded
+rsux233  add -12345 -0.00001   -> -12346 Inexact Rounded
+rsux234  add -12345 -0.000001  -> -12346 Inexact Rounded
+rsux235  add -12345 -0.0000001 -> -12346 Inexact Rounded
+rsux236  add -12345  0         -> -12345
+rsux237  add -12345  0.0000001 -> -12345 Inexact Rounded
+rsux238  add -12345  0.000001  -> -12345 Inexact Rounded
+rsux239  add -12345  0.00001   -> -12345 Inexact Rounded
+rsux240  add -12345  0.0001    -> -12345 Inexact Rounded
+rsux241  add -12345  0.001     -> -12345 Inexact Rounded
+rsux242  add -12345  0.01      -> -12345 Inexact Rounded
+rsux243  add -12345  0.1       -> -12345 Inexact Rounded
+
+rsux245  add -12346  0.49999   -> -12346 Inexact Rounded
+rsux246  add -12346  0.5       -> -12346 Inexact Rounded
+rsux247  add -12346  0.50001   -> -12346 Inexact Rounded
+
+rsux250  add -12345  0.4       -> -12345 Inexact Rounded
+rsux251  add -12345  0.49      -> -12345 Inexact Rounded
+rsux252  add -12345  0.499     -> -12345 Inexact Rounded
+rsux253  add -12345  0.49999   -> -12345 Inexact Rounded
+rsux254  add -12345  0.5       -> -12345 Inexact Rounded
+rsux255  add -12345  0.50001   -> -12345 Inexact Rounded
+rsux256  add -12345  0.5001    -> -12345 Inexact Rounded
+rsux257  add -12345  0.501     -> -12345 Inexact Rounded
+rsux258  add -12345  0.51      -> -12345 Inexact Rounded
+rsux259  add -12345  0.6       -> -12345 Inexact Rounded
+
+rounding: floor
+
+rsux300  add -12345 -0.1       -> -12346 Inexact Rounded
+rsux301  add -12345 -0.01      -> -12346 Inexact Rounded
+rsux302  add -12345 -0.001     -> -12346 Inexact Rounded
+rsux303  add -12345 -0.00001   -> -12346 Inexact Rounded
+rsux304  add -12345 -0.000001  -> -12346 Inexact Rounded
+rsux305  add -12345 -0.0000001 -> -12346 Inexact Rounded
+rsux306  add -12345  0         -> -12345
+rsux307  add -12345  0.0000001 -> -12345 Inexact Rounded
+rsux308  add -12345  0.000001  -> -12345 Inexact Rounded
+rsux309  add -12345  0.00001   -> -12345 Inexact Rounded
+rsux310  add -12345  0.0001    -> -12345 Inexact Rounded
+rsux311  add -12345  0.001     -> -12345 Inexact Rounded
+rsux312  add -12345  0.01      -> -12345 Inexact Rounded
+rsux313  add -12345  0.1       -> -12345 Inexact Rounded
+
+rsux315  add -12346  0.49999   -> -12346 Inexact Rounded
+rsux316  add -12346  0.5       -> -12346 Inexact Rounded
+rsux317  add -12346  0.50001   -> -12346 Inexact Rounded
+
+rsux320  add -12345  0.4       -> -12345 Inexact Rounded
+rsux321  add -12345  0.49      -> -12345 Inexact Rounded
+rsux322  add -12345  0.499     -> -12345 Inexact Rounded
+rsux323  add -12345  0.49999   -> -12345 Inexact Rounded
+rsux324  add -12345  0.5       -> -12345 Inexact Rounded
+rsux325  add -12345  0.50001   -> -12345 Inexact Rounded
+rsux326  add -12345  0.5001    -> -12345 Inexact Rounded
+rsux327  add -12345  0.501     -> -12345 Inexact Rounded
+rsux328  add -12345  0.51      -> -12345 Inexact Rounded
+rsux329  add -12345  0.6       -> -12345 Inexact Rounded
+
+rounding: ceiling
+
+rsux330  add -12345 -0.1       -> -12345 Inexact Rounded
+rsux331  add -12345 -0.01      -> -12345 Inexact Rounded
+rsux332  add -12345 -0.001     -> -12345 Inexact Rounded
+rsux333  add -12345 -0.00001   -> -12345 Inexact Rounded
+rsux334  add -12345 -0.000001  -> -12345 Inexact Rounded
+rsux335  add -12345 -0.0000001 -> -12345 Inexact Rounded
+rsux336  add -12345  0         -> -12345
+rsux337  add -12345  0.0000001 -> -12344 Inexact Rounded
+rsux338  add -12345  0.000001  -> -12344 Inexact Rounded
+rsux339  add -12345  0.00001   -> -12344 Inexact Rounded
+rsux340  add -12345  0.0001    -> -12344 Inexact Rounded
+rsux341  add -12345  0.001     -> -12344 Inexact Rounded
+rsux342  add -12345  0.01      -> -12344 Inexact Rounded
+rsux343  add -12345  0.1       -> -12344 Inexact Rounded
+
+rsux345  add -12346  0.49999   -> -12345 Inexact Rounded
+rsux346  add -12346  0.5       -> -12345 Inexact Rounded
+rsux347  add -12346  0.50001   -> -12345 Inexact Rounded
+
+rsux350  add -12345  0.4       -> -12344 Inexact Rounded
+rsux351  add -12345  0.49      -> -12344 Inexact Rounded
+rsux352  add -12345  0.499     -> -12344 Inexact Rounded
+rsux353  add -12345  0.49999   -> -12344 Inexact Rounded
+rsux354  add -12345  0.5       -> -12344 Inexact Rounded
+rsux355  add -12345  0.50001   -> -12344 Inexact Rounded
+rsux356  add -12345  0.5001    -> -12344 Inexact Rounded
+rsux357  add -12345  0.501     -> -12344 Inexact Rounded
+rsux358  add -12345  0.51      -> -12344 Inexact Rounded
+rsux359  add -12345  0.6       -> -12344 Inexact Rounded
+
+-- Check cancellation subtractions
+-- (The IEEE 854 'curious rule' in $6.3)
+
+rounding: down
+rzex001  add  0    0    ->  0
+rzex002  add  0   -0    ->  0
+rzex003  add -0    0    ->  0
+rzex004  add -0   -0    -> -0
+rzex005  add  1   -1    ->  0
+rzex006  add -1    1    ->  0
+rzex007  add  1.5 -1.5  ->  0.0
+rzex008  add -1.5  1.5  ->  0.0
+rzex009  add  2   -2    ->  0
+rzex010  add -2    2    ->  0
+
+rounding: up
+rzex011  add  0    0    ->  0
+rzex012  add  0   -0    ->  0
+rzex013  add -0    0    ->  0
+rzex014  add -0   -0    -> -0
+rzex015  add  1   -1    ->  0
+rzex016  add -1    1    ->  0
+rzex017  add  1.5 -1.5  ->  0.0
+rzex018  add -1.5  1.5  ->  0.0
+rzex019  add  2   -2    ->  0
+rzex020  add -2    2    ->  0
+
+rounding: half_up
+rzex021  add  0    0    ->  0
+rzex022  add  0   -0    ->  0
+rzex023  add -0    0    ->  0
+rzex024  add -0   -0    -> -0
+rzex025  add  1   -1    ->  0
+rzex026  add -1    1    ->  0
+rzex027  add  1.5 -1.5  ->  0.0
+rzex028  add -1.5  1.5  ->  0.0
+rzex029  add  2   -2    ->  0
+rzex030  add -2    2    ->  0
+
+rounding: half_down
+rzex031  add  0    0    ->  0
+rzex032  add  0   -0    ->  0
+rzex033  add -0    0    ->  0
+rzex034  add -0   -0    -> -0
+rzex035  add  1   -1    ->  0
+rzex036  add -1    1    ->  0
+rzex037  add  1.5 -1.5  ->  0.0
+rzex038  add -1.5  1.5  ->  0.0
+rzex039  add  2   -2    ->  0
+rzex040  add -2    2    ->  0
+
+rounding: half_even
+rzex041  add  0    0    ->  0
+rzex042  add  0   -0    ->  0
+rzex043  add -0    0    ->  0
+rzex044  add -0   -0    -> -0
+rzex045  add  1   -1    ->  0
+rzex046  add -1    1    ->  0
+rzex047  add  1.5 -1.5  ->  0.0
+rzex048  add -1.5  1.5  ->  0.0
+rzex049  add  2   -2    ->  0
+rzex050  add -2    2    ->  0
+
+rounding: floor
+rzex051  add  0    0    ->  0
+rzex052  add  0   -0    -> -0    -- here are two 'curious'
+rzex053  add -0    0    -> -0    --
+rzex054  add -0   -0    -> -0
+rzex055  add  1   -1    -> -0    -- here are the rest
+rzex056  add -1    1    -> -0    -- ..
+rzex057  add  1.5 -1.5  -> -0.0  -- ..
+rzex058  add -1.5  1.5  -> -0.0  -- ..
+rzex059  add  2   -2    -> -0    -- ..
+rzex060  add -2    2    -> -0    -- ..
+
+rounding: ceiling
+rzex061  add  0    0    ->  0
+rzex062  add  0   -0    ->  0
+rzex063  add -0    0    ->  0
+rzex064  add -0   -0    -> -0
+rzex065  add  1   -1    ->  0
+rzex066  add -1    1    ->  0
+rzex067  add  1.5 -1.5  ->  0.0
+rzex068  add -1.5  1.5  ->  0.0
+rzex069  add  2   -2    ->  0
+rzex070  add -2    2    ->  0
+
+
+-- Division operators -------------------------------------------------
+
+rounding: down
+rdvx101  divide 12345  1         ->  12345
+rdvx102  divide 12345  1.0001    ->  12343 Inexact Rounded
+rdvx103  divide 12345  1.001     ->  12332 Inexact Rounded
+rdvx104  divide 12345  1.01      ->  12222 Inexact Rounded
+rdvx105  divide 12345  1.1       ->  11222 Inexact Rounded
+rdvx106  divide 12355  4         ->   3088.7 Inexact Rounded
+rdvx107  divide 12345  4         ->   3086.2 Inexact Rounded
+rdvx108  divide 12355  4.0001    ->   3088.6 Inexact Rounded
+rdvx109  divide 12345  4.0001    ->   3086.1 Inexact Rounded
+rdvx110  divide 12345  4.9       ->   2519.3 Inexact Rounded
+rdvx111  divide 12345  4.99      ->   2473.9 Inexact Rounded
+rdvx112  divide 12345  4.999     ->   2469.4 Inexact Rounded
+rdvx113  divide 12345  4.9999    ->   2469.0 Inexact Rounded
+rdvx114  divide 12345  5         ->   2469
+rdvx115  divide 12345  5.0001    ->  2468.9 Inexact Rounded
+rdvx116  divide 12345  5.001     ->  2468.5 Inexact Rounded
+rdvx117  divide 12345  5.01      ->  2464.0 Inexact Rounded
+rdvx118  divide 12345  5.1       ->  2420.5 Inexact Rounded
+
+rounding: half_down
+rdvx201  divide 12345  1         ->  12345
+rdvx202  divide 12345  1.0001    ->  12344 Inexact Rounded
+rdvx203  divide 12345  1.001     ->  12333 Inexact Rounded
+rdvx204  divide 12345  1.01      ->  12223 Inexact Rounded
+rdvx205  divide 12345  1.1       ->  11223 Inexact Rounded
+rdvx206  divide 12355  4         ->   3088.7 Inexact Rounded
+rdvx207  divide 12345  4         ->   3086.2 Inexact Rounded
+rdvx208  divide 12355  4.0001    ->   3088.7 Inexact Rounded
+rdvx209  divide 12345  4.0001    ->   3086.2 Inexact Rounded
+rdvx210  divide 12345  4.9       ->   2519.4 Inexact Rounded
+rdvx211  divide 12345  4.99      ->   2473.9 Inexact Rounded
+rdvx212  divide 12345  4.999     ->   2469.5 Inexact Rounded
+rdvx213  divide 12345  4.9999    ->   2469.0 Inexact Rounded
+rdvx214  divide 12345  5         ->   2469
+rdvx215  divide 12345  5.0001    ->  2469.0 Inexact Rounded
+rdvx216  divide 12345  5.001     ->  2468.5 Inexact Rounded
+rdvx217  divide 12345  5.01      ->  2464.1 Inexact Rounded
+rdvx218  divide 12345  5.1       ->  2420.6 Inexact Rounded
+
+rounding: half_even
+rdvx301  divide 12345  1         ->  12345
+rdvx302  divide 12345  1.0001    ->  12344 Inexact Rounded
+rdvx303  divide 12345  1.001     ->  12333 Inexact Rounded
+rdvx304  divide 12345  1.01      ->  12223 Inexact Rounded
+rdvx305  divide 12345  1.1       ->  11223 Inexact Rounded
+rdvx306  divide 12355  4         ->   3088.8 Inexact Rounded
+rdvx307  divide 12345  4         ->   3086.2 Inexact Rounded
+rdvx308  divide 12355  4.0001    ->   3088.7 Inexact Rounded
+rdvx309  divide 12345  4.0001    ->   3086.2 Inexact Rounded
+rdvx310  divide 12345  4.9       ->   2519.4 Inexact Rounded
+rdvx311  divide 12345  4.99      ->   2473.9 Inexact Rounded
+rdvx312  divide 12345  4.999     ->   2469.5 Inexact Rounded
+rdvx313  divide 12345  4.9999    ->   2469.0 Inexact Rounded
+rdvx314  divide 12345  5         ->   2469
+rdvx315  divide 12345  5.0001    ->  2469.0 Inexact Rounded
+rdvx316  divide 12345  5.001     ->  2468.5 Inexact Rounded
+rdvx317  divide 12345  5.01      ->  2464.1 Inexact Rounded
+rdvx318  divide 12345  5.1       ->  2420.6 Inexact Rounded
+
+rounding: half_up
+rdvx401  divide 12345  1         ->  12345
+rdvx402  divide 12345  1.0001    ->  12344 Inexact Rounded
+rdvx403  divide 12345  1.001     ->  12333 Inexact Rounded
+rdvx404  divide 12345  1.01      ->  12223 Inexact Rounded
+rdvx405  divide 12345  1.1       ->  11223 Inexact Rounded
+rdvx406  divide 12355  4         ->   3088.8 Inexact Rounded
+rdvx407  divide 12345  4         ->   3086.3 Inexact Rounded
+rdvx408  divide 12355  4.0001    ->   3088.7 Inexact Rounded
+rdvx409  divide 12345  4.0001    ->   3086.2 Inexact Rounded
+rdvx410  divide 12345  4.9       ->   2519.4 Inexact Rounded
+rdvx411  divide 12345  4.99      ->   2473.9 Inexact Rounded
+rdvx412  divide 12345  4.999     ->   2469.5 Inexact Rounded
+rdvx413  divide 12345  4.9999    ->   2469.0 Inexact Rounded
+rdvx414  divide 12345  5         ->   2469
+rdvx415  divide 12345  5.0001    ->  2469.0 Inexact Rounded
+rdvx416  divide 12345  5.001     ->  2468.5 Inexact Rounded
+rdvx417  divide 12345  5.01      ->  2464.1 Inexact Rounded
+rdvx418  divide 12345  5.1       ->  2420.6 Inexact Rounded
+
+rounding: up
+rdvx501  divide 12345  1         ->  12345
+rdvx502  divide 12345  1.0001    ->  12344 Inexact Rounded
+rdvx503  divide 12345  1.001     ->  12333 Inexact Rounded
+rdvx504  divide 12345  1.01      ->  12223 Inexact Rounded
+rdvx505  divide 12345  1.1       ->  11223 Inexact Rounded
+rdvx506  divide 12355  4         ->   3088.8 Inexact Rounded
+rdvx507  divide 12345  4         ->   3086.3 Inexact Rounded
+rdvx508  divide 12355  4.0001    ->   3088.7 Inexact Rounded
+rdvx509  divide 12345  4.0001    ->   3086.2 Inexact Rounded
+rdvx510  divide 12345  4.9       ->   2519.4 Inexact Rounded
+rdvx511  divide 12345  4.99      ->   2474.0 Inexact Rounded
+rdvx512  divide 12345  4.999     ->   2469.5 Inexact Rounded
+rdvx513  divide 12345  4.9999    ->   2469.1 Inexact Rounded
+rdvx514  divide 12345  5         ->   2469
+rdvx515  divide 12345  5.0001    ->  2469.0 Inexact Rounded
+rdvx516  divide 12345  5.001     ->  2468.6 Inexact Rounded
+rdvx517  divide 12345  5.01      ->  2464.1 Inexact Rounded
+rdvx518  divide 12345  5.1       ->  2420.6 Inexact Rounded
+
+rounding: floor
+rdvx601  divide 12345  1         ->  12345
+rdvx602  divide 12345  1.0001    ->  12343 Inexact Rounded
+rdvx603  divide 12345  1.001     ->  12332 Inexact Rounded
+rdvx604  divide 12345  1.01      ->  12222 Inexact Rounded
+rdvx605  divide 12345  1.1       ->  11222 Inexact Rounded
+rdvx606  divide 12355  4         ->   3088.7 Inexact Rounded
+rdvx607  divide 12345  4         ->   3086.2 Inexact Rounded
+rdvx608  divide 12355  4.0001    ->   3088.6 Inexact Rounded
+rdvx609  divide 12345  4.0001    ->   3086.1 Inexact Rounded
+rdvx610  divide 12345  4.9       ->   2519.3 Inexact Rounded
+rdvx611  divide 12345  4.99      ->   2473.9 Inexact Rounded
+rdvx612  divide 12345  4.999     ->   2469.4 Inexact Rounded
+rdvx613  divide 12345  4.9999    ->   2469.0 Inexact Rounded
+rdvx614  divide 12345  5         ->   2469
+rdvx615  divide 12345  5.0001    ->  2468.9 Inexact Rounded
+rdvx616  divide 12345  5.001     ->  2468.5 Inexact Rounded
+rdvx617  divide 12345  5.01      ->  2464.0 Inexact Rounded
+rdvx618  divide 12345  5.1       ->  2420.5 Inexact Rounded
+
+rounding: ceiling
+rdvx701  divide 12345  1         ->  12345
+rdvx702  divide 12345  1.0001    ->  12344 Inexact Rounded
+rdvx703  divide 12345  1.001     ->  12333 Inexact Rounded
+rdvx704  divide 12345  1.01      ->  12223 Inexact Rounded
+rdvx705  divide 12345  1.1       ->  11223 Inexact Rounded
+rdvx706  divide 12355  4         ->   3088.8 Inexact Rounded
+rdvx707  divide 12345  4         ->   3086.3 Inexact Rounded
+rdvx708  divide 12355  4.0001    ->   3088.7 Inexact Rounded
+rdvx709  divide 12345  4.0001    ->   3086.2 Inexact Rounded
+rdvx710  divide 12345  4.9       ->   2519.4 Inexact Rounded
+rdvx711  divide 12345  4.99      ->   2474.0 Inexact Rounded
+rdvx712  divide 12345  4.999     ->   2469.5 Inexact Rounded
+rdvx713  divide 12345  4.9999    ->   2469.1 Inexact Rounded
+rdvx714  divide 12345  5         ->   2469
+rdvx715  divide 12345  5.0001    ->  2469.0 Inexact Rounded
+rdvx716  divide 12345  5.001     ->  2468.6 Inexact Rounded
+rdvx717  divide 12345  5.01      ->  2464.1 Inexact Rounded
+rdvx718  divide 12345  5.1       ->  2420.6 Inexact Rounded
+
+-- [divideInteger and remainder unaffected]
+
+-- Multiplication operator --------------------------------------------
+
+rounding: down
+rmux101  multiply 12345  1         ->  12345
+rmux102  multiply 12345  1.0001    ->  12346 Inexact Rounded
+rmux103  multiply 12345  1.001     ->  12357 Inexact Rounded
+rmux104  multiply 12345  1.01      ->  12468 Inexact Rounded
+rmux105  multiply 12345  1.1       ->  13579 Inexact Rounded
+rmux106  multiply 12345  4         ->  49380
+rmux107  multiply 12345  4.0001    ->  49381 Inexact Rounded
+rmux108  multiply 12345  4.9       ->  60490 Inexact Rounded
+rmux109  multiply 12345  4.99      ->  61601 Inexact Rounded
+rmux110  multiply 12345  4.999     ->  61712 Inexact Rounded
+rmux111  multiply 12345  4.9999    ->  61723 Inexact Rounded
+rmux112  multiply 12345  5         ->  61725
+rmux113  multiply 12345  5.0001    ->  61726 Inexact Rounded
+rmux114  multiply 12345  5.001     ->  61737 Inexact Rounded
+rmux115  multiply 12345  5.01      ->  61848 Inexact Rounded
+rmux116  multiply 12345  12        ->  1.4814E+5 Rounded
+rmux117  multiply 12345  13        ->  1.6048E+5 Inexact Rounded
+rmux118  multiply 12355  12        ->  1.4826E+5 Rounded
+rmux119  multiply 12355  13        ->  1.6061E+5 Inexact Rounded
+
+rounding: half_down
+rmux201  multiply 12345  1         ->  12345
+rmux202  multiply 12345  1.0001    ->  12346 Inexact Rounded
+rmux203  multiply 12345  1.001     ->  12357 Inexact Rounded
+rmux204  multiply 12345  1.01      ->  12468 Inexact Rounded
+rmux205  multiply 12345  1.1       ->  13579 Inexact Rounded
+rmux206  multiply 12345  4         ->  49380
+rmux207  multiply 12345  4.0001    ->  49381 Inexact Rounded
+rmux208  multiply 12345  4.9       ->  60490 Inexact Rounded
+rmux209  multiply 12345  4.99      ->  61602 Inexact Rounded
+rmux210  multiply 12345  4.999     ->  61713 Inexact Rounded
+rmux211  multiply 12345  4.9999    ->  61724 Inexact Rounded
+rmux212  multiply 12345  5         ->  61725
+rmux213  multiply 12345  5.0001    ->  61726 Inexact Rounded
+rmux214  multiply 12345  5.001     ->  61737 Inexact Rounded
+rmux215  multiply 12345  5.01      ->  61848 Inexact Rounded
+rmux216  multiply 12345  12        ->  1.4814E+5 Rounded
+rmux217  multiply 12345  13        ->  1.6048E+5 Inexact Rounded
+rmux218  multiply 12355  12        ->  1.4826E+5 Rounded
+rmux219  multiply 12355  13        ->  1.6061E+5 Inexact Rounded
+
+rounding: half_even
+rmux301  multiply 12345  1         ->  12345
+rmux302  multiply 12345  1.0001    ->  12346 Inexact Rounded
+rmux303  multiply 12345  1.001     ->  12357 Inexact Rounded
+rmux304  multiply 12345  1.01      ->  12468 Inexact Rounded
+rmux305  multiply 12345  1.1       ->  13580 Inexact Rounded
+rmux306  multiply 12345  4         ->  49380
+rmux307  multiply 12345  4.0001    ->  49381 Inexact Rounded
+rmux308  multiply 12345  4.9       ->  60490 Inexact Rounded
+rmux309  multiply 12345  4.99      ->  61602 Inexact Rounded
+rmux310  multiply 12345  4.999     ->  61713 Inexact Rounded
+rmux311  multiply 12345  4.9999    ->  61724 Inexact Rounded
+rmux312  multiply 12345  5         ->  61725
+rmux313  multiply 12345  5.0001    ->  61726 Inexact Rounded
+rmux314  multiply 12345  5.001     ->  61737 Inexact Rounded
+rmux315  multiply 12345  5.01      ->  61848 Inexact Rounded
+rmux316  multiply 12345  12        ->  1.4814E+5 Rounded
+rmux317  multiply 12345  13        ->  1.6048E+5 Inexact Rounded
+rmux318  multiply 12355  12        ->  1.4826E+5 Rounded
+rmux319  multiply 12355  13        ->  1.6062E+5 Inexact Rounded
+
+rounding: half_up
+rmux401  multiply 12345  1         ->  12345
+rmux402  multiply 12345  1.0001    ->  12346 Inexact Rounded
+rmux403  multiply 12345  1.001     ->  12357 Inexact Rounded
+rmux404  multiply 12345  1.01      ->  12468 Inexact Rounded
+rmux405  multiply 12345  1.1       ->  13580 Inexact Rounded
+rmux406  multiply 12345  4         ->  49380
+rmux407  multiply 12345  4.0001    ->  49381 Inexact Rounded
+rmux408  multiply 12345  4.9       ->  60491 Inexact Rounded
+rmux409  multiply 12345  4.99      ->  61602 Inexact Rounded
+rmux410  multiply 12345  4.999     ->  61713 Inexact Rounded
+rmux411  multiply 12345  4.9999    ->  61724 Inexact Rounded
+rmux412  multiply 12345  5         ->  61725
+rmux413  multiply 12345  5.0001    ->  61726 Inexact Rounded
+rmux414  multiply 12345  5.001     ->  61737 Inexact Rounded
+rmux415  multiply 12345  5.01      ->  61848 Inexact Rounded
+rmux416  multiply 12345  12        ->  1.4814E+5 Rounded
+rmux417  multiply 12345  13        ->  1.6049E+5 Inexact Rounded
+rmux418  multiply 12355  12        ->  1.4826E+5 Rounded
+rmux419  multiply 12355  13        ->  1.6062E+5 Inexact Rounded
+
+rounding: up
+rmux501  multiply 12345  1         ->  12345
+rmux502  multiply 12345  1.0001    ->  12347 Inexact Rounded
+rmux503  multiply 12345  1.001     ->  12358 Inexact Rounded
+rmux504  multiply 12345  1.01      ->  12469 Inexact Rounded
+rmux505  multiply 12345  1.1       ->  13580 Inexact Rounded
+rmux506  multiply 12345  4         ->  49380
+rmux507  multiply 12345  4.0001    ->  49382 Inexact Rounded
+rmux508  multiply 12345  4.9       ->  60491 Inexact Rounded
+rmux509  multiply 12345  4.99      ->  61602 Inexact Rounded
+rmux510  multiply 12345  4.999     ->  61713 Inexact Rounded
+rmux511  multiply 12345  4.9999    ->  61724 Inexact Rounded
+rmux512  multiply 12345  5         ->  61725
+rmux513  multiply 12345  5.0001    ->  61727 Inexact Rounded
+rmux514  multiply 12345  5.001     ->  61738 Inexact Rounded
+rmux515  multiply 12345  5.01      ->  61849 Inexact Rounded
+rmux516  multiply 12345  12        ->  1.4814E+5 Rounded
+rmux517  multiply 12345  13        ->  1.6049E+5 Inexact Rounded
+rmux518  multiply 12355  12        ->  1.4826E+5 Rounded
+rmux519  multiply 12355  13        ->  1.6062E+5 Inexact Rounded
+-- [rmux516 & rmux518] can surprise
+
+rounding: floor
+rmux601  multiply 12345  1         ->  12345
+rmux602  multiply 12345  1.0001    ->  12346 Inexact Rounded
+rmux603  multiply 12345  1.001     ->  12357 Inexact Rounded
+rmux604  multiply 12345  1.01      ->  12468 Inexact Rounded
+rmux605  multiply 12345  1.1       ->  13579 Inexact Rounded
+rmux606  multiply 12345  4         ->  49380
+rmux607  multiply 12345  4.0001    ->  49381 Inexact Rounded
+rmux608  multiply 12345  4.9       ->  60490 Inexact Rounded
+rmux609  multiply 12345  4.99      ->  61601 Inexact Rounded
+rmux610  multiply 12345  4.999     ->  61712 Inexact Rounded
+rmux611  multiply 12345  4.9999    ->  61723 Inexact Rounded
+rmux612  multiply 12345  5         ->  61725
+rmux613  multiply 12345  5.0001    ->  61726 Inexact Rounded
+rmux614  multiply 12345  5.001     ->  61737 Inexact Rounded
+rmux615  multiply 12345  5.01      ->  61848 Inexact Rounded
+rmux616  multiply 12345  12        ->  1.4814E+5 Rounded
+rmux617  multiply 12345  13        ->  1.6048E+5 Inexact Rounded
+rmux618  multiply 12355  12        ->  1.4826E+5 Rounded
+rmux619  multiply 12355  13        ->  1.6061E+5 Inexact Rounded
+
+rounding: ceiling
+rmux701  multiply 12345  1         ->  12345
+rmux702  multiply 12345  1.0001    ->  12347 Inexact Rounded
+rmux703  multiply 12345  1.001     ->  12358 Inexact Rounded
+rmux704  multiply 12345  1.01      ->  12469 Inexact Rounded
+rmux705  multiply 12345  1.1       ->  13580 Inexact Rounded
+rmux706  multiply 12345  4         ->  49380
+rmux707  multiply 12345  4.0001    ->  49382 Inexact Rounded
+rmux708  multiply 12345  4.9       ->  60491 Inexact Rounded
+rmux709  multiply 12345  4.99      ->  61602 Inexact Rounded
+rmux710  multiply 12345  4.999     ->  61713 Inexact Rounded
+rmux711  multiply 12345  4.9999    ->  61724 Inexact Rounded
+rmux712  multiply 12345  5         ->  61725
+rmux713  multiply 12345  5.0001    ->  61727 Inexact Rounded
+rmux714  multiply 12345  5.001     ->  61738 Inexact Rounded
+rmux715  multiply 12345  5.01      ->  61849 Inexact Rounded
+rmux716  multiply 12345  12        ->  1.4814E+5 Rounded
+rmux717  multiply 12345  13        ->  1.6049E+5 Inexact Rounded
+rmux718  multiply 12355  12        ->  1.4826E+5 Rounded
+rmux719  multiply 12355  13        ->  1.6062E+5 Inexact Rounded
+
+-- Power operator -----------------------------------------------------
+
+rounding: down
+rpox101  power 12345  -5        ->  3.4877E-21 Inexact Rounded
+rpox102  power 12345  -4        ->  4.3056E-17 Inexact Rounded
+rpox103  power 12345  -3        ->  5.3152E-13 Inexact Rounded
+rpox104  power 12345  -2        ->  6.5617E-9 Inexact Rounded
+rpox105  power 12345  -1        ->  0.000081004 Inexact Rounded
+rpox106  power 12345  0         ->  1
+rpox107  power 12345  1         ->  12345
+rpox108  power 12345  2         ->  1.5239E+8 Inexact Rounded
+rpox109  power 12345  3         ->  1.8813E+12 Inexact Rounded
+rpox110  power 12345  4         ->  2.3225E+16 Inexact Rounded
+rpox111  power 12345  5         ->  2.8671E+20 Inexact Rounded
+rpox112  power   415  2         ->  1.7222E+5 Inexact Rounded
+rpox113  power    75  3         ->  4.2187E+5 Inexact Rounded
+
+rounding: half_down
+rpox201  power 12345  -5        ->  3.4877E-21 Inexact Rounded
+rpox202  power 12345  -4        ->  4.3056E-17 Inexact Rounded
+rpox203  power 12345  -3        ->  5.3153E-13 Inexact Rounded
+rpox204  power 12345  -2        ->  6.5617E-9 Inexact Rounded
+rpox205  power 12345  -1        ->  0.000081004 Inexact Rounded
+rpox206  power 12345  0         ->  1
+rpox207  power 12345  1         ->  12345
+rpox208  power 12345  2         ->  1.5240E+8 Inexact Rounded
+rpox209  power 12345  3         ->  1.8814E+12 Inexact Rounded
+rpox210  power 12345  4         ->  2.3225E+16 Inexact Rounded
+rpox211  power 12345  5         ->  2.8672E+20 Inexact Rounded
+rpox212  power   415  2         ->  1.7222E+5 Inexact Rounded
+rpox213  power    75  3         ->  4.2187E+5 Inexact Rounded
+
+rounding: half_even
+rpox301  power 12345  -5        ->  3.4877E-21 Inexact Rounded
+rpox302  power 12345  -4        ->  4.3056E-17 Inexact Rounded
+rpox303  power 12345  -3        ->  5.3153E-13 Inexact Rounded
+rpox304  power 12345  -2        ->  6.5617E-9 Inexact Rounded
+rpox305  power 12345  -1        ->  0.000081004 Inexact Rounded
+rpox306  power 12345  0         ->  1
+rpox307  power 12345  1         ->  12345
+rpox308  power 12345  2         ->  1.5240E+8 Inexact Rounded
+rpox309  power 12345  3         ->  1.8814E+12 Inexact Rounded
+rpox310  power 12345  4         ->  2.3225E+16 Inexact Rounded
+rpox311  power 12345  5         ->  2.8672E+20 Inexact Rounded
+rpox312  power   415  2         ->  1.7222E+5 Inexact Rounded
+rpox313  power    75  3         ->  4.2188E+5 Inexact Rounded
+
+rounding: half_up
+rpox401  power 12345  -5        ->  3.4877E-21 Inexact Rounded
+rpox402  power 12345  -4        ->  4.3056E-17 Inexact Rounded
+rpox403  power 12345  -3        ->  5.3153E-13 Inexact Rounded
+rpox404  power 12345  -2        ->  6.5617E-9 Inexact Rounded
+rpox405  power 12345  -1        ->  0.000081004 Inexact Rounded
+rpox406  power 12345  0         ->  1
+rpox407  power 12345  1         ->  12345
+rpox408  power 12345  2         ->  1.5240E+8 Inexact Rounded
+rpox409  power 12345  3         ->  1.8814E+12 Inexact Rounded
+rpox410  power 12345  4         ->  2.3225E+16 Inexact Rounded
+rpox411  power 12345  5         ->  2.8672E+20 Inexact Rounded
+rpox412  power   415  2         ->  1.7223E+5 Inexact Rounded
+rpox413  power    75  3         ->  4.2188E+5 Inexact Rounded
+
+rounding: up
+rpox501  power 12345  -5        ->  3.4878E-21 Inexact Rounded
+rpox502  power 12345  -4        ->  4.3057E-17 Inexact Rounded
+rpox503  power 12345  -3        ->  5.3153E-13 Inexact Rounded
+rpox504  power 12345  -2        ->  6.5618E-9 Inexact Rounded
+rpox505  power 12345  -1        ->  0.000081005 Inexact Rounded
+rpox506  power 12345  0         ->  1
+rpox507  power 12345  1         ->  12345
+rpox508  power 12345  2         ->  1.5240E+8 Inexact Rounded
+rpox509  power 12345  3         ->  1.8814E+12 Inexact Rounded
+rpox510  power 12345  4         ->  2.3226E+16 Inexact Rounded
+rpox511  power 12345  5         ->  2.8672E+20 Inexact Rounded
+rpox512  power   415  2         ->  1.7223E+5 Inexact Rounded
+rpox513  power    75  3         ->  4.2188E+5 Inexact Rounded
+
+rounding: floor
+rpox601  power 12345  -5        ->  3.4877E-21 Inexact Rounded
+rpox602  power 12345  -4        ->  4.3056E-17 Inexact Rounded
+rpox603  power 12345  -3        ->  5.3152E-13 Inexact Rounded
+rpox604  power 12345  -2        ->  6.5617E-9 Inexact Rounded
+rpox605  power 12345  -1        ->  0.000081004 Inexact Rounded
+rpox606  power 12345  0         ->  1
+rpox607  power 12345  1         ->  12345
+rpox608  power 12345  2         ->  1.5239E+8 Inexact Rounded
+rpox609  power 12345  3         ->  1.8813E+12 Inexact Rounded
+rpox610  power 12345  4         ->  2.3225E+16 Inexact Rounded
+rpox611  power 12345  5         ->  2.8671E+20 Inexact Rounded
+rpox612  power   415  2         ->  1.7222E+5 Inexact Rounded
+rpox613  power    75  3         ->  4.2187E+5 Inexact Rounded
+
+rounding: ceiling
+rpox701  power 12345  -5        ->  3.4878E-21 Inexact Rounded
+rpox702  power 12345  -4        ->  4.3057E-17 Inexact Rounded
+rpox703  power 12345  -3        ->  5.3153E-13 Inexact Rounded
+rpox704  power 12345  -2        ->  6.5618E-9 Inexact Rounded
+rpox705  power 12345  -1        ->  0.000081005 Inexact Rounded
+rpox706  power 12345  0         ->  1
+rpox707  power 12345  1         ->  12345
+rpox708  power 12345  2         ->  1.5240E+8 Inexact Rounded
+rpox709  power 12345  3         ->  1.8814E+12 Inexact Rounded
+rpox710  power 12345  4         ->  2.3226E+16 Inexact Rounded
+rpox711  power 12345  5         ->  2.8672E+20 Inexact Rounded
+rpox712  power   415  2         ->  1.7223E+5 Inexact Rounded
+rpox713  power    75  3         ->  4.2188E+5 Inexact Rounded
+
+-- Underflow Subnormal and overflow values vary with rounding mode and sign
+maxexponent: 999999999
+minexponent: -999999999
+rounding: down
+rovx100  multiply   10    9E+999999999 ->  9.9999E+999999999 Overflow Inexact Rounded
+rovx101  multiply  -10    9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded
+rovx102  divide     1E-9  9E+999999999 ->  0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+rovx104  divide    -1E-9  9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+
+rounding: up
+rovx110  multiply   10    9E+999999999 ->  Infinity Overflow Inexact Rounded
+rovx111  multiply  -10    9E+999999999 -> -Infinity Overflow Inexact Rounded
+rovx112  divide     1E-9  9E+999999999 ->  1E-1000000003 Underflow Subnormal Inexact Rounded
+rovx114  divide    -1E-9  9E+999999999 -> -1E-1000000003 Underflow Subnormal Inexact Rounded
+
+rounding: ceiling
+rovx120  multiply   10    9E+999999999 ->  Infinity Overflow Inexact Rounded
+rovx121  multiply  -10    9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded
+rovx122  divide     1E-9  9E+999999999 ->  1E-1000000003 Underflow Subnormal Inexact Rounded
+rovx124  divide    -1E-9  9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+
+rounding: floor
+rovx130  multiply   10    9E+999999999 ->  9.9999E+999999999 Overflow Inexact Rounded
+rovx131  multiply  -10    9E+999999999 -> -Infinity Overflow Inexact Rounded
+rovx132  divide     1E-9  9E+999999999 ->  0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+rovx134  divide    -1E-9  9E+999999999 -> -1E-1000000003 Underflow Subnormal Inexact Rounded
+
+rounding: half_up
+rovx140  multiply   10    9E+999999999 ->  Infinity Overflow Inexact Rounded
+rovx141  multiply  -10    9E+999999999 -> -Infinity Overflow Inexact Rounded
+rovx142  divide     1E-9  9E+999999999 ->  0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+rovx144  divide    -1E-9  9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+
+rounding: half_even
+rovx150  multiply   10    9E+999999999 ->  Infinity Overflow Inexact Rounded
+rovx151  multiply  -10    9E+999999999 -> -Infinity Overflow Inexact Rounded
+rovx152  divide     1E-9  9E+999999999 ->  0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+rovx154  divide    -1E-9  9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+
+rounding: half_down
+rovx160  multiply   10    9E+999999999 ->  Infinity Overflow Inexact Rounded
+rovx161  multiply  -10    9E+999999999 -> -Infinity Overflow Inexact Rounded
+rovx162  divide     1E-9  9E+999999999 ->  0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+rovx164  divide    -1E-9  9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
+
+-- check maximum finite value over a range of precisions
+rounding: down
+precision: 1
+rovx200  multiply   10    9E+999999999 ->  9E+999999999 Overflow Inexact Rounded
+rovx201  multiply  -10    9E+999999999 -> -9E+999999999 Overflow Inexact Rounded
+precision: 2
+rovx210  multiply   10    9E+999999999 ->  9.9E+999999999 Overflow Inexact Rounded
+rovx211  multiply  -10    9E+999999999 -> -9.9E+999999999 Overflow Inexact Rounded
+precision: 3
+rovx220  multiply   10    9E+999999999 ->  9.99E+999999999 Overflow Inexact Rounded
+rovx221  multiply  -10    9E+999999999 -> -9.99E+999999999 Overflow Inexact Rounded
+precision: 4
+rovx230  multiply   10    9E+999999999 ->  9.999E+999999999 Overflow Inexact Rounded
+rovx231  multiply  -10    9E+999999999 -> -9.999E+999999999 Overflow Inexact Rounded
+precision: 5
+rovx240  multiply   10    9E+999999999 ->  9.9999E+999999999 Overflow Inexact Rounded
+rovx241  multiply  -10    9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded
+precision: 6
+rovx250  multiply   10    9E+999999999 ->  9.99999E+999999999 Overflow Inexact Rounded
+rovx251  multiply  -10    9E+999999999 -> -9.99999E+999999999 Overflow Inexact Rounded
+precision: 7
+rovx260  multiply   10    9E+999999999 ->  9.999999E+999999999 Overflow Inexact Rounded
+rovx261  multiply  -10    9E+999999999 -> -9.999999E+999999999 Overflow Inexact Rounded
+precision: 8
+rovx270  multiply   10    9E+999999999 ->  9.9999999E+999999999 Overflow Inexact Rounded
+rovx271  multiply  -10    9E+999999999 -> -9.9999999E+999999999 Overflow Inexact Rounded
+precision: 9
+rovx280  multiply   10    9E+999999999 ->  9.99999999E+999999999 Overflow Inexact Rounded
+rovx281  multiply  -10    9E+999999999 -> -9.99999999E+999999999 Overflow Inexact Rounded
+precision: 10
+rovx290  multiply   10    9E+999999999 ->  9.999999999E+999999999 Overflow Inexact Rounded
+rovx291  multiply  -10    9E+999999999 -> -9.999999999E+999999999 Overflow Inexact Rounded
+
+-- reprise rounding mode effect (using multiplies so precision directive used)
+precision: 9
+maxexponent: 999999999
+rounding: half_up
+rmex400 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
+rmex401 multiply  9.999E+999999999 10 ->  Infinity Overflow Inexact Rounded
+rounding: half_down
+rmex402 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
+rmex403 multiply  9.999E+999999999 10 ->  Infinity Overflow Inexact Rounded
+rounding: half_even
+rmex404 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
+rmex405 multiply  9.999E+999999999 10 ->  Infinity Overflow Inexact Rounded
+rounding: floor
+rmex406 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
+rmex407 multiply  9.999E+999999999 10 ->  9.99999999E+999999999 Overflow Inexact Rounded
+rounding: ceiling
+rmex408 multiply -9.999E+999999999 10 -> -9.99999999E+999999999 Overflow Inexact Rounded
+rmex409 multiply  9.999E+999999999 10 ->  Infinity Overflow Inexact Rounded
+rounding: up
+rmex410 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
+rmex411 multiply  9.999E+999999999 10 ->  Infinity Overflow Inexact Rounded
+rounding: down
+rmex412 multiply -9.999E+999999999 10 -> -9.99999999E+999999999 Overflow Inexact Rounded
+rmex413 multiply  9.999E+999999999 10 ->  9.99999999E+999999999 Overflow Inexact Rounded
+
+----- Round-for-reround -----
+rounding:    05up
+precision:   5           -- for easier visual inspection
+maxExponent: 999
+minexponent: -999
+
+-- basic rounding; really is just 0 and 5 up
+r05up001 add 12340  0.001     -> 12341 Inexact Rounded
+r05up002 add 12341  0.001     -> 12341 Inexact Rounded
+r05up003 add 12342  0.001     -> 12342 Inexact Rounded
+r05up004 add 12343  0.001     -> 12343 Inexact Rounded
+r05up005 add 12344  0.001     -> 12344 Inexact Rounded
+r05up006 add 12345  0.001     -> 12346 Inexact Rounded
+r05up007 add 12346  0.001     -> 12346 Inexact Rounded
+r05up008 add 12347  0.001     -> 12347 Inexact Rounded
+r05up009 add 12348  0.001     -> 12348 Inexact Rounded
+r05up010 add 12349  0.001     -> 12349 Inexact Rounded
+
+r05up011 add 12340  0.000     -> 12340 Rounded
+r05up012 add 12341  0.000     -> 12341 Rounded
+r05up013 add 12342  0.000     -> 12342 Rounded
+r05up014 add 12343  0.000     -> 12343 Rounded
+r05up015 add 12344  0.000     -> 12344 Rounded
+r05up016 add 12345  0.000     -> 12345 Rounded
+r05up017 add 12346  0.000     -> 12346 Rounded
+r05up018 add 12347  0.000     -> 12347 Rounded
+r05up019 add 12348  0.000     -> 12348 Rounded
+r05up020 add 12349  0.000     -> 12349 Rounded
+
+r05up021 add 12340  0.901     -> 12341 Inexact Rounded
+r05up022 add 12341  0.901     -> 12341 Inexact Rounded
+r05up023 add 12342  0.901     -> 12342 Inexact Rounded
+r05up024 add 12343  0.901     -> 12343 Inexact Rounded
+r05up025 add 12344  0.901     -> 12344 Inexact Rounded
+r05up026 add 12345  0.901     -> 12346 Inexact Rounded
+r05up027 add 12346  0.901     -> 12346 Inexact Rounded
+r05up028 add 12347  0.901     -> 12347 Inexact Rounded
+r05up029 add 12348  0.901     -> 12348 Inexact Rounded
+r05up030 add 12349  0.901     -> 12349 Inexact Rounded
+
+r05up031 add -12340  -0.001     -> -12341 Inexact Rounded
+r05up032 add -12341  -0.001     -> -12341 Inexact Rounded
+r05up033 add -12342  -0.001     -> -12342 Inexact Rounded
+r05up034 add -12343  -0.001     -> -12343 Inexact Rounded
+r05up035 add -12344  -0.001     -> -12344 Inexact Rounded
+r05up036 add -12345  -0.001     -> -12346 Inexact Rounded
+r05up037 add -12346  -0.001     -> -12346 Inexact Rounded
+r05up038 add -12347  -0.001     -> -12347 Inexact Rounded
+r05up039 add -12348  -0.001     -> -12348 Inexact Rounded
+r05up040 add -12349  -0.001     -> -12349 Inexact Rounded
+
+r05up041 add -12340   0.001     -> -12339 Inexact Rounded
+r05up042 add -12341   0.001     -> -12341 Inexact Rounded
+r05up043 add -12342   0.001     -> -12341 Inexact Rounded
+r05up044 add -12343   0.001     -> -12342 Inexact Rounded
+r05up045 add -12344   0.001     -> -12343 Inexact Rounded
+r05up046 add -12345   0.001     -> -12344 Inexact Rounded
+r05up047 add -12346   0.001     -> -12346 Inexact Rounded
+r05up048 add -12347   0.001     -> -12346 Inexact Rounded
+r05up049 add -12348   0.001     -> -12347 Inexact Rounded
+r05up050 add -12349   0.001     -> -12348 Inexact Rounded
+
+-- Addition operators -------------------------------------------------
+-- [The first few of these check negative residue possibilities; these
+-- cases may be implemented as a negative residue in fastpaths]
+
+r0adx100  add 12345 -0.1       -> 12344 Inexact Rounded
+r0adx101  add 12345 -0.01      -> 12344 Inexact Rounded
+r0adx102  add 12345 -0.001     -> 12344 Inexact Rounded
+r0adx103  add 12345 -0.00001   -> 12344 Inexact Rounded
+r0adx104  add 12345 -0.000001  -> 12344 Inexact Rounded
+r0adx105  add 12345 -0.0000001 -> 12344 Inexact Rounded
+r0adx106  add 12345  0         -> 12345
+r0adx107  add 12345  0.0000001 -> 12346 Inexact Rounded
+r0adx108  add 12345  0.000001  -> 12346 Inexact Rounded
+r0adx109  add 12345  0.00001   -> 12346 Inexact Rounded
+r0adx110  add 12345  0.0001    -> 12346 Inexact Rounded
+r0adx111  add 12345  0.001     -> 12346 Inexact Rounded
+r0adx112  add 12345  0.01      -> 12346 Inexact Rounded
+r0adx113  add 12345  0.1       -> 12346 Inexact Rounded
+
+r0adx115  add 12346  0.49999   -> 12346 Inexact Rounded
+r0adx116  add 12346  0.5       -> 12346 Inexact Rounded
+r0adx117  add 12346  0.50001   -> 12346 Inexact Rounded
+
+r0adx120  add 12345  0.4       -> 12346 Inexact Rounded
+r0adx121  add 12345  0.49      -> 12346 Inexact Rounded
+r0adx122  add 12345  0.499     -> 12346 Inexact Rounded
+r0adx123  add 12345  0.49999   -> 12346 Inexact Rounded
+r0adx124  add 12345  0.5       -> 12346 Inexact Rounded
+r0adx125  add 12345  0.50001   -> 12346 Inexact Rounded
+r0adx126  add 12345  0.5001    -> 12346 Inexact Rounded
+r0adx127  add 12345  0.501     -> 12346 Inexact Rounded
+r0adx128  add 12345  0.51      -> 12346 Inexact Rounded
+r0adx129  add 12345  0.6       -> 12346 Inexact Rounded
+
+-- negatives...
+
+r0sux100  add -12345 -0.1       -> -12346 Inexact Rounded
+r0sux101  add -12345 -0.01      -> -12346 Inexact Rounded
+r0sux102  add -12345 -0.001     -> -12346 Inexact Rounded
+r0sux103  add -12345 -0.00001   -> -12346 Inexact Rounded
+r0sux104  add -12345 -0.000001  -> -12346 Inexact Rounded
+r0sux105  add -12345 -0.0000001 -> -12346 Inexact Rounded
+r0sux106  add -12345  0         -> -12345
+r0sux107  add -12345  0.0000001 -> -12344 Inexact Rounded
+r0sux108  add -12345  0.000001  -> -12344 Inexact Rounded
+r0sux109  add -12345  0.00001   -> -12344 Inexact Rounded
+r0sux110  add -12345  0.0001    -> -12344 Inexact Rounded
+r0sux111  add -12345  0.001     -> -12344 Inexact Rounded
+r0sux112  add -12345  0.01      -> -12344 Inexact Rounded
+r0sux113  add -12345  0.1       -> -12344 Inexact Rounded
+
+r0sux115  add -12346  0.49999   -> -12346 Inexact Rounded
+r0sux116  add -12346  0.5       -> -12346 Inexact Rounded
+r0sux117  add -12346  0.50001   -> -12346 Inexact Rounded
+
+r0sux120  add -12345  0.4       -> -12344 Inexact Rounded
+r0sux121  add -12345  0.49      -> -12344 Inexact Rounded
+r0sux122  add -12345  0.499     -> -12344 Inexact Rounded
+r0sux123  add -12345  0.49999   -> -12344 Inexact Rounded
+r0sux124  add -12345  0.5       -> -12344 Inexact Rounded
+r0sux125  add -12345  0.50001   -> -12344 Inexact Rounded
+r0sux126  add -12345  0.5001    -> -12344 Inexact Rounded
+r0sux127  add -12345  0.501     -> -12344 Inexact Rounded
+r0sux128  add -12345  0.51      -> -12344 Inexact Rounded
+r0sux129  add -12345  0.6       -> -12344 Inexact Rounded
+
+-- Check cancellation subtractions
+-- (The IEEE 854 'curious rule' in $6.3)
+
+r0zex001  add  0    0    ->  0
+r0zex002  add  0   -0    ->  0
+r0zex003  add -0    0    ->  0
+r0zex004  add -0   -0    -> -0
+r0zex005  add  1   -1    ->  0
+r0zex006  add -1    1    ->  0
+r0zex007  add  1.5 -1.5  ->  0.0
+r0zex008  add -1.5  1.5  ->  0.0
+r0zex009  add  2   -2    ->  0
+r0zex010  add -2    2    ->  0
+
+
+-- Division operators -------------------------------------------------
+
+r0dvx101  divide 12345  1         ->  12345
+r0dvx102  divide 12345  1.0001    ->  12343 Inexact Rounded
+r0dvx103  divide 12345  1.001     ->  12332 Inexact Rounded
+r0dvx104  divide 12345  1.01      ->  12222 Inexact Rounded
+r0dvx105  divide 12345  1.1       ->  11222 Inexact Rounded
+r0dvx106  divide 12355  4         ->   3088.7 Inexact Rounded
+r0dvx107  divide 12345  4         ->   3086.2 Inexact Rounded
+r0dvx108  divide 12355  4.0001    ->   3088.6 Inexact Rounded
+r0dvx109  divide 12345  4.0001    ->   3086.1 Inexact Rounded
+r0dvx110  divide 12345  4.9       ->   2519.3 Inexact Rounded
+r0dvx111  divide 12345  4.99      ->   2473.9 Inexact Rounded
+r0dvx112  divide 12345  4.999     ->   2469.4 Inexact Rounded
+r0dvx113  divide 12345  4.9999    ->   2469.1 Inexact Rounded
+r0dvx114  divide 12345  5         ->   2469
+r0dvx115  divide 12345  5.0001    ->  2468.9 Inexact Rounded
+r0dvx116  divide 12345  5.001     ->  2468.6 Inexact Rounded
+r0dvx117  divide 12345  5.01      ->  2464.1 Inexact Rounded
+r0dvx118  divide 12345  5.1       ->  2420.6 Inexact Rounded
+
+-- [divideInteger and remainder unaffected]
+
+-- Multiplication operator --------------------------------------------
+
+r0mux101  multiply 12345  1         ->  12345
+r0mux102  multiply 12345  1.0001    ->  12346 Inexact Rounded
+r0mux103  multiply 12345  1.001     ->  12357 Inexact Rounded
+r0mux104  multiply 12345  1.01      ->  12468 Inexact Rounded
+r0mux105  multiply 12345  1.1       ->  13579 Inexact Rounded
+r0mux106  multiply 12345  4         ->  49380
+r0mux107  multiply 12345  4.0001    ->  49381 Inexact Rounded
+r0mux108  multiply 12345  4.9       ->  60491 Inexact Rounded
+r0mux109  multiply 12345  4.99      ->  61601 Inexact Rounded
+r0mux110  multiply 12345  4.999     ->  61712 Inexact Rounded
+r0mux111  multiply 12345  4.9999    ->  61723 Inexact Rounded
+r0mux112  multiply 12345  5         ->  61725
+r0mux113  multiply 12345  5.0001    ->  61726 Inexact Rounded
+r0mux114  multiply 12345  5.001     ->  61737 Inexact Rounded
+r0mux115  multiply 12345  5.01      ->  61848 Inexact Rounded
+r0mux116  multiply 12345  12        ->  1.4814E+5 Rounded
+r0mux117  multiply 12345  13        ->  1.6048E+5 Inexact Rounded
+r0mux118  multiply 12355  12        ->  1.4826E+5 Rounded
+r0mux119  multiply 12355  13        ->  1.6061E+5 Inexact Rounded
+
+
+-- Power operator -----------------------------------------------------
+
+r0pox101  power 12345  -5        ->  3.4877E-21 Inexact Rounded
+r0pox102  power 12345  -4        ->  4.3056E-17 Inexact Rounded
+r0pox103  power 12345  -3        ->  5.3152E-13 Inexact Rounded
+r0pox104  power 12345  -2        ->  6.5617E-9 Inexact Rounded
+r0pox105  power 12345  -1        ->  0.000081004 Inexact Rounded
+r0pox106  power 12345  0         ->  1
+r0pox107  power 12345  1         ->  12345
+r0pox108  power 12345  2         ->  1.5239E+8 Inexact Rounded
+r0pox109  power 12345  3         ->  1.8813E+12 Inexact Rounded
+r0pox110  power 12345  4         ->  2.3226E+16 Inexact Rounded
+r0pox111  power 12345  5         ->  2.8671E+20 Inexact Rounded
+r0pox112  power   415  2         ->  1.7222E+5 Inexact Rounded
+r0pox113  power    75  3         ->  4.2187E+5 Inexact Rounded
+
+
+-- Underflow Subnormal and overflow values vary with rounding mode and sign
+maxexponent: 999999999
+minexponent: -999999999
+-- [round down gives Nmax on first two and .0E... on the next two]
+r0ovx100  multiply   10    9E+999999999 ->  9.9999E+999999999 Overflow Inexact Rounded
+r0ovx101  multiply  -10    9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded
+r0ovx102  divide     1E-9  9E+999999999 ->  1E-1000000003 Underflow Subnormal Inexact Rounded
+r0ovx104  divide    -1E-9  9E+999999999 -> -1E-1000000003 Underflow Subnormal Inexact Rounded
+
+-- reprise rounding mode effect (using multiplies so precision directive used)
+precision: 9
+maxexponent: 999999999
+r0mex412 multiply -9.999E+999999999 10 -> -9.99999999E+999999999 Overflow Inexact Rounded
+r0mex413 multiply  9.999E+999999999 10 ->  9.99999999E+999999999 Overflow Inexact Rounded
+