summaryrefslogtreecommitdiff
path: root/lib/python2.7/test/decimaltestdata/rounding.decTest
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python2.7/test/decimaltestdata/rounding.decTest')
-rw-r--r--lib/python2.7/test/decimaltestdata/rounding.decTest1303
1 files changed, 1303 insertions, 0 deletions
diff --git a/lib/python2.7/test/decimaltestdata/rounding.decTest b/lib/python2.7/test/decimaltestdata/rounding.decTest
new file mode 100644
index 0000000..95f1326
--- /dev/null
+++ b/lib/python2.7/test/decimaltestdata/rounding.decTest
@@ -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.59
+
+-- 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
+