478 lines
31 KiB
Plaintext
478 lines
31 KiB
Plaintext
------------------------------------------------------------------------
|
|
-- dqEncode.decTest -- decimal sixteen-byte format testcases --
|
|
-- Copyright (c) IBM Corporation, 2000, 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 --
|
|
------------------------------------------------------------------------
|
|
-- [Previously called decimal128.decTest]
|
|
version: 2.59
|
|
|
|
-- This set of tests is for the sixteen-byte concrete representation.
|
|
-- Its characteristics are:
|
|
--
|
|
-- 1 bit sign
|
|
-- 5 bits combination field
|
|
-- 12 bits exponent continuation
|
|
-- 110 bits coefficient continuation
|
|
--
|
|
-- Total exponent length 14 bits
|
|
-- Total coefficient length 114 bits (34 digits)
|
|
--
|
|
-- Elimit = 12287 (maximum encoded exponent)
|
|
-- Emax = 6144 (largest exponent value)
|
|
-- Emin = -6143 (smallest exponent value)
|
|
-- bias = 6176 (subtracted from encoded exponent) = -Etiny
|
|
|
|
-- The testcases here have only exactly representable data on the
|
|
-- 'left-hand-side'; rounding from strings is tested in 'base'
|
|
-- testcase groups.
|
|
|
|
extended: 1
|
|
clamp: 1
|
|
precision: 34
|
|
rounding: half_up
|
|
maxExponent: 6144
|
|
minExponent: -6143
|
|
|
|
-- General testcases
|
|
-- (mostly derived from the Strawman 4 document and examples)
|
|
decq001 apply #A20780000000000000000000000003D0 -> -7.50
|
|
decq002 apply -7.50 -> #A20780000000000000000000000003D0
|
|
-- derivative canonical plain strings
|
|
decq003 apply #A20840000000000000000000000003D0 -> -7.50E+3
|
|
decq004 apply -7.50E+3 -> #A20840000000000000000000000003D0
|
|
decq005 apply #A20800000000000000000000000003D0 -> -750
|
|
decq006 apply -750 -> #A20800000000000000000000000003D0
|
|
decq007 apply #A207c0000000000000000000000003D0 -> -75.0
|
|
decq008 apply -75.0 -> #A207c0000000000000000000000003D0
|
|
decq009 apply #A20740000000000000000000000003D0 -> -0.750
|
|
decq010 apply -0.750 -> #A20740000000000000000000000003D0
|
|
decq011 apply #A20700000000000000000000000003D0 -> -0.0750
|
|
decq012 apply -0.0750 -> #A20700000000000000000000000003D0
|
|
decq013 apply #A20680000000000000000000000003D0 -> -0.000750
|
|
decq014 apply -0.000750 -> #A20680000000000000000000000003D0
|
|
decq015 apply #A20600000000000000000000000003D0 -> -0.00000750
|
|
decq016 apply -0.00000750 -> #A20600000000000000000000000003D0
|
|
decq017 apply #A205c0000000000000000000000003D0 -> -7.50E-7
|
|
decq018 apply -7.50E-7 -> #A205c0000000000000000000000003D0
|
|
|
|
-- Normality
|
|
decq020 apply 1234567890123456789012345678901234 -> #2608134b9c1e28e56f3c127177823534
|
|
decq021 apply -1234567890123456789012345678901234 -> #a608134b9c1e28e56f3c127177823534
|
|
decq022 apply 1111111111111111111111111111111111 -> #26080912449124491244912449124491
|
|
|
|
-- Nmax and similar
|
|
decq031 apply 9.999999999999999999999999999999999E+6144 -> #77ffcff3fcff3fcff3fcff3fcff3fcff
|
|
decq032 apply #77ffcff3fcff3fcff3fcff3fcff3fcff -> 9.999999999999999999999999999999999E+6144
|
|
decq033 apply 1.234567890123456789012345678901234E+6144 -> #47ffd34b9c1e28e56f3c127177823534
|
|
decq034 apply #47ffd34b9c1e28e56f3c127177823534 -> 1.234567890123456789012345678901234E+6144
|
|
-- fold-downs (more below)
|
|
decq035 apply 1.23E+6144 -> #47ffd300000000000000000000000000 Clamped
|
|
decq036 apply #47ffd300000000000000000000000000 -> 1.230000000000000000000000000000000E+6144
|
|
decq037 apply 1E+6144 -> #47ffc000000000000000000000000000 Clamped
|
|
decq038 apply #47ffc000000000000000000000000000 -> 1.000000000000000000000000000000000E+6144
|
|
|
|
decq051 apply 12345 -> #220800000000000000000000000049c5
|
|
decq052 apply #220800000000000000000000000049c5 -> 12345
|
|
decq053 apply 1234 -> #22080000000000000000000000000534
|
|
decq054 apply #22080000000000000000000000000534 -> 1234
|
|
decq055 apply 123 -> #220800000000000000000000000000a3
|
|
decq056 apply #220800000000000000000000000000a3 -> 123
|
|
decq057 apply 12 -> #22080000000000000000000000000012
|
|
decq058 apply #22080000000000000000000000000012 -> 12
|
|
decq059 apply 1 -> #22080000000000000000000000000001
|
|
decq060 apply #22080000000000000000000000000001 -> 1
|
|
decq061 apply 1.23 -> #220780000000000000000000000000a3
|
|
decq062 apply #220780000000000000000000000000a3 -> 1.23
|
|
decq063 apply 123.45 -> #220780000000000000000000000049c5
|
|
decq064 apply #220780000000000000000000000049c5 -> 123.45
|
|
|
|
-- Nmin and below
|
|
decq071 apply 1E-6143 -> #00084000000000000000000000000001
|
|
decq072 apply #00084000000000000000000000000001 -> 1E-6143
|
|
decq073 apply 1.000000000000000000000000000000000E-6143 -> #04000000000000000000000000000000
|
|
decq074 apply #04000000000000000000000000000000 -> 1.000000000000000000000000000000000E-6143
|
|
decq075 apply 1.000000000000000000000000000000001E-6143 -> #04000000000000000000000000000001
|
|
decq076 apply #04000000000000000000000000000001 -> 1.000000000000000000000000000000001E-6143
|
|
|
|
decq077 apply 0.100000000000000000000000000000000E-6143 -> #00000800000000000000000000000000 Subnormal
|
|
decq078 apply #00000800000000000000000000000000 -> 1.00000000000000000000000000000000E-6144 Subnormal
|
|
decq079 apply 0.000000000000000000000000000000010E-6143 -> #00000000000000000000000000000010 Subnormal
|
|
decq080 apply #00000000000000000000000000000010 -> 1.0E-6175 Subnormal
|
|
decq081 apply 0.00000000000000000000000000000001E-6143 -> #00004000000000000000000000000001 Subnormal
|
|
decq082 apply #00004000000000000000000000000001 -> 1E-6175 Subnormal
|
|
decq083 apply 0.000000000000000000000000000000001E-6143 -> #00000000000000000000000000000001 Subnormal
|
|
decq084 apply #00000000000000000000000000000001 -> 1E-6176 Subnormal
|
|
|
|
-- underflows cannot be tested for simple copies, check edge cases
|
|
decq090 apply 1e-6176 -> #00000000000000000000000000000001 Subnormal
|
|
decq100 apply 999999999999999999999999999999999e-6176 -> #00000ff3fcff3fcff3fcff3fcff3fcff Subnormal
|
|
|
|
-- same again, negatives
|
|
-- Nmax and similar
|
|
decq122 apply -9.999999999999999999999999999999999E+6144 -> #f7ffcff3fcff3fcff3fcff3fcff3fcff
|
|
decq123 apply #f7ffcff3fcff3fcff3fcff3fcff3fcff -> -9.999999999999999999999999999999999E+6144
|
|
decq124 apply -1.234567890123456789012345678901234E+6144 -> #c7ffd34b9c1e28e56f3c127177823534
|
|
decq125 apply #c7ffd34b9c1e28e56f3c127177823534 -> -1.234567890123456789012345678901234E+6144
|
|
-- fold-downs (more below)
|
|
decq130 apply -1.23E+6144 -> #c7ffd300000000000000000000000000 Clamped
|
|
decq131 apply #c7ffd300000000000000000000000000 -> -1.230000000000000000000000000000000E+6144
|
|
decq132 apply -1E+6144 -> #c7ffc000000000000000000000000000 Clamped
|
|
decq133 apply #c7ffc000000000000000000000000000 -> -1.000000000000000000000000000000000E+6144
|
|
|
|
decq151 apply -12345 -> #a20800000000000000000000000049c5
|
|
decq152 apply #a20800000000000000000000000049c5 -> -12345
|
|
decq153 apply -1234 -> #a2080000000000000000000000000534
|
|
decq154 apply #a2080000000000000000000000000534 -> -1234
|
|
decq155 apply -123 -> #a20800000000000000000000000000a3
|
|
decq156 apply #a20800000000000000000000000000a3 -> -123
|
|
decq157 apply -12 -> #a2080000000000000000000000000012
|
|
decq158 apply #a2080000000000000000000000000012 -> -12
|
|
decq159 apply -1 -> #a2080000000000000000000000000001
|
|
decq160 apply #a2080000000000000000000000000001 -> -1
|
|
decq161 apply -1.23 -> #a20780000000000000000000000000a3
|
|
decq162 apply #a20780000000000000000000000000a3 -> -1.23
|
|
decq163 apply -123.45 -> #a20780000000000000000000000049c5
|
|
decq164 apply #a20780000000000000000000000049c5 -> -123.45
|
|
|
|
-- Nmin and below
|
|
decq171 apply -1E-6143 -> #80084000000000000000000000000001
|
|
decq172 apply #80084000000000000000000000000001 -> -1E-6143
|
|
decq173 apply -1.000000000000000000000000000000000E-6143 -> #84000000000000000000000000000000
|
|
decq174 apply #84000000000000000000000000000000 -> -1.000000000000000000000000000000000E-6143
|
|
decq175 apply -1.000000000000000000000000000000001E-6143 -> #84000000000000000000000000000001
|
|
decq176 apply #84000000000000000000000000000001 -> -1.000000000000000000000000000000001E-6143
|
|
|
|
decq177 apply -0.100000000000000000000000000000000E-6143 -> #80000800000000000000000000000000 Subnormal
|
|
decq178 apply #80000800000000000000000000000000 -> -1.00000000000000000000000000000000E-6144 Subnormal
|
|
decq179 apply -0.000000000000000000000000000000010E-6143 -> #80000000000000000000000000000010 Subnormal
|
|
decq180 apply #80000000000000000000000000000010 -> -1.0E-6175 Subnormal
|
|
decq181 apply -0.00000000000000000000000000000001E-6143 -> #80004000000000000000000000000001 Subnormal
|
|
decq182 apply #80004000000000000000000000000001 -> -1E-6175 Subnormal
|
|
decq183 apply -0.000000000000000000000000000000001E-6143 -> #80000000000000000000000000000001 Subnormal
|
|
decq184 apply #80000000000000000000000000000001 -> -1E-6176 Subnormal
|
|
|
|
-- underflow edge cases
|
|
decq190 apply -1e-6176 -> #80000000000000000000000000000001 Subnormal
|
|
decq200 apply -999999999999999999999999999999999e-6176 -> #80000ff3fcff3fcff3fcff3fcff3fcff Subnormal
|
|
|
|
-- zeros
|
|
decq400 apply 0E-8000 -> #00000000000000000000000000000000 Clamped
|
|
decq401 apply 0E-6177 -> #00000000000000000000000000000000 Clamped
|
|
decq402 apply 0E-6176 -> #00000000000000000000000000000000
|
|
decq403 apply #00000000000000000000000000000000 -> 0E-6176
|
|
decq404 apply 0.000000000000000000000000000000000E-6143 -> #00000000000000000000000000000000
|
|
decq405 apply #00000000000000000000000000000000 -> 0E-6176
|
|
decq406 apply 0E-2 -> #22078000000000000000000000000000
|
|
decq407 apply #22078000000000000000000000000000 -> 0.00
|
|
decq408 apply 0 -> #22080000000000000000000000000000
|
|
decq409 apply #22080000000000000000000000000000 -> 0
|
|
decq410 apply 0E+3 -> #2208c000000000000000000000000000
|
|
decq411 apply #2208c000000000000000000000000000 -> 0E+3
|
|
decq412 apply 0E+6111 -> #43ffc000000000000000000000000000
|
|
decq413 apply #43ffc000000000000000000000000000 -> 0E+6111
|
|
-- clamped zeros...
|
|
decq414 apply 0E+6112 -> #43ffc000000000000000000000000000 Clamped
|
|
decq415 apply #43ffc000000000000000000000000000 -> 0E+6111
|
|
decq416 apply 0E+6144 -> #43ffc000000000000000000000000000 Clamped
|
|
decq417 apply #43ffc000000000000000000000000000 -> 0E+6111
|
|
decq418 apply 0E+8000 -> #43ffc000000000000000000000000000 Clamped
|
|
decq419 apply #43ffc000000000000000000000000000 -> 0E+6111
|
|
|
|
-- negative zeros
|
|
decq420 apply -0E-8000 -> #80000000000000000000000000000000 Clamped
|
|
decq421 apply -0E-6177 -> #80000000000000000000000000000000 Clamped
|
|
decq422 apply -0E-6176 -> #80000000000000000000000000000000
|
|
decq423 apply #80000000000000000000000000000000 -> -0E-6176
|
|
decq424 apply -0.000000000000000000000000000000000E-6143 -> #80000000000000000000000000000000
|
|
decq425 apply #80000000000000000000000000000000 -> -0E-6176
|
|
decq426 apply -0E-2 -> #a2078000000000000000000000000000
|
|
decq427 apply #a2078000000000000000000000000000 -> -0.00
|
|
decq428 apply -0 -> #a2080000000000000000000000000000
|
|
decq429 apply #a2080000000000000000000000000000 -> -0
|
|
decq430 apply -0E+3 -> #a208c000000000000000000000000000
|
|
decq431 apply #a208c000000000000000000000000000 -> -0E+3
|
|
decq432 apply -0E+6111 -> #c3ffc000000000000000000000000000
|
|
decq433 apply #c3ffc000000000000000000000000000 -> -0E+6111
|
|
-- clamped zeros...
|
|
decq434 apply -0E+6112 -> #c3ffc000000000000000000000000000 Clamped
|
|
decq435 apply #c3ffc000000000000000000000000000 -> -0E+6111
|
|
decq436 apply -0E+6144 -> #c3ffc000000000000000000000000000 Clamped
|
|
decq437 apply #c3ffc000000000000000000000000000 -> -0E+6111
|
|
decq438 apply -0E+8000 -> #c3ffc000000000000000000000000000 Clamped
|
|
decq439 apply #c3ffc000000000000000000000000000 -> -0E+6111
|
|
|
|
-- exponent lengths
|
|
decq440 apply #22080000000000000000000000000007 -> 7
|
|
decq441 apply 7 -> #22080000000000000000000000000007
|
|
decq442 apply #220a4000000000000000000000000007 -> 7E+9
|
|
decq443 apply 7E+9 -> #220a4000000000000000000000000007
|
|
decq444 apply #2220c000000000000000000000000007 -> 7E+99
|
|
decq445 apply 7E+99 -> #2220c000000000000000000000000007
|
|
decq446 apply #2301c000000000000000000000000007 -> 7E+999
|
|
decq447 apply 7E+999 -> #2301c000000000000000000000000007
|
|
decq448 apply #43e3c000000000000000000000000007 -> 7E+5999
|
|
decq449 apply 7E+5999 -> #43e3c000000000000000000000000007
|
|
|
|
-- Specials
|
|
decq500 apply Infinity -> #78000000000000000000000000000000
|
|
decq501 apply #78787878787878787878787878787878 -> #78000000000000000000000000000000
|
|
decq502 apply #78000000000000000000000000000000 -> Infinity
|
|
decq503 apply #79797979797979797979797979797979 -> #78000000000000000000000000000000
|
|
decq504 apply #79000000000000000000000000000000 -> Infinity
|
|
decq505 apply #7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a -> #78000000000000000000000000000000
|
|
decq506 apply #7a000000000000000000000000000000 -> Infinity
|
|
decq507 apply #7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b -> #78000000000000000000000000000000
|
|
decq508 apply #7b000000000000000000000000000000 -> Infinity
|
|
|
|
decq509 apply NaN -> #7c000000000000000000000000000000
|
|
decq510 apply #7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c -> #7c003c7c7c7c7c7c7c7c7c7c7c7c7c7c
|
|
decq511 apply #7c000000000000000000000000000000 -> NaN
|
|
decq512 apply #7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d -> #7c003d7d7d7d7d7d7d7d7d7d7d7d7d7d
|
|
decq513 apply #7d000000000000000000000000000000 -> NaN
|
|
decq514 apply #7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e -> #7e003e7e7c7e7e7e7e7c7e7e7e7e7c7e
|
|
decq515 apply #7e000000000000000000000000000000 -> sNaN
|
|
decq516 apply #7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f -> #7e003f7f7c7f7f7f7f7c7f7f7f7f7c7f
|
|
decq517 apply #7f000000000000000000000000000000 -> sNaN
|
|
decq518 apply #7fffffffffffffffffffffffffffffff -> sNaN999999999999999999999999999999999
|
|
decq519 apply #7fffffffffffffffffffffffffffffff -> #7e000ff3fcff3fcff3fcff3fcff3fcff
|
|
|
|
decq520 apply -Infinity -> #f8000000000000000000000000000000
|
|
decq521 apply #f8787878787878787878787878787878 -> #f8000000000000000000000000000000
|
|
decq522 apply #f8000000000000000000000000000000 -> -Infinity
|
|
decq523 apply #f9797979797979797979797979797979 -> #f8000000000000000000000000000000
|
|
decq524 apply #f9000000000000000000000000000000 -> -Infinity
|
|
decq525 apply #fa7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a -> #f8000000000000000000000000000000
|
|
decq526 apply #fa000000000000000000000000000000 -> -Infinity
|
|
decq527 apply #fb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b -> #f8000000000000000000000000000000
|
|
decq528 apply #fb000000000000000000000000000000 -> -Infinity
|
|
|
|
decq529 apply -NaN -> #fc000000000000000000000000000000
|
|
decq530 apply #fc7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c -> #fc003c7c7c7c7c7c7c7c7c7c7c7c7c7c
|
|
decq531 apply #fc000000000000000000000000000000 -> -NaN
|
|
decq532 apply #fd7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d -> #fc003d7d7d7d7d7d7d7d7d7d7d7d7d7d
|
|
decq533 apply #fd000000000000000000000000000000 -> -NaN
|
|
decq534 apply #fe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e -> #fe003e7e7c7e7e7e7e7c7e7e7e7e7c7e
|
|
decq535 apply #fe000000000000000000000000000000 -> -sNaN
|
|
decq536 apply #ff7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f -> #fe003f7f7c7f7f7f7f7c7f7f7f7f7c7f
|
|
decq537 apply #ff000000000000000000000000000000 -> -sNaN
|
|
decq538 apply #ffffffffffffffffffffffffffffffff -> -sNaN999999999999999999999999999999999
|
|
decq539 apply #ffffffffffffffffffffffffffffffff -> #fe000ff3fcff3fcff3fcff3fcff3fcff
|
|
|
|
decq540 apply NaN -> #7c000000000000000000000000000000
|
|
decq541 apply NaN0 -> #7c000000000000000000000000000000
|
|
decq542 apply NaN1 -> #7c000000000000000000000000000001
|
|
decq543 apply NaN12 -> #7c000000000000000000000000000012
|
|
decq544 apply NaN79 -> #7c000000000000000000000000000079
|
|
decq545 apply NaN12345 -> #7c0000000000000000000000000049c5
|
|
decq546 apply NaN123456 -> #7c000000000000000000000000028e56
|
|
decq547 apply NaN799799 -> #7c0000000000000000000000000f7fdf
|
|
decq548 apply NaN799799799799799799799799799799799 -> #7c003dff7fdff7fdff7fdff7fdff7fdf
|
|
decq549 apply NaN999999999999999999999999999999999 -> #7c000ff3fcff3fcff3fcff3fcff3fcff
|
|
decq550 apply 9999999999999999999999999999999999 -> #6e080ff3fcff3fcff3fcff3fcff3fcff
|
|
|
|
-- fold-down full sequence
|
|
decq601 apply 1E+6144 -> #47ffc000000000000000000000000000 Clamped
|
|
decq602 apply #47ffc000000000000000000000000000 -> 1.000000000000000000000000000000000E+6144
|
|
decq603 apply 1E+6143 -> #43ffc800000000000000000000000000 Clamped
|
|
decq604 apply #43ffc800000000000000000000000000 -> 1.00000000000000000000000000000000E+6143
|
|
decq605 apply 1E+6142 -> #43ffc100000000000000000000000000 Clamped
|
|
decq606 apply #43ffc100000000000000000000000000 -> 1.0000000000000000000000000000000E+6142
|
|
decq607 apply 1E+6141 -> #43ffc010000000000000000000000000 Clamped
|
|
decq608 apply #43ffc010000000000000000000000000 -> 1.000000000000000000000000000000E+6141
|
|
decq609 apply 1E+6140 -> #43ffc002000000000000000000000000 Clamped
|
|
decq610 apply #43ffc002000000000000000000000000 -> 1.00000000000000000000000000000E+6140
|
|
decq611 apply 1E+6139 -> #43ffc000400000000000000000000000 Clamped
|
|
decq612 apply #43ffc000400000000000000000000000 -> 1.0000000000000000000000000000E+6139
|
|
decq613 apply 1E+6138 -> #43ffc000040000000000000000000000 Clamped
|
|
decq614 apply #43ffc000040000000000000000000000 -> 1.000000000000000000000000000E+6138
|
|
decq615 apply 1E+6137 -> #43ffc000008000000000000000000000 Clamped
|
|
decq616 apply #43ffc000008000000000000000000000 -> 1.00000000000000000000000000E+6137
|
|
decq617 apply 1E+6136 -> #43ffc000001000000000000000000000 Clamped
|
|
decq618 apply #43ffc000001000000000000000000000 -> 1.0000000000000000000000000E+6136
|
|
decq619 apply 1E+6135 -> #43ffc000000100000000000000000000 Clamped
|
|
decq620 apply #43ffc000000100000000000000000000 -> 1.000000000000000000000000E+6135
|
|
decq621 apply 1E+6134 -> #43ffc000000020000000000000000000 Clamped
|
|
decq622 apply #43ffc000000020000000000000000000 -> 1.00000000000000000000000E+6134
|
|
decq623 apply 1E+6133 -> #43ffc000000004000000000000000000 Clamped
|
|
decq624 apply #43ffc000000004000000000000000000 -> 1.0000000000000000000000E+6133
|
|
decq625 apply 1E+6132 -> #43ffc000000000400000000000000000 Clamped
|
|
decq626 apply #43ffc000000000400000000000000000 -> 1.000000000000000000000E+6132
|
|
decq627 apply 1E+6131 -> #43ffc000000000080000000000000000 Clamped
|
|
decq628 apply #43ffc000000000080000000000000000 -> 1.00000000000000000000E+6131
|
|
decq629 apply 1E+6130 -> #43ffc000000000010000000000000000 Clamped
|
|
decq630 apply #43ffc000000000010000000000000000 -> 1.0000000000000000000E+6130
|
|
decq631 apply 1E+6129 -> #43ffc000000000001000000000000000 Clamped
|
|
decq632 apply #43ffc000000000001000000000000000 -> 1.000000000000000000E+6129
|
|
decq633 apply 1E+6128 -> #43ffc000000000000200000000000000 Clamped
|
|
decq634 apply #43ffc000000000000200000000000000 -> 1.00000000000000000E+6128
|
|
decq635 apply 1E+6127 -> #43ffc000000000000040000000000000 Clamped
|
|
decq636 apply #43ffc000000000000040000000000000 -> 1.0000000000000000E+6127
|
|
decq637 apply 1E+6126 -> #43ffc000000000000004000000000000 Clamped
|
|
decq638 apply #43ffc000000000000004000000000000 -> 1.000000000000000E+6126
|
|
decq639 apply 1E+6125 -> #43ffc000000000000000800000000000 Clamped
|
|
decq640 apply #43ffc000000000000000800000000000 -> 1.00000000000000E+6125
|
|
decq641 apply 1E+6124 -> #43ffc000000000000000100000000000 Clamped
|
|
decq642 apply #43ffc000000000000000100000000000 -> 1.0000000000000E+6124
|
|
decq643 apply 1E+6123 -> #43ffc000000000000000010000000000 Clamped
|
|
decq644 apply #43ffc000000000000000010000000000 -> 1.000000000000E+6123
|
|
decq645 apply 1E+6122 -> #43ffc000000000000000002000000000 Clamped
|
|
decq646 apply #43ffc000000000000000002000000000 -> 1.00000000000E+6122
|
|
decq647 apply 1E+6121 -> #43ffc000000000000000000400000000 Clamped
|
|
decq648 apply #43ffc000000000000000000400000000 -> 1.0000000000E+6121
|
|
decq649 apply 1E+6120 -> #43ffc000000000000000000040000000 Clamped
|
|
decq650 apply #43ffc000000000000000000040000000 -> 1.000000000E+6120
|
|
decq651 apply 1E+6119 -> #43ffc000000000000000000008000000 Clamped
|
|
decq652 apply #43ffc000000000000000000008000000 -> 1.00000000E+6119
|
|
decq653 apply 1E+6118 -> #43ffc000000000000000000001000000 Clamped
|
|
decq654 apply #43ffc000000000000000000001000000 -> 1.0000000E+6118
|
|
decq655 apply 1E+6117 -> #43ffc000000000000000000000100000 Clamped
|
|
decq656 apply #43ffc000000000000000000000100000 -> 1.000000E+6117
|
|
decq657 apply 1E+6116 -> #43ffc000000000000000000000020000 Clamped
|
|
decq658 apply #43ffc000000000000000000000020000 -> 1.00000E+6116
|
|
decq659 apply 1E+6115 -> #43ffc000000000000000000000004000 Clamped
|
|
decq660 apply #43ffc000000000000000000000004000 -> 1.0000E+6115
|
|
decq661 apply 1E+6114 -> #43ffc000000000000000000000000400 Clamped
|
|
decq662 apply #43ffc000000000000000000000000400 -> 1.000E+6114
|
|
decq663 apply 1E+6113 -> #43ffc000000000000000000000000080 Clamped
|
|
decq664 apply #43ffc000000000000000000000000080 -> 1.00E+6113
|
|
decq665 apply 1E+6112 -> #43ffc000000000000000000000000010 Clamped
|
|
decq666 apply #43ffc000000000000000000000000010 -> 1.0E+6112
|
|
decq667 apply 1E+6111 -> #43ffc000000000000000000000000001
|
|
decq668 apply #43ffc000000000000000000000000001 -> 1E+6111
|
|
decq669 apply 1E+6110 -> #43ff8000000000000000000000000001
|
|
decq670 apply #43ff8000000000000000000000000001 -> 1E+6110
|
|
|
|
-- Selected DPD codes
|
|
decq700 apply #22080000000000000000000000000000 -> 0
|
|
decq701 apply #22080000000000000000000000000009 -> 9
|
|
decq702 apply #22080000000000000000000000000010 -> 10
|
|
decq703 apply #22080000000000000000000000000019 -> 19
|
|
decq704 apply #22080000000000000000000000000020 -> 20
|
|
decq705 apply #22080000000000000000000000000029 -> 29
|
|
decq706 apply #22080000000000000000000000000030 -> 30
|
|
decq707 apply #22080000000000000000000000000039 -> 39
|
|
decq708 apply #22080000000000000000000000000040 -> 40
|
|
decq709 apply #22080000000000000000000000000049 -> 49
|
|
decq710 apply #22080000000000000000000000000050 -> 50
|
|
decq711 apply #22080000000000000000000000000059 -> 59
|
|
decq712 apply #22080000000000000000000000000060 -> 60
|
|
decq713 apply #22080000000000000000000000000069 -> 69
|
|
decq714 apply #22080000000000000000000000000070 -> 70
|
|
decq715 apply #22080000000000000000000000000071 -> 71
|
|
decq716 apply #22080000000000000000000000000072 -> 72
|
|
decq717 apply #22080000000000000000000000000073 -> 73
|
|
decq718 apply #22080000000000000000000000000074 -> 74
|
|
decq719 apply #22080000000000000000000000000075 -> 75
|
|
decq720 apply #22080000000000000000000000000076 -> 76
|
|
decq721 apply #22080000000000000000000000000077 -> 77
|
|
decq722 apply #22080000000000000000000000000078 -> 78
|
|
decq723 apply #22080000000000000000000000000079 -> 79
|
|
|
|
decq730 apply #2208000000000000000000000000029e -> 994
|
|
decq731 apply #2208000000000000000000000000029f -> 995
|
|
decq732 apply #220800000000000000000000000002a0 -> 520
|
|
decq733 apply #220800000000000000000000000002a1 -> 521
|
|
|
|
-- DPD: one of each of the huffman groups
|
|
decq740 apply #220800000000000000000000000003f7 -> 777
|
|
decq741 apply #220800000000000000000000000003f8 -> 778
|
|
decq742 apply #220800000000000000000000000003eb -> 787
|
|
decq743 apply #2208000000000000000000000000037d -> 877
|
|
decq744 apply #2208000000000000000000000000039f -> 997
|
|
decq745 apply #220800000000000000000000000003bf -> 979
|
|
decq746 apply #220800000000000000000000000003df -> 799
|
|
decq747 apply #2208000000000000000000000000006e -> 888
|
|
|
|
|
|
-- DPD all-highs cases (includes the 24 redundant codes)
|
|
decq750 apply #2208000000000000000000000000006e -> 888
|
|
decq751 apply #2208000000000000000000000000016e -> 888
|
|
decq752 apply #2208000000000000000000000000026e -> 888
|
|
decq753 apply #2208000000000000000000000000036e -> 888
|
|
decq754 apply #2208000000000000000000000000006f -> 889
|
|
decq755 apply #2208000000000000000000000000016f -> 889
|
|
decq756 apply #2208000000000000000000000000026f -> 889
|
|
decq757 apply #2208000000000000000000000000036f -> 889
|
|
|
|
decq760 apply #2208000000000000000000000000007e -> 898
|
|
decq761 apply #2208000000000000000000000000017e -> 898
|
|
decq762 apply #2208000000000000000000000000027e -> 898
|
|
decq763 apply #2208000000000000000000000000037e -> 898
|
|
decq764 apply #2208000000000000000000000000007f -> 899
|
|
decq765 apply #2208000000000000000000000000017f -> 899
|
|
decq766 apply #2208000000000000000000000000027f -> 899
|
|
decq767 apply #2208000000000000000000000000037f -> 899
|
|
|
|
decq770 apply #220800000000000000000000000000ee -> 988
|
|
decq771 apply #220800000000000000000000000001ee -> 988
|
|
decq772 apply #220800000000000000000000000002ee -> 988
|
|
decq773 apply #220800000000000000000000000003ee -> 988
|
|
decq774 apply #220800000000000000000000000000ef -> 989
|
|
decq775 apply #220800000000000000000000000001ef -> 989
|
|
decq776 apply #220800000000000000000000000002ef -> 989
|
|
decq777 apply #220800000000000000000000000003ef -> 989
|
|
|
|
decq780 apply #220800000000000000000000000000fe -> 998
|
|
decq781 apply #220800000000000000000000000001fe -> 998
|
|
decq782 apply #220800000000000000000000000002fe -> 998
|
|
decq783 apply #220800000000000000000000000003fe -> 998
|
|
decq784 apply #220800000000000000000000000000ff -> 999
|
|
decq785 apply #220800000000000000000000000001ff -> 999
|
|
decq786 apply #220800000000000000000000000002ff -> 999
|
|
decq787 apply #220800000000000000000000000003ff -> 999
|
|
|
|
-- Miscellaneous (testers' queries, etc.)
|
|
|
|
decq790 apply #2208000000000000000000000000c000 -> 30000
|
|
decq791 apply #22080000000000000000000000007800 -> 890000
|
|
decq792 apply 30000 -> #2208000000000000000000000000c000
|
|
decq793 apply 890000 -> #22080000000000000000000000007800
|
|
|
|
-- values around [u]int32 edges (zeros done earlier)
|
|
decq800 apply -2147483646 -> #a208000000000000000000008c78af46
|
|
decq801 apply -2147483647 -> #a208000000000000000000008c78af47
|
|
decq802 apply -2147483648 -> #a208000000000000000000008c78af48
|
|
decq803 apply -2147483649 -> #a208000000000000000000008c78af49
|
|
decq804 apply 2147483646 -> #2208000000000000000000008c78af46
|
|
decq805 apply 2147483647 -> #2208000000000000000000008c78af47
|
|
decq806 apply 2147483648 -> #2208000000000000000000008c78af48
|
|
decq807 apply 2147483649 -> #2208000000000000000000008c78af49
|
|
decq808 apply 4294967294 -> #22080000000000000000000115afb55a
|
|
decq809 apply 4294967295 -> #22080000000000000000000115afb55b
|
|
decq810 apply 4294967296 -> #22080000000000000000000115afb57a
|
|
decq811 apply 4294967297 -> #22080000000000000000000115afb57b
|
|
|
|
decq820 apply #a208000000000000000000008c78af46 -> -2147483646
|
|
decq821 apply #a208000000000000000000008c78af47 -> -2147483647
|
|
decq822 apply #a208000000000000000000008c78af48 -> -2147483648
|
|
decq823 apply #a208000000000000000000008c78af49 -> -2147483649
|
|
decq824 apply #2208000000000000000000008c78af46 -> 2147483646
|
|
decq825 apply #2208000000000000000000008c78af47 -> 2147483647
|
|
decq826 apply #2208000000000000000000008c78af48 -> 2147483648
|
|
decq827 apply #2208000000000000000000008c78af49 -> 2147483649
|
|
decq828 apply #22080000000000000000000115afb55a -> 4294967294
|
|
decq829 apply #22080000000000000000000115afb55b -> 4294967295
|
|
decq830 apply #22080000000000000000000115afb57a -> 4294967296
|
|
decq831 apply #22080000000000000000000115afb57b -> 4294967297
|
|
|
|
-- VG testcase
|
|
decq840 apply #2080000000000000F294000000172636 -> 8.81125000000001349436E-1548
|
|
decq841 apply #20800000000000008000000000000000 -> 8.000000000000000000E-1550
|
|
decq842 apply #1EF98490000000010F6E4E0000000000 -> 7.049000000000010795488000000000000E-3097
|
|
decq843 multiply #20800000000000008000000000000000 #2080000000000000F294000000172636 -> #1EF98490000000010F6E4E0000000000 Rounded
|
|
|