PATH:
opt
/
bitninja-python-dojo
/
embedded
/
lib
/
python3.9
/
test
/
decimaltestdata
------------------------------------------------------------------------ -- clamp.decTest -- clamped exponent tests (format-independent) -- -- 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 -- ------------------------------------------------------------------------ version: 2.59 -- This set of tests uses the same limits as the 8-byte concrete -- representation, but applies clamping without using format-specific -- conversions. extended: 1 precision: 16 rounding: half_even maxExponent: 384 minExponent: -383 clamp: 1 -- General testcases -- Normality clam010 apply 1234567890123456 -> 1234567890123456 clam011 apply 1234567890123456.0 -> 1234567890123456 Rounded clam012 apply 1234567890123456.1 -> 1234567890123456 Rounded Inexact clam013 apply -1234567890123456 -> -1234567890123456 clam014 apply -1234567890123456.0 -> -1234567890123456 Rounded clam015 apply -1234567890123456.1 -> -1234567890123456 Rounded Inexact -- Nmax and similar clam022 apply 9.999999999999999E+384 -> 9.999999999999999E+384 clam024 apply 1.234567890123456E+384 -> 1.234567890123456E+384 -- fold-downs (more below) clam030 apply 1.23E+384 -> 1.230000000000000E+384 Clamped clam032 apply 1E+384 -> 1.000000000000000E+384 Clamped clam051 apply 12345 -> 12345 clam053 apply 1234 -> 1234 clam055 apply 123 -> 123 clam057 apply 12 -> 12 clam059 apply 1 -> 1 clam061 apply 1.23 -> 1.23 clam063 apply 123.45 -> 123.45 -- Nmin and below clam071 apply 1E-383 -> 1E-383 clam073 apply 1.000000000000000E-383 -> 1.000000000000000E-383 clam075 apply 1.000000000000001E-383 -> 1.000000000000001E-383 clam077 apply 0.100000000000000E-383 -> 1.00000000000000E-384 Subnormal clam079 apply 0.000000000000010E-383 -> 1.0E-397 Subnormal clam081 apply 0.00000000000001E-383 -> 1E-397 Subnormal clam083 apply 0.000000000000001E-383 -> 1E-398 Subnormal -- underflows clam090 apply 1e-398 -> #0000000000000001 Subnormal clam091 apply 1.9e-398 -> #0000000000000002 Subnormal Underflow Inexact Rounded clam092 apply 1.1e-398 -> #0000000000000001 Subnormal Underflow Inexact Rounded clam093 apply 1.00000000001e-398 -> #0000000000000001 Subnormal Underflow Inexact Rounded clam094 apply 1.00000000000001e-398 -> #0000000000000001 Subnormal Underflow Inexact Rounded clam095 apply 1.000000000000001e-398 -> #0000000000000001 Subnormal Underflow Inexact Rounded clam096 apply 0.1e-398 -> #0000000000000000 Subnormal Underflow Inexact Rounded Clamped clam097 apply 0.00000000001e-398 -> #0000000000000000 Subnormal Underflow Inexact Rounded Clamped clam098 apply 0.00000000000001e-398 -> #0000000000000000 Subnormal Underflow Inexact Rounded Clamped clam099 apply 0.000000000000001e-398 -> #0000000000000000 Subnormal Underflow Inexact Rounded Clamped -- Same again, negatives -- Nmax and similar clam122 apply -9.999999999999999E+384 -> -9.999999999999999E+384 clam124 apply -1.234567890123456E+384 -> -1.234567890123456E+384 -- fold-downs (more below) clam130 apply -1.23E+384 -> -1.230000000000000E+384 Clamped clam132 apply -1E+384 -> -1.000000000000000E+384 Clamped clam151 apply -12345 -> -12345 clam153 apply -1234 -> -1234 clam155 apply -123 -> -123 clam157 apply -12 -> -12 clam159 apply -1 -> -1 clam161 apply -1.23 -> -1.23 clam163 apply -123.45 -> -123.45 -- Nmin and below clam171 apply -1E-383 -> -1E-383 clam173 apply -1.000000000000000E-383 -> -1.000000000000000E-383 clam175 apply -1.000000000000001E-383 -> -1.000000000000001E-383 clam177 apply -0.100000000000000E-383 -> -1.00000000000000E-384 Subnormal clam179 apply -0.000000000000010E-383 -> -1.0E-397 Subnormal clam181 apply -0.00000000000001E-383 -> -1E-397 Subnormal clam183 apply -0.000000000000001E-383 -> -1E-398 Subnormal -- underflows clam189 apply -1e-398 -> #8000000000000001 Subnormal clam190 apply -1.0e-398 -> #8000000000000001 Subnormal Rounded clam191 apply -1.9e-398 -> #8000000000000002 Subnormal Underflow Inexact Rounded clam192 apply -1.1e-398 -> #8000000000000001 Subnormal Underflow Inexact Rounded clam193 apply -1.00000000001e-398 -> #8000000000000001 Subnormal Underflow Inexact Rounded clam194 apply -1.00000000000001e-398 -> #8000000000000001 Subnormal Underflow Inexact Rounded clam195 apply -1.000000000000001e-398 -> #8000000000000001 Subnormal Underflow Inexact Rounded clam196 apply -0.1e-398 -> #8000000000000000 Subnormal Underflow Inexact Rounded Clamped clam197 apply -0.00000000001e-398 -> #8000000000000000 Subnormal Underflow Inexact Rounded Clamped clam198 apply -0.00000000000001e-398 -> #8000000000000000 Subnormal Underflow Inexact Rounded Clamped clam199 apply -0.000000000000001e-398 -> #8000000000000000 Subnormal Underflow Inexact Rounded Clamped -- zeros clam401 apply 0E-500 -> 0E-398 Clamped clam402 apply 0E-400 -> 0E-398 Clamped clam403 apply 0E-398 -> 0E-398 clam404 apply 0.000000000000000E-383 -> 0E-398 clam405 apply 0E-2 -> 0.00 clam406 apply 0 -> 0 clam407 apply 0E+3 -> 0E+3 clam408 apply 0E+369 -> 0E+369 -- clamped zeros... clam410 apply 0E+370 -> 0E+369 Clamped clam411 apply 0E+384 -> 0E+369 Clamped clam412 apply 0E+400 -> 0E+369 Clamped clam413 apply 0E+500 -> 0E+369 Clamped -- negative zeros clam420 apply -0E-500 -> -0E-398 Clamped clam421 apply -0E-400 -> -0E-398 Clamped clam422 apply -0E-398 -> -0E-398 clam423 apply -0.000000000000000E-383 -> -0E-398 clam424 apply -0E-2 -> -0.00 clam425 apply -0 -> -0 clam426 apply -0E+3 -> -0E+3 clam427 apply -0E+369 -> -0E+369 -- clamped zeros... clam431 apply -0E+370 -> -0E+369 Clamped clam432 apply -0E+384 -> -0E+369 Clamped clam433 apply -0E+400 -> -0E+369 Clamped clam434 apply -0E+500 -> -0E+369 Clamped -- fold-down full sequence clam601 apply 1E+384 -> 1.000000000000000E+384 Clamped clam603 apply 1E+383 -> 1.00000000000000E+383 Clamped clam605 apply 1E+382 -> 1.0000000000000E+382 Clamped clam607 apply 1E+381 -> 1.000000000000E+381 Clamped clam609 apply 1E+380 -> 1.00000000000E+380 Clamped clam611 apply 1E+379 -> 1.0000000000E+379 Clamped clam613 apply 1E+378 -> 1.000000000E+378 Clamped clam615 apply 1E+377 -> 1.00000000E+377 Clamped clam617 apply 1E+376 -> 1.0000000E+376 Clamped clam619 apply 1E+375 -> 1.000000E+375 Clamped clam621 apply 1E+374 -> 1.00000E+374 Clamped clam623 apply 1E+373 -> 1.0000E+373 Clamped clam625 apply 1E+372 -> 1.000E+372 Clamped clam627 apply 1E+371 -> 1.00E+371 Clamped clam629 apply 1E+370 -> 1.0E+370 Clamped clam631 apply 1E+369 -> 1E+369 clam633 apply 1E+368 -> 1E+368 -- same with 9s clam641 apply 9E+384 -> 9.000000000000000E+384 Clamped clam643 apply 9E+383 -> 9.00000000000000E+383 Clamped clam645 apply 9E+382 -> 9.0000000000000E+382 Clamped clam647 apply 9E+381 -> 9.000000000000E+381 Clamped clam649 apply 9E+380 -> 9.00000000000E+380 Clamped clam651 apply 9E+379 -> 9.0000000000E+379 Clamped clam653 apply 9E+378 -> 9.000000000E+378 Clamped clam655 apply 9E+377 -> 9.00000000E+377 Clamped clam657 apply 9E+376 -> 9.0000000E+376 Clamped clam659 apply 9E+375 -> 9.000000E+375 Clamped clam661 apply 9E+374 -> 9.00000E+374 Clamped clam663 apply 9E+373 -> 9.0000E+373 Clamped clam665 apply 9E+372 -> 9.000E+372 Clamped clam667 apply 9E+371 -> 9.00E+371 Clamped clam669 apply 9E+370 -> 9.0E+370 Clamped clam671 apply 9E+369 -> 9E+369 clam673 apply 9E+368 -> 9E+368 -- subnormals clamped to 0-Etiny precision: 16 maxExponent: 384 minExponent: -383 clam681 apply 7E-398 -> 7E-398 Subnormal clam682 apply 0E-398 -> 0E-398 clam683 apply 7E-399 -> 1E-398 Subnormal Underflow Inexact Rounded clam684 apply 4E-399 -> 0E-398 Clamped Subnormal Underflow Inexact Rounded clam685 apply 7E-400 -> 0E-398 Clamped Subnormal Underflow Inexact Rounded clam686 apply 7E-401 -> 0E-398 Clamped Subnormal Underflow Inexact Rounded clam687 apply 0E-399 -> 0E-398 Clamped clam688 apply 0E-400 -> 0E-398 Clamped clam689 apply 0E-401 -> 0E-398 Clamped -- example from documentation precision: 7 rounding: half_even maxExponent: +96 minExponent: -95 clamp: 0 clam700 apply 1.23E+96 -> 1.23E+96 clamp: 1 clam701 apply 1.23E+96 -> 1.230000E+96 Clamped
[-] rotate.decTest
[edit]
[-] dqMinus.decTest
[edit]
[-] multiply.decTest
[edit]
[-] dqFMA.decTest
[edit]
[-] dqXor.decTest
[edit]
[-] abs.decTest
[edit]
[-] ln.decTest
[edit]
[-] remainderNear.decTest
[edit]
[-] copyabs.decTest
[edit]
[-] remainder.decTest
[edit]
[-] dqRemainder.decTest
[edit]
[-] dqNextToward.decTest
[edit]
[-] ddCompareTotalMag.decTest
[edit]
[-] samequantum.decTest
[edit]
[-] dqSameQuantum.decTest
[edit]
[-] dqBase.decTest
[edit]
[-] powersqrt.decTest
[edit]
[-] ddCompare.decTest
[edit]
[-] ddDivide.decTest
[edit]
[-] dqNextMinus.decTest
[edit]
[-] dqMaxMag.decTest
[edit]
[-] class.decTest
[edit]
[-] dqNextPlus.decTest
[edit]
[-] dqMultiply.decTest
[edit]
[-] ddOr.decTest
[edit]
[-] dqRotate.decTest
[edit]
[-] dqMax.decTest
[edit]
[-] ddMinMag.decTest
[edit]
[-] ddScaleB.decTest
[edit]
[-] inexact.decTest
[edit]
[-] ddDivideInt.decTest
[edit]
[-] dqCompare.decTest
[edit]
[-] dsEncode.decTest
[edit]
[-] dqToIntegral.decTest
[edit]
[-] dqCopy.decTest
[edit]
[-] tointegralx.decTest
[edit]
[-] dqReduce.decTest
[edit]
[-] ddCopySign.decTest
[edit]
[+]
..
[-] dqCopyAbs.decTest
[edit]
[-] dqCanonical.decTest
[edit]
[-] ddAbs.decTest
[edit]
[-] ddBase.decTest
[edit]
[-] dqCopyNegate.decTest
[edit]
[-] fma.decTest
[edit]
[-] ddCanonical.decTest
[edit]
[-] testall.decTest
[edit]
[-] ddToIntegral.decTest
[edit]
[-] nextplus.decTest
[edit]
[-] ddMax.decTest
[edit]
[-] copysign.decTest
[edit]
[-] copynegate.decTest
[edit]
[-] dqSubtract.decTest
[edit]
[-] minmag.decTest
[edit]
[-] dqDivide.decTest
[edit]
[-] dqOr.decTest
[edit]
[-] and.decTest
[edit]
[-] ddReduce.decTest
[edit]
[-] ddSubtract.decTest
[edit]
[-] randoms.decTest
[edit]
[-] ddShift.decTest
[edit]
[-] ddSameQuantum.decTest
[edit]
[-] decQuad.decTest
[edit]
[-] dqEncode.decTest
[edit]
[-] dqQuantize.decTest
[edit]
[-] ddNextToward.decTest
[edit]
[-] maxmag.decTest
[edit]
[-] subtract.decTest
[edit]
[-] dqShift.decTest
[edit]
[-] squareroot.decTest
[edit]
[-] ddCompareSig.decTest
[edit]
[-] ddMaxMag.decTest
[edit]
[-] ddQuantize.decTest
[edit]
[-] dqCompareTotal.decTest
[edit]
[-] dqAdd.decTest
[edit]
[-] nexttoward.decTest
[edit]
[-] dqCompareTotalMag.decTest
[edit]
[-] invert.decTest
[edit]
[-] exp.decTest
[edit]
[-] nextminus.decTest
[edit]
[-] max.decTest
[edit]
[-] plus.decTest
[edit]
[-] ddCompareTotal.decTest
[edit]
[-] logb.decTest
[edit]
[-] min.decTest
[edit]
[-] decSingle.decTest
[edit]
[-] shift.decTest
[edit]
[-] or.decTest
[edit]
[-] dqDivideInt.decTest
[edit]
[-] log10.decTest
[edit]
[-] comparetotal.decTest
[edit]
[-] scaleb.decTest
[edit]
[-] ddPlus.decTest
[edit]
[-] quantize.decTest
[edit]
[-] randomBound32.decTest
[edit]
[-] extra.decTest
[edit]
[-] decDouble.decTest
[edit]
[-] dqRemainderNear.decTest
[edit]
[-] rounding.decTest
[edit]
[-] dqClass.decTest
[edit]
[-] dqInvert.decTest
[edit]
[-] ddMultiply.decTest
[edit]
[-] ddLogB.decTest
[edit]
[-] add.decTest
[edit]
[-] ddNextMinus.decTest
[edit]
[-] dqAbs.decTest
[edit]
[-] xor.decTest
[edit]
[-] ddRemainder.decTest
[edit]
[-] copy.decTest
[edit]
[-] dqScaleB.decTest
[edit]
[-] compare.decTest
[edit]
[-] dqMin.decTest
[edit]
[-] ddCopyAbs.decTest
[edit]
[-] divide.decTest
[edit]
[-] ddEncode.decTest
[edit]
[-] power.decTest
[edit]
[-] rescale.decTest
[edit]
[-] dqCopySign.decTest
[edit]
[-] tointegral.decTest
[edit]
[-] ddAnd.decTest
[edit]
[-] ddAdd.decTest
[edit]
[-] ddRotate.decTest
[edit]
[-] ddClass.decTest
[edit]
[-] dqCompareSig.decTest
[edit]
[-] ddRemainderNear.decTest
[edit]
[-] comparetotmag.decTest
[edit]
[-] ddInvert.decTest
[edit]
[-] dqMinMag.decTest
[edit]
[-] base.decTest
[edit]
[-] dqAnd.decTest
[edit]
[-] dsBase.decTest
[edit]
[-] dqLogB.decTest
[edit]
[-] reduce.decTest
[edit]
[-] minus.decTest
[edit]
[-] ddXor.decTest
[edit]
[-] ddFMA.decTest
[edit]
[-] ddNextPlus.decTest
[edit]
[-] ddCopy.decTest
[edit]
[-] clamp.decTest
[edit]
[-] ddMinus.decTest
[edit]
[-] ddCopyNegate.decTest
[edit]
[-] dqPlus.decTest
[edit]
[-] ddMin.decTest
[edit]
[-] divideint.decTest
[edit]