Commit 8bc2ce4a authored by Raymond Hettinger's avatar Raymond Hettinger

Add two new files and update remaining tests from the latest update of the

test suite in version 2.39 of dectest.zip.
parent 53fab1ca
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- This set of tests primarily tests the existence of the operator.
-- Additon, subtraction, rounding, and more overflows are tested
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
precision: 9
rounding: half_up
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- This file tests base conversions from string to a decimal number
-- and back to a string (in either Scientific or Engineering form)
......@@ -73,21 +73,22 @@ basx038 toSci '0.123456789012345' -> '0.123456789012345'
-- String [many more examples are implicitly tested elsewhere]
-- strings without E cannot generate E in result
basx101 toSci "12" -> '12'
basx102 toSci "-76" -> '-76'
basx103 toSci "12.76" -> '12.76'
basx104 toSci "+12.76" -> '12.76'
basx105 toSci "012.76" -> '12.76'
basx106 toSci "+0.003" -> '0.003'
basx107 toSci "17." -> '17'
basx108 toSci ".5" -> '0.5'
basx109 toSci "044" -> '44'
basx110 toSci "0044" -> '44'
basx111 toSci "0.0005" -> '0.0005'
basx112 toSci "00.00005" -> '0.00005'
basx113 toSci "0.000005" -> '0.000005'
basx114 toSci "0.0000005" -> '5E-7'
basx115 toSci "0.00000005" -> '5E-8'
basx100 toSci "12" -> '12'
basx101 toSci "-76" -> '-76'
basx102 toSci "12.76" -> '12.76'
basx103 toSci "+12.76" -> '12.76'
basx104 toSci "012.76" -> '12.76'
basx105 toSci "+0.003" -> '0.003'
basx106 toSci "17." -> '17'
basx107 toSci ".5" -> '0.5'
basx108 toSci "044" -> '44'
basx109 toSci "0044" -> '44'
basx110 toSci "0.0005" -> '0.0005'
basx111 toSci "00.00005" -> '0.00005'
basx112 toSci "0.000005" -> '0.000005'
basx113 toSci "0.0000050" -> '0.0000050'
basx114 toSci "0.0000005" -> '5E-7'
basx115 toSci "0.00000005" -> '5E-8'
basx116 toSci "12345678.543210" -> '12345678.543210'
basx117 toSci "2345678.543210" -> '2345678.543210'
basx118 toSci "345678.543210" -> '345678.543210'
......@@ -99,6 +100,11 @@ basx123 toSci "+00345678.5432" -> '345678.5432'
basx124 toSci "-345678.5432" -> '-345678.5432'
basx125 toSci "-0345678.5432" -> '-345678.5432'
basx126 toSci "-00345678.5432" -> '-345678.5432'
-- examples
basx127 toSci "5E-6" -> '0.000005'
basx128 toSci "50E-7" -> '0.0000050'
basx129 toSci "5E-7" -> '5E-7'
-- [No exotics as no Unicode]
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- This set of tests uses the same limits as the 8-byte concrete
-- representation, but applies clamping without using format-specific
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- Note that we cannot assume add/subtract tests cover paths adequately,
-- here, because the code might be quite different (comparison cannot
......
This diff is collapsed.
This diff is collapsed.
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.28
version: 2.39
-- This set of tests is for the eight-byte concrete representation.
-- Its characteristics are:
......@@ -234,6 +234,7 @@ dece451 apply -0E+500 -> #c3fc000000000000 Clamped
dece452 apply #c3fc000000000000 -> -0E+369
-- Specials
dece500 apply Infinity -> #7800000000000000
dece501 apply #7878787878787878 -> #7800000000000000
dece502 apply #7800000000000000 -> Infinity
dece503 apply #7979797979797979 -> #7800000000000000
......@@ -242,15 +243,20 @@ dece505 apply #7a7a7a7a7a7a7a7a -> #7800000000000000
dece506 apply #7a00000000000000 -> Infinity
dece507 apply #7b7b7b7b7b7b7b7b -> #7800000000000000
dece508 apply #7b00000000000000 -> Infinity
dece509 apply #7c7c7c7c7c7c7c7c -> #7dffffffffffffff
dece510 apply #7c00000000000000 -> NaN
dece511 apply #7d7d7d7d7d7d7d7d -> #7dffffffffffffff
dece512 apply #7d00000000000000 -> NaN
dece513 apply #7e7e7e7e7e7e7e7e -> #7fffffffffffffff
dece514 apply #7e00000000000000 -> sNaN
dece515 apply #7f7f7f7f7f7f7f7f -> #7fffffffffffffff
dece516 apply #7f00000000000000 -> sNaN
dece509 apply NaN -> #7c00000000000000
dece510 apply #7c7c7c7c7c7c7c7c -> #7c007c7c7c7c7c7c
dece511 apply #7c00000000000000 -> NaN
dece512 apply #7d7d7d7d7d7d7d7d -> #7c017d7d7d7d7d7d
dece513 apply #7d00000000000000 -> NaN
dece514 apply #7e7e7e7e7e7e7e7e -> #7e007e7e7e7e7c7e
dece515 apply #7e00000000000000 -> sNaN
dece516 apply #7f7f7f7f7f7f7f7f -> #7e007f7f7f7f7c7f
dece517 apply #7f00000000000000 -> sNaN
dece518 apply #7fffffffffffffff -> sNaN999999999999999
dece519 apply #7fffffffffffffff -> #7e00ff3fcff3fcff
dece520 apply -Infinity -> #f800000000000000
dece521 apply #f878787878787878 -> #f800000000000000
dece522 apply #f800000000000000 -> -Infinity
dece523 apply #f979797979797979 -> #f800000000000000
......@@ -259,14 +265,31 @@ dece525 apply #fa7a7a7a7a7a7a7a -> #f800000000000000
dece526 apply #fa00000000000000 -> -Infinity
dece527 apply #fb7b7b7b7b7b7b7b -> #f800000000000000
dece528 apply #fb00000000000000 -> -Infinity
dece529 apply #fc7c7c7c7c7c7c7c -> #7dffffffffffffff
dece530 apply #fc00000000000000 -> NaN
dece531 apply #fd7d7d7d7d7d7d7d -> #7dffffffffffffff
dece532 apply #fd00000000000000 -> NaN
dece533 apply #fe7e7e7e7e7e7e7e -> #7fffffffffffffff
dece534 apply #fe00000000000000 -> sNaN
dece535 apply #ff7f7f7f7f7f7f7f -> #7fffffffffffffff
dece536 apply #ff00000000000000 -> sNaN
dece529 apply -NaN -> #fc00000000000000
dece530 apply #fc7c7c7c7c7c7c7c -> #fc007c7c7c7c7c7c
dece531 apply #fc00000000000000 -> -NaN
dece532 apply #fd7d7d7d7d7d7d7d -> #fc017d7d7d7d7d7d
dece533 apply #fd00000000000000 -> -NaN
dece534 apply #fe7e7e7e7e7e7e7e -> #fe007e7e7e7e7c7e
dece535 apply #fe00000000000000 -> -sNaN
dece536 apply #ff7f7f7f7f7f7f7f -> #fe007f7f7f7f7c7f
dece537 apply #ff00000000000000 -> -sNaN
dece538 apply #ffffffffffffffff -> -sNaN999999999999999
dece539 apply #ffffffffffffffff -> #fe00ff3fcff3fcff
-- diagnostic NaNs
dece540 apply NaN -> #7c00000000000000
dece541 apply NaN0 -> #7c00000000000000
dece542 apply NaN1 -> #7c00000000000001
dece543 apply NaN12 -> #7c00000000000012
dece544 apply NaN79 -> #7c00000000000079
dece545 apply NaN12345 -> #7c000000000049c5
dece546 apply NaN123456 -> #7c00000000028e56
dece547 apply NaN799799 -> #7c000000000f7fdf
dece548 apply NaN799799799799799 -> #7c03dff7fdff7fdf
dece549 apply NaN999999999999999 -> #7c00ff3fcff3fcff
dece550 apply NaN1234567890123456 -> #7c00000000000000 -- too many digits
-- fold-down full sequence
dece601 apply 1E+384 -> #47fc000000000000 Clamped
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- we assume that base comparison is tested in compare.decTest, so
-- these mainly cover special cases and rounding
......@@ -60,24 +60,36 @@ maxx030 max 0 0 -> 0
maxx031 max 0 -0 -> 0
maxx032 max 0 -0.0 -> 0
maxx033 max 0 0.0 -> 0
maxx034 max -0 0 -> -0 -- note: -0 = 0
maxx034 max -0 0 -> 0 -- note: -0 = 0, but 0 chosen
maxx035 max -0 -0 -> -0
maxx036 max -0 -0.0 -> -0
maxx037 max -0 0.0 -> -0
maxx038 max 0.0 0 -> 0.0
maxx036 max -0 -0.0 -> -0.0
maxx037 max -0 0.0 -> 0.0
maxx038 max 0.0 0 -> 0
maxx039 max 0.0 -0 -> 0.0
maxx040 max 0.0 -0.0 -> 0.0
maxx041 max 0.0 0.0 -> 0.0
maxx042 max -0.0 0 -> -0.0
maxx042 max -0.0 0 -> 0
maxx043 max -0.0 -0 -> -0.0
maxx044 max -0.0 -0.0 -> -0.0
maxx045 max -0.0 0.0 -> -0.0
maxx045 max -0.0 0.0 -> 0.0
maxx046 max -0E1 0E2 -> -0E+1
maxx047 max 0E2 0E1 -> 0E+2
maxx048 max 0E1 0E2 -> 0E+1
maxx049 max -0E3 -0E2 -> -0E+3
maxx050 max -0E1 0E1 -> 0E+1
maxx051 max -0E2 0E2 -> 0E+2
maxx052 max -0E2 0E1 -> 0E+1
maxx053 max -0E1 0E2 -> 0E+2
maxx054 max 0E1 -0E1 -> 0E+1
maxx055 max 0E2 -0E2 -> 0E+2
maxx056 max 0E2 -0E1 -> 0E+2
maxx057 max 0E1 -0E2 -> 0E+1
maxx058 max 0E1 0E1 -> 0E+1
maxx059 max 0E2 0E2 -> 0E+2
maxx060 max 0E2 0E1 -> 0E+2
maxx061 max 0E1 0E2 -> 0E+2
maxx062 max -0E1 -0E1 -> -0E+1
maxx063 max -0E2 -0E2 -> -0E+2
maxx064 max -0E2 -0E1 -> -0E+1
maxx065 max -0E1 -0E2 -> -0E+1
-- Specials
precision: 9
......@@ -115,23 +127,24 @@ maxx133 max 1 -Inf -> 1
maxx134 max 1000 -Inf -> 1000
maxx135 max Inf -Inf -> Infinity
maxx141 max NaN -Inf -> NaN
maxx142 max NaN -1000 -> NaN
maxx143 max NaN -1 -> NaN
maxx144 max NaN -0 -> NaN
maxx145 max NaN 0 -> NaN
maxx146 max NaN 1 -> NaN
maxx147 max NaN 1000 -> NaN
maxx148 max NaN Inf -> NaN
-- 2004.08.02 754r chooses number over NaN in mixed cases
maxx141 max NaN -Inf -> -Infinity
maxx142 max NaN -1000 -> -1000
maxx143 max NaN -1 -> -1
maxx144 max NaN -0 -> -0
maxx145 max NaN 0 -> 0
maxx146 max NaN 1 -> 1
maxx147 max NaN 1000 -> 1000
maxx148 max NaN Inf -> Infinity
maxx149 max NaN NaN -> NaN
maxx150 max -Inf NaN -> NaN
maxx151 max -1000 NaN -> NaN
maxx152 max -1 NaN -> NaN
maxx153 max -0 NaN -> NaN
maxx154 max 0 NaN -> NaN
maxx155 max 1 NaN -> NaN
maxx156 max 1000 NaN -> NaN
maxx157 max Inf NaN -> NaN
maxx150 max -Inf NaN -> -Infinity
maxx151 max -1000 NaN -> -1000
maxx152 max -1 NaN -> -1
maxx153 max -0 NaN -> -0
maxx154 max 0 NaN -> 0
maxx155 max 1 NaN -> 1
maxx156 max 1000 NaN -> 1000
maxx157 max Inf NaN -> Infinity
maxx161 max sNaN -Inf -> NaN Invalid_operation
maxx162 max sNaN -1000 -> NaN Invalid_operation
......@@ -154,13 +167,18 @@ maxx178 max Inf sNaN -> NaN Invalid_operation
maxx179 max NaN sNaN -> NaN Invalid_operation
-- propagating NaNs
maxx181 max NaN9 -Inf -> NaN9
maxx182 max NaN8 9 -> NaN8
maxx183 max -NaN7 Inf -> -NaN7
maxx184 max NaN6 NaN5 -> NaN6
maxx185 max -Inf NaN4 -> NaN4
maxx186 max -9 -NaN3 -> -NaN3
maxx187 max Inf NaN2 -> NaN2
maxx181 max NaN9 -Inf -> -Infinity
maxx182 max NaN8 9 -> 9
maxx183 max -NaN7 Inf -> Infinity
maxx184 max -NaN1 NaN11 -> -NaN1
maxx185 max NaN2 NaN12 -> NaN2
maxx186 max -NaN13 -NaN7 -> -NaN13
maxx187 max NaN14 -NaN5 -> NaN14
maxx188 max -Inf NaN4 -> -Infinity
maxx189 max -9 -NaN3 -> -9
maxx190 max Inf NaN2 -> Infinity
maxx191 max sNaN99 -Inf -> NaN99 Invalid_operation
maxx192 max sNaN98 -1 -> NaN98 Invalid_operation
......@@ -218,8 +236,9 @@ maxx238 max 1 -1234567896 -> 1
-- from examples
maxx280 max '3' '2' -> '3'
maxx281 max '-10' '3' -> '3'
maxx282 max '1.0' '1' -> '1.0'
maxx282 max '1.0' '1' -> '1'
maxx283 max '1' '1.0' -> '1'
maxx284 max '7' 'NaN' -> '7'
-- overflow and underflow tests ...
maxExponent: 999999999
......@@ -255,42 +274,99 @@ maxx356 max 1e-777777777 -1e-411111111 -> 1E-777777777
maxx357 max -1e-777777777 1e-411111111 -> 1E-411111111
maxx358 max -1e-777777777 -1e-411111111 -> -1E-777777777
-- expanded list from min/max 754r purple prose
-- [explicit tests for exponent ordering]
maxx401 max Inf 1.1 -> Infinity
maxx402 max 1.1 1 -> 1.1
maxx403 max 1 1.0 -> 1
maxx404 max 1.0 0.1 -> 1.0
maxx405 max 0.1 0.10 -> 0.1
maxx406 max 0.10 0.100 -> 0.10
maxx407 max 0.10 0 -> 0.10
maxx408 max 0 0.0 -> 0
maxx409 max 0.0 -0 -> 0.0
maxx410 max 0.0 -0.0 -> 0.0
maxx411 max 0.00 -0.0 -> 0.00
maxx412 max 0.0 -0.00 -> 0.0
maxx413 max 0 -0.0 -> 0
maxx414 max 0 -0 -> 0
maxx415 max -0.0 -0 -> -0.0
maxx416 max -0 -0.100 -> -0
maxx417 max -0.100 -0.10 -> -0.100
maxx418 max -0.10 -0.1 -> -0.10
maxx419 max -0.1 -1.0 -> -0.1
maxx420 max -1.0 -1 -> -1.0
maxx421 max -1 -1.1 -> -1
maxx423 max -1.1 -Inf -> -1.1
-- same with operands reversed
maxx431 max 1.1 Inf -> Infinity
maxx432 max 1 1.1 -> 1.1
maxx433 max 1.0 1 -> 1
maxx434 max 0.1 1.0 -> 1.0
maxx435 max 0.10 0.1 -> 0.1
maxx436 max 0.100 0.10 -> 0.10
maxx437 max 0 0.10 -> 0.10
maxx438 max 0.0 0 -> 0
maxx439 max -0 0.0 -> 0.0
maxx440 max -0.0 0.0 -> 0.0
maxx441 max -0.0 0.00 -> 0.00
maxx442 max -0.00 0.0 -> 0.0
maxx443 max -0.0 0 -> 0
maxx444 max -0 0 -> 0
maxx445 max -0 -0.0 -> -0.0
maxx446 max -0.100 -0 -> -0
maxx447 max -0.10 -0.100 -> -0.100
maxx448 max -0.1 -0.10 -> -0.10
maxx449 max -1.0 -0.1 -> -0.1
maxx450 max -1 -1.0 -> -1.0
maxx451 max -1.1 -1 -> -1
maxx453 max -Inf -1.1 -> -1.1
-- largies
maxx460 max 1000 1E+3 -> 1E+3
maxx461 max 1E+3 1000 -> 1E+3
maxx462 max 1000 -1E+3 -> 1000
maxx463 max 1E+3 -1000 -> 1E+3
maxx464 max -1000 1E+3 -> 1E+3
maxx465 max -1E+3 1000 -> 1000
maxx466 max -1000 -1E+3 -> -1000
maxx467 max -1E+3 -1000 -> -1000
-- overflow tests
maxexponent: 999999999
minexponent: -999999999
precision: 3
maxx400 max 9.999E+999999999 0 -> Infinity Inexact Overflow Rounded
maxx401 max -9.999E+999999999 0 -> 0
maxx500 max 9.999E+999999999 0 -> Infinity Inexact Overflow Rounded
maxx501 max -9.999E+999999999 0 -> 0
-- subnormals and underflow
precision: 3
maxexponent: 999
minexponent: -999
maxx410 max 1.00E-999 0 -> 1.00E-999
maxx411 max 0.1E-999 0 -> 1E-1000 Subnormal
maxx412 max 0.10E-999 0 -> 1.0E-1000 Subnormal
maxx413 max 0.100E-999 0 -> 1.0E-1000 Subnormal Rounded
maxx414 max 0.01E-999 0 -> 1E-1001 Subnormal
maxx510 max 1.00E-999 0 -> 1.00E-999
maxx511 max 0.1E-999 0 -> 1E-1000 Subnormal
maxx512 max 0.10E-999 0 -> 1.0E-1000 Subnormal
maxx513 max 0.100E-999 0 -> 1.0E-1000 Subnormal Rounded
maxx514 max 0.01E-999 0 -> 1E-1001 Subnormal
-- next is rounded to Emin
maxx415 max 0.999E-999 0 -> 1.00E-999 Inexact Rounded Subnormal Underflow
maxx416 max 0.099E-999 0 -> 1.0E-1000 Inexact Rounded Subnormal Underflow
maxx417 max 0.009E-999 0 -> 1E-1001 Inexact Rounded Subnormal Underflow
maxx418 max 0.001E-999 0 -> 0E-1001 Inexact Rounded Subnormal Underflow
maxx419 max 0.0009E-999 0 -> 0E-1001 Inexact Rounded Subnormal Underflow
maxx420 max 0.0001E-999 0 -> 0E-1001 Inexact Rounded Subnormal Underflow
maxx515 max 0.999E-999 0 -> 1.00E-999 Inexact Rounded Subnormal Underflow
maxx516 max 0.099E-999 0 -> 1.0E-1000 Inexact Rounded Subnormal Underflow
maxx517 max 0.009E-999 0 -> 1E-1001 Inexact Rounded Subnormal Underflow
maxx518 max 0.001E-999 0 -> 0E-1001 Inexact Rounded Subnormal Underflow
maxx519 max 0.0009E-999 0 -> 0E-1001 Inexact Rounded Subnormal Underflow
maxx520 max 0.0001E-999 0 -> 0E-1001 Inexact Rounded Subnormal Underflow
maxx430 max -1.00E-999 0 -> 0
maxx431 max -0.1E-999 0 -> 0
maxx432 max -0.10E-999 0 -> 0
maxx433 max -0.100E-999 0 -> 0
maxx434 max -0.01E-999 0 -> 0
maxx435 max -0.999E-999 0 -> 0
maxx436 max -0.099E-999 0 -> 0
maxx437 max -0.009E-999 0 -> 0
maxx438 max -0.001E-999 0 -> 0
maxx439 max -0.0009E-999 0 -> 0
maxx440 max -0.0001E-999 0 -> 0
maxx530 max -1.00E-999 0 -> 0
maxx531 max -0.1E-999 0 -> 0
maxx532 max -0.10E-999 0 -> 0
maxx533 max -0.100E-999 0 -> 0
maxx534 max -0.01E-999 0 -> 0
maxx535 max -0.999E-999 0 -> 0
maxx536 max -0.099E-999 0 -> 0
maxx537 max -0.009E-999 0 -> 0
maxx538 max -0.001E-999 0 -> 0
maxx539 max -0.0009E-999 0 -> 0
maxx540 max -0.0001E-999 0 -> 0
-- Null tests
maxx900 max 10 # -> NaN Invalid_operation
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- we assume that base comparison is tested in compare.decTest, so
-- these mainly cover special cases and rounding
......@@ -57,26 +57,28 @@ mnmx026 min 2 2 -> 2
-- extended zeros
mnmx030 min 0 0 -> 0
mnmx031 min 0 -0 -> 0
mnmx032 min 0 -0.0 -> 0
mnmx033 min 0 0.0 -> 0
mnmx031 min 0 -0 -> -0
mnmx032 min 0 -0.0 -> -0.0
mnmx033 min 0 0.0 -> 0.0
mnmx034 min -0 0 -> -0
mnmx035 min -0 -0 -> -0
mnmx036 min -0 -0.0 -> -0
mnmx037 min -0 0.0 -> -0
mnmx038 min 0.0 0 -> 0.0
mnmx039 min 0.0 -0 -> 0.0
mnmx040 min 0.0 -0.0 -> 0.0
mnmx039 min 0.0 -0 -> -0
mnmx040 min 0.0 -0.0 -> -0.0
mnmx041 min 0.0 0.0 -> 0.0
mnmx042 min -0.0 0 -> -0.0
mnmx043 min -0.0 -0 -> -0.0
mnmx043 min -0.0 -0 -> -0
mnmx044 min -0.0 -0.0 -> -0.0
mnmx045 min -0.0 0.0 -> -0.0
mnmx046 min -0E1 0E2 -> -0E+1
mnmx047 min 0E2 0E1 -> 0E+2
mnmx048 min 0E1 0E2 -> 0E+1
mnmx049 min -0E3 -0E2 -> -0E+3
mnmx046 min 0E1 -0E1 -> -0E+1
mnmx047 min -0E1 0E2 -> -0E+1
mnmx048 min 0E2 0E1 -> 0E+1
mnmx049 min 0E1 0E2 -> 0E+1
mnmx050 min -0E3 -0E2 -> -0E+3
mnmx051 min -0E2 -0E3 -> -0E+3
-- Specials
precision: 9
......@@ -114,23 +116,24 @@ mnmx133 min 1 -Inf -> -Infinity
mnmx134 min 1000 -Inf -> -Infinity
mnmx135 min Inf -Inf -> -Infinity
mnmx141 min NaN -Inf -> NaN
mnmx142 min NaN -1000 -> NaN
mnmx143 min NaN -1 -> NaN
mnmx144 min NaN -0 -> NaN
mnmx145 min NaN 0 -> NaN
mnmx146 min NaN 1 -> NaN
mnmx147 min NaN 1000 -> NaN
mnmx148 min NaN Inf -> NaN
-- 2004.08.02 754r chooses number over NaN in mixed cases
mnmx141 min NaN -Inf -> -Infinity
mnmx142 min NaN -1000 -> -1000
mnmx143 min NaN -1 -> -1
mnmx144 min NaN -0 -> -0
mnmx145 min NaN 0 -> 0
mnmx146 min NaN 1 -> 1
mnmx147 min NaN 1000 -> 1000
mnmx148 min NaN Inf -> Infinity
mnmx149 min NaN NaN -> NaN
mnmx150 min -Inf NaN -> NaN
mnmx151 min -1000 NaN -> NaN
mnmx152 min -1 -NaN -> -NaN
mnmx153 min -0 NaN -> NaN
mnmx154 min 0 -NaN -> -NaN
mnmx155 min 1 NaN -> NaN
mnmx156 min 1000 NaN -> NaN
mnmx157 min Inf NaN -> NaN
mnmx150 min -Inf NaN -> -Infinity
mnmx151 min -1000 NaN -> -1000
mnmx152 min -1 -NaN -> -1
mnmx153 min -0 NaN -> -0
mnmx154 min 0 -NaN -> 0
mnmx155 min 1 NaN -> 1
mnmx156 min 1000 NaN -> 1000
mnmx157 min Inf NaN -> Infinity
mnmx161 min sNaN -Inf -> NaN Invalid_operation
mnmx162 min sNaN -1000 -> NaN Invalid_operation
......@@ -153,17 +156,22 @@ mnmx178 min Inf sNaN -> NaN Invalid_operation
mnmx179 min NaN sNaN -> NaN Invalid_operation
-- propagating NaNs
mnmx181 min NaN9 -Inf -> NaN9
mnmx182 min -NaN8 9990 -> -NaN8
mnmx183 min NaN71 Inf -> NaN71
mnmx184 min NaN6 NaN51 -> NaN6
mnmx185 min -Inf NaN41 -> NaN41
mnmx186 min -9999 -NaN33 -> -NaN33
mnmx187 min Inf NaN2 -> NaN2
mnmx181 min NaN9 -Inf -> -Infinity
mnmx182 min -NaN8 9990 -> 9990
mnmx183 min NaN71 Inf -> Infinity
mnmx184 min NaN1 NaN54 -> NaN1
mnmx185 min NaN22 -NaN53 -> NaN22
mnmx186 min -NaN3 NaN6 -> -NaN3
mnmx187 min -NaN44 NaN7 -> -NaN44
mnmx188 min -Inf NaN41 -> -Infinity
mnmx189 min -9999 -NaN33 -> -9999
mnmx190 min Inf NaN2 -> Infinity
mnmx191 min sNaN99 -Inf -> NaN99 Invalid_operation
mnmx192 min sNaN98 -11 -> NaN98 Invalid_operation
mnmx193 min -sNaN97 NaN -> -NaN97 Invalid_operation
mnmx193 min -sNaN97 NaN8 -> -NaN97 Invalid_operation
mnmx194 min sNaN69 sNaN94 -> NaN69 Invalid_operation
mnmx195 min NaN95 sNaN93 -> NaN93 Invalid_operation
mnmx196 min -Inf sNaN92 -> NaN92 Invalid_operation
......@@ -218,7 +226,8 @@ mnmx238 min 1 1234567896 -> 1
mnmx280 min '3' '2' -> '2'
mnmx281 min '-10' '3' -> '-10'
mnmx282 min '1.0' '1' -> '1.0'
mnmx283 min '1' '1.0' -> '1'
mnmx283 min '1' '1.0' -> '1.0'
mnmx284 min '7' 'NaN' -> '7'
-- overflow and underflow tests .. subnormal results [inputs] now allowed
maxExponent: 999999999
......@@ -254,42 +263,99 @@ mnmx356 min -1e-777777777 +1e-411111111 -> -1E-777777777
mnmx357 min +1e-777777777 -1e-411111111 -> -1E-411111111
mnmx358 min +1e-777777777 +1e-411111111 -> 1E-777777777
-- expanded list from min/max 754r purple prose
-- [explicit tests for exponent ordering]
mnmx401 min Inf 1.1 -> 1.1
mnmx402 min 1.1 1 -> 1
mnmx403 min 1 1.0 -> 1.0
mnmx404 min 1.0 0.1 -> 0.1
mnmx405 min 0.1 0.10 -> 0.10
mnmx406 min 0.10 0.100 -> 0.100
mnmx407 min 0.10 0 -> 0
mnmx408 min 0 0.0 -> 0.0
mnmx409 min 0.0 -0 -> -0
mnmx410 min 0.0 -0.0 -> -0.0
mnmx411 min 0.00 -0.0 -> -0.0
mnmx412 min 0.0 -0.00 -> -0.00
mnmx413 min 0 -0.0 -> -0.0
mnmx414 min 0 -0 -> -0
mnmx415 min -0.0 -0 -> -0
mnmx416 min -0 -0.100 -> -0.100
mnmx417 min -0.100 -0.10 -> -0.10
mnmx418 min -0.10 -0.1 -> -0.1
mnmx419 min -0.1 -1.0 -> -1.0
mnmx420 min -1.0 -1 -> -1
mnmx421 min -1 -1.1 -> -1.1
mnmx423 min -1.1 -Inf -> -Infinity
-- same with operands reversed
mnmx431 min 1.1 Inf -> 1.1
mnmx432 min 1 1.1 -> 1
mnmx433 min 1.0 1 -> 1.0
mnmx434 min 0.1 1.0 -> 0.1
mnmx435 min 0.10 0.1 -> 0.10
mnmx436 min 0.100 0.10 -> 0.100
mnmx437 min 0 0.10 -> 0
mnmx438 min 0.0 0 -> 0.0
mnmx439 min -0 0.0 -> -0
mnmx440 min -0.0 0.0 -> -0.0
mnmx441 min -0.0 0.00 -> -0.0
mnmx442 min -0.00 0.0 -> -0.00
mnmx443 min -0.0 0 -> -0.0
mnmx444 min -0 0 -> -0
mnmx445 min -0 -0.0 -> -0
mnmx446 min -0.100 -0 -> -0.100
mnmx447 min -0.10 -0.100 -> -0.10
mnmx448 min -0.1 -0.10 -> -0.1
mnmx449 min -1.0 -0.1 -> -1.0
mnmx450 min -1 -1.0 -> -1
mnmx451 min -1.1 -1 -> -1.1
mnmx453 min -Inf -1.1 -> -Infinity
-- largies
mnmx460 min 1000 1E+3 -> 1000
mnmx461 min 1E+3 1000 -> 1000
mnmx462 min 1000 -1E+3 -> -1E+3
mnmx463 min 1E+3 -1000 -> -1000
mnmx464 min -1000 1E+3 -> -1000
mnmx465 min -1E+3 1000 -> -1E+3
mnmx466 min -1000 -1E+3 -> -1E+3
mnmx467 min -1E+3 -1000 -> -1E+3
-- overflow tests
maxexponent: 999999999
minexponent: -999999999
precision: 3
mnmx400 min 9.999E+999999999 0 -> 0
mnmx401 min -9.999E+999999999 0 -> -Infinity Inexact Overflow Rounded
mnmx500 min 9.999E+999999999 0 -> 0
mnmx501 min -9.999E+999999999 0 -> -Infinity Inexact Overflow Rounded
-- subnormals and underflow
precision: 3
maxexponent: 999
minexponent: -999
mnmx410 min 1.00E-999 0 -> 0
mnmx411 min 0.1E-999 0 -> 0
mnmx412 min 0.10E-999 0 -> 0
mnmx413 min 0.100E-999 0 -> 0
mnmx414 min 0.01E-999 0 -> 0
mnmx415 min 0.999E-999 0 -> 0
mnmx416 min 0.099E-999 0 -> 0
mnmx417 min 0.009E-999 0 -> 0
mnmx418 min 0.001E-999 0 -> 0
mnmx419 min 0.0009E-999 0 -> 0
mnmx420 min 0.0001E-999 0 -> 0
mnmx510 min 1.00E-999 0 -> 0
mnmx511 min 0.1E-999 0 -> 0
mnmx512 min 0.10E-999 0 -> 0
mnmx513 min 0.100E-999 0 -> 0
mnmx514 min 0.01E-999 0 -> 0
mnmx515 min 0.999E-999 0 -> 0
mnmx516 min 0.099E-999 0 -> 0
mnmx517 min 0.009E-999 0 -> 0
mnmx518 min 0.001E-999 0 -> 0
mnmx519 min 0.0009E-999 0 -> 0
mnmx520 min 0.0001E-999 0 -> 0
mnmx430 min -1.00E-999 0 -> -1.00E-999
mnmx431 min -0.1E-999 0 -> -1E-1000 Subnormal
mnmx432 min -0.10E-999 0 -> -1.0E-1000 Subnormal
mnmx433 min -0.100E-999 0 -> -1.0E-1000 Subnormal Rounded
mnmx434 min -0.01E-999 0 -> -1E-1001 Subnormal
mnmx530 min -1.00E-999 0 -> -1.00E-999
mnmx531 min -0.1E-999 0 -> -1E-1000 Subnormal
mnmx532 min -0.10E-999 0 -> -1.0E-1000 Subnormal
mnmx533 min -0.100E-999 0 -> -1.0E-1000 Subnormal Rounded
mnmx534 min -0.01E-999 0 -> -1E-1001 Subnormal
-- next is rounded to Emin
mnmx435 min -0.999E-999 0 -> -1.00E-999 Inexact Rounded Subnormal Underflow
mnmx436 min -0.099E-999 0 -> -1.0E-1000 Inexact Rounded Subnormal Underflow
mnmx437 min -0.009E-999 0 -> -1E-1001 Inexact Rounded Subnormal Underflow
mnmx438 min -0.001E-999 0 -> -0E-1001 Inexact Rounded Subnormal Underflow
mnmx439 min -0.0009E-999 0 -> -0E-1001 Inexact Rounded Subnormal Underflow
mnmx440 min -0.0001E-999 0 -> -0E-1001 Inexact Rounded Subnormal Underflow
mnmx535 min -0.999E-999 0 -> -1.00E-999 Inexact Rounded Subnormal Underflow
mnmx536 min -0.099E-999 0 -> -1.0E-1000 Inexact Rounded Subnormal Underflow
mnmx537 min -0.009E-999 0 -> -1E-1001 Inexact Rounded Subnormal Underflow
mnmx538 min -0.001E-999 0 -> -0E-1001 Inexact Rounded Subnormal Underflow
mnmx539 min -0.0009E-999 0 -> -0E-1001 Inexact Rounded Subnormal Underflow
mnmx540 min -0.0001E-999 0 -> -0E-1001 Inexact Rounded Subnormal Underflow
-- Null tests
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- This set of tests primarily tests the existence of the operator.
-- Subtraction, rounding, and more overflows are tested elsewhere.
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- This set of tests primarily tests the existence of the operator.
-- Addition and rounding, and most overflows, are tested elsewhere.
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- This set of testcases tests raising numbers to an integer power only.
-- If arbitrary powers were supported, 1 ulp differences would be
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- Most of the tests here assume a "regular pattern", where the
-- sign and coefficient are +1.
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- These testcases test calculations at precisions 31, 32, and 33, to
-- exercise the boundaries around 2**5
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
maxexponent: 999999999
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
------------------------------------------------------------------------
-- rescale.decTest -- decimal rescale operation --
-- Copyright (c) IBM Corporation, 1981, 2003. All rights reserved. --
-- Copyright (c) IBM Corporation, 1981, 2004. All rights reserved. --
------------------------------------------------------------------------
-- Please see the document "General Decimal Arithmetic Testcases" --
-- at http://www2.hursley.ibm.com/decimal for the description of --
......@@ -17,10 +17,12 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.35
version: 2.39
-- [obsolete] Quantize.decTest has the improved version
-- 2004.03.15 Underflow for quantize is suppressed
extended: 1
precision: 9
rounding: half_up
......@@ -498,12 +500,12 @@ resx553 rescale 1E-999 -1006 -> NaN Invalid_operation
resx554 rescale 1E-999 -1007 -> NaN Invalid_operation
-- related subnormal rounding
resx555 rescale 1.666666E-999 -1005 -> 1.666666E-999
resx556 rescale 1.666666E-1000 -1005 -> 1.66667E-1000 Underflow Subnormal Inexact Rounded
resx557 rescale 1.666666E-1001 -1005 -> 1.6667E-1001 Underflow Subnormal Inexact Rounded
resx558 rescale 1.666666E-1002 -1005 -> 1.667E-1002 Underflow Subnormal Inexact Rounded
resx559 rescale 1.666666E-1003 -1005 -> 1.67E-1003 Underflow Subnormal Inexact Rounded
resx560 rescale 1.666666E-1004 -1005 -> 1.7E-1004 Underflow Subnormal Inexact Rounded
resx561 rescale 1.666666E-1005 -1005 -> 2E-1005 Underflow Subnormal Inexact Rounded
resx556 rescale 1.666666E-1000 -1005 -> 1.66667E-1000 Subnormal Inexact Rounded
resx557 rescale 1.666666E-1001 -1005 -> 1.6667E-1001 Subnormal Inexact Rounded
resx558 rescale 1.666666E-1002 -1005 -> 1.667E-1002 Subnormal Inexact Rounded
resx559 rescale 1.666666E-1003 -1005 -> 1.67E-1003 Subnormal Inexact Rounded
resx560 rescale 1.666666E-1004 -1005 -> 1.7E-1004 Subnormal Inexact Rounded
resx561 rescale 1.666666E-1005 -1005 -> 2E-1005 Subnormal Inexact Rounded
resx562 rescale 1.666666E-1006 -1005 -> 0E-1005 Inexact Rounded
resx563 rescale 1.666666E-1007 -1005 -> 0E-1005 Inexact Rounded
......@@ -626,9 +628,9 @@ resx713 rescale 0.100E-999 -1000 -> 1E-1000 Subnormal Rounded
resx714 rescale 0.01E-999 -1001 -> 1E-1001 Subnormal
-- next is rounded to Emin
resx715 rescale 0.999E-999 -999 -> 1E-999 Inexact Rounded
resx716 rescale 0.099E-999 -1000 -> 1E-1000 Inexact Rounded Subnormal Underflow
resx716 rescale 0.099E-999 -1000 -> 1E-1000 Inexact Rounded Subnormal
resx717 rescale 0.009E-999 -1001 -> 1E-1001 Inexact Rounded Subnormal Underflow
resx717 rescale 0.009E-999 -1001 -> 1E-1001 Inexact Rounded Subnormal
resx718 rescale 0.001E-999 -1001 -> 0E-1001 Inexact Rounded
resx719 rescale 0.0009E-999 -1001 -> 0E-1001 Inexact Rounded
resx720 rescale 0.0001E-999 -1001 -> 0E-1001 Inexact Rounded
......@@ -652,7 +654,7 @@ resx743 rescale -0.100E-999 -1000 -> -1E-1000 Subnormal Rounded
resx744 rescale -0.01E-999 -1000 -> -0E-1000 Inexact Rounded
-- next is rounded to Emin
resx745 rescale -0.999E-999 -1000 -> -1.0E-999 Inexact Rounded
resx746 rescale -0.099E-999 -1000 -> -1E-1000 Inexact Rounded Subnormal Underflow
resx746 rescale -0.099E-999 -1000 -> -1E-1000 Inexact Rounded Subnormal
resx747 rescale -0.009E-999 -1000 -> -0E-1000 Inexact Rounded
resx748 rescale -0.001E-999 -1000 -> -0E-1000 Inexact Rounded
resx749 rescale -0.0001E-999 -1000 -> -0E-1000 Inexact Rounded
......@@ -664,8 +666,8 @@ resx753 rescale -0.100E-999 -1001 -> -1.0E-1000 Subnormal Rounded
resx754 rescale -0.01E-999 -1001 -> -1E-1001 Subnormal
-- next is rounded to Emin
resx755 rescale -0.999E-999 -1001 -> -1.00E-999 Inexact Rounded
resx756 rescale -0.099E-999 -1001 -> -1.0E-1000 Inexact Rounded Subnormal Underflow
resx757 rescale -0.009E-999 -1001 -> -1E-1001 Inexact Rounded Subnormal Underflow
resx756 rescale -0.099E-999 -1001 -> -1.0E-1000 Inexact Rounded Subnormal
resx757 rescale -0.009E-999 -1001 -> -1E-1001 Inexact Rounded Subnormal
resx758 rescale -0.001E-999 -1001 -> -0E-1001 Inexact Rounded
resx759 rescale -0.0001E-999 -1001 -> -0E-1001 Inexact Rounded
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- These tests require that implementations take account of residues in
-- order to get correct results for some rounding modes. Rather than
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
extended: 1
precision: 9
......
------------------------------------------------------------------------
-- testall.decTest -- run all general decimal arithmetic testcases --
-- Copyright (c) IBM Corporation, 1981, 2003. All rights reserved. --
-- Copyright (c) IBM Corporation, 1981, 2004. All rights reserved. --
------------------------------------------------------------------------
-- Please see the document "General Decimal Arithmetic Testcases" --
-- at http://www2.hursley.ibm.com/decimal for the description of --
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.35
version: 2.39
-- core tests (using Extended: 1) --------------------------------------
dectest: base
......@@ -54,5 +54,5 @@ dectest: decimal128
-- General 31->33-digit boundary tests
dectest: randomBound32
dectest: randombound32
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.38
version: 2.39
-- This set of tests tests the extended specification 'round-to-integral
-- value' operation (from IEEE 854, later modified in 754r).
......
......@@ -17,7 +17,7 @@
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.35
version: 2.39
extended: 1
precision: 9
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment