mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 13:11:29 +00:00 
			
		
		
		
	 8a5465339e
			
		
	
	
		8a5465339e
		
	
	
	
	
		
			
			svn+ssh://pythondev@svn.python.org/python/trunk ........ r75286 | mark.dickinson | 2009-10-08 17:28:39 +0100 (Thu, 08 Oct 2009) | 2 lines Update decimal test data to the most recent set from Mike Cowlishaw. ........
		
			
				
	
	
		
			175 lines
		
	
	
	
		
			7.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			175 lines
		
	
	
	
		
			7.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| ------------------------------------------------------------------------
 | |
| -- ddCopySign.decTest -- quiet decDouble copy with sign from rhs      --
 | |
| -- 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
 | |
| 
 | |
| -- All operands and results are decDoubles.
 | |
| precision:   16
 | |
| maxExponent: 384
 | |
| minExponent: -383
 | |
| extended:    1
 | |
| clamp:       1
 | |
| rounding:    half_even
 | |
| 
 | |
| -- Sanity check
 | |
| ddcps001 copysign       +7.50     11 -> 7.50
 | |
| 
 | |
| -- Infinities
 | |
| ddcps011 copysign  Infinity       11 -> Infinity
 | |
| ddcps012 copysign  -Infinity      11 -> Infinity
 | |
| 
 | |
| -- NaNs, 0 payload
 | |
| ddcps021 copysign         NaN     11 -> NaN
 | |
| ddcps022 copysign        -NaN     11 -> NaN
 | |
| ddcps023 copysign        sNaN     11 -> sNaN
 | |
| ddcps024 copysign       -sNaN     11 -> sNaN
 | |
| 
 | |
| -- NaNs, non-0 payload
 | |
| ddcps031 copysign       NaN10     11 -> NaN10
 | |
| ddcps032 copysign      -NaN10     11 -> NaN10
 | |
| ddcps033 copysign      sNaN10     11 -> sNaN10
 | |
| ddcps034 copysign     -sNaN10     11 -> sNaN10
 | |
| ddcps035 copysign       NaN7      11 -> NaN7
 | |
| ddcps036 copysign      -NaN7      11 -> NaN7
 | |
| ddcps037 copysign      sNaN101    11 -> sNaN101
 | |
| ddcps038 copysign     -sNaN101    11 -> sNaN101
 | |
| 
 | |
| -- finites
 | |
| ddcps101 copysign          7      11 -> 7
 | |
| ddcps102 copysign         -7      11 -> 7
 | |
| ddcps103 copysign         75      11 -> 75
 | |
| ddcps104 copysign        -75      11 -> 75
 | |
| ddcps105 copysign       7.50      11 -> 7.50
 | |
| ddcps106 copysign      -7.50      11 -> 7.50
 | |
| ddcps107 copysign       7.500     11 -> 7.500
 | |
| ddcps108 copysign      -7.500     11 -> 7.500
 | |
| 
 | |
| -- zeros
 | |
| ddcps111 copysign          0      11 -> 0
 | |
| ddcps112 copysign         -0      11 -> 0
 | |
| ddcps113 copysign       0E+4      11 -> 0E+4
 | |
| ddcps114 copysign      -0E+4      11 -> 0E+4
 | |
| ddcps115 copysign     0.0000      11 -> 0.0000
 | |
| ddcps116 copysign    -0.0000      11 -> 0.0000
 | |
| ddcps117 copysign      0E-141     11 -> 0E-141
 | |
| ddcps118 copysign     -0E-141     11 -> 0E-141
 | |
| 
 | |
| -- full coefficients, alternating bits
 | |
| ddcps121 copysign  2682682682682682            11 -> 2682682682682682
 | |
| ddcps122 copysign  -2682682682682682           11 -> 2682682682682682
 | |
| ddcps123 copysign  1341341341341341            11 -> 1341341341341341
 | |
| ddcps124 copysign  -1341341341341341           11 -> 1341341341341341
 | |
| 
 | |
| -- Nmax, Nmin, Ntiny
 | |
| ddcps131 copysign  9.999999999999999E+384      11 -> 9.999999999999999E+384
 | |
| ddcps132 copysign  1E-383                      11 -> 1E-383
 | |
| ddcps133 copysign  1.000000000000000E-383      11 -> 1.000000000000000E-383
 | |
| ddcps134 copysign  1E-398                      11 -> 1E-398
 | |
| 
 | |
| ddcps135 copysign  -1E-398                     11 -> 1E-398
 | |
| ddcps136 copysign  -1.000000000000000E-383     11 -> 1.000000000000000E-383
 | |
| ddcps137 copysign  -1E-383                     11 -> 1E-383
 | |
| ddcps138 copysign  -9.999999999999999E+384     11 -> 9.999999999999999E+384
 | |
| 
 | |
| -- repeat with negative RHS
 | |
| 
 | |
| -- Infinities
 | |
| ddcps211 copysign  Infinity       -34 -> -Infinity
 | |
| ddcps212 copysign  -Infinity      -34 -> -Infinity
 | |
| 
 | |
| -- NaNs, 0 payload
 | |
| ddcps221 copysign         NaN     -34 -> -NaN
 | |
| ddcps222 copysign        -NaN     -34 -> -NaN
 | |
| ddcps223 copysign        sNaN     -34 -> -sNaN
 | |
| ddcps224 copysign       -sNaN     -34 -> -sNaN
 | |
| 
 | |
| -- NaNs, non-0 payload
 | |
| ddcps231 copysign       NaN10     -34 -> -NaN10
 | |
| ddcps232 copysign      -NaN10     -34 -> -NaN10
 | |
| ddcps233 copysign      sNaN10     -34 -> -sNaN10
 | |
| ddcps234 copysign     -sNaN10     -34 -> -sNaN10
 | |
| ddcps235 copysign       NaN7      -34 -> -NaN7
 | |
| ddcps236 copysign      -NaN7      -34 -> -NaN7
 | |
| ddcps237 copysign      sNaN101    -34 -> -sNaN101
 | |
| ddcps238 copysign     -sNaN101    -34 -> -sNaN101
 | |
| 
 | |
| -- finites
 | |
| ddcps301 copysign          7      -34 -> -7
 | |
| ddcps302 copysign         -7      -34 -> -7
 | |
| ddcps303 copysign         75      -34 -> -75
 | |
| ddcps304 copysign        -75      -34 -> -75
 | |
| ddcps305 copysign       7.50      -34 -> -7.50
 | |
| ddcps306 copysign      -7.50      -34 -> -7.50
 | |
| ddcps307 copysign       7.500     -34 -> -7.500
 | |
| ddcps308 copysign      -7.500     -34 -> -7.500
 | |
| 
 | |
| -- zeros
 | |
| ddcps311 copysign          0      -34 -> -0
 | |
| ddcps312 copysign         -0      -34 -> -0
 | |
| ddcps313 copysign       0E+4      -34 -> -0E+4
 | |
| ddcps314 copysign      -0E+4      -34 -> -0E+4
 | |
| ddcps315 copysign     0.0000      -34 -> -0.0000
 | |
| ddcps316 copysign    -0.0000      -34 -> -0.0000
 | |
| ddcps317 copysign      0E-141     -34 -> -0E-141
 | |
| ddcps318 copysign     -0E-141     -34 -> -0E-141
 | |
| 
 | |
| -- full coefficients, alternating bits
 | |
| ddcps321 copysign  2682682682682682            -34 -> -2682682682682682
 | |
| ddcps322 copysign  -2682682682682682           -34 -> -2682682682682682
 | |
| ddcps323 copysign  1341341341341341            -34 -> -1341341341341341
 | |
| ddcps324 copysign  -1341341341341341           -34 -> -1341341341341341
 | |
| 
 | |
| -- Nmax, Nmin, Ntiny
 | |
| ddcps331 copysign  9.999999999999999E+384      -34 -> -9.999999999999999E+384
 | |
| ddcps332 copysign  1E-383                      -34 -> -1E-383
 | |
| ddcps333 copysign  1.000000000000000E-383      -34 -> -1.000000000000000E-383
 | |
| ddcps334 copysign  1E-398                      -34 -> -1E-398
 | |
| 
 | |
| ddcps335 copysign  -1E-398                     -34 -> -1E-398
 | |
| ddcps336 copysign  -1.000000000000000E-383     -34 -> -1.000000000000000E-383
 | |
| ddcps337 copysign  -1E-383                     -34 -> -1E-383
 | |
| ddcps338 copysign  -9.999999999999999E+384     -34 -> -9.999999999999999E+384
 | |
| 
 | |
| -- Other kinds of RHS
 | |
| ddcps401 copysign          701    -34 -> -701
 | |
| ddcps402 copysign         -720    -34 -> -720
 | |
| ddcps403 copysign          701    -0  -> -701
 | |
| ddcps404 copysign         -720    -0  -> -720
 | |
| ddcps405 copysign          701    +0  ->  701
 | |
| ddcps406 copysign         -720    +0  ->  720
 | |
| ddcps407 copysign          701    +34 ->  701
 | |
| ddcps408 copysign         -720    +34 ->  720
 | |
| 
 | |
| ddcps413 copysign          701    -Inf  -> -701
 | |
| ddcps414 copysign         -720    -Inf  -> -720
 | |
| ddcps415 copysign          701    +Inf  ->  701
 | |
| ddcps416 copysign         -720    +Inf  ->  720
 | |
| 
 | |
| ddcps420 copysign          701    -NaN  -> -701
 | |
| ddcps421 copysign         -720    -NaN  -> -720
 | |
| ddcps422 copysign          701    +NaN  ->  701
 | |
| ddcps423 copysign         -720    +NaN  ->  720
 | |
| ddcps425 copysign         -720    +NaN8 ->  720
 | |
| 
 | |
| ddcps426 copysign          701    -sNaN  -> -701
 | |
| ddcps427 copysign         -720    -sNaN  -> -720
 | |
| ddcps428 copysign          701    +sNaN  ->  701
 | |
| ddcps429 copysign         -720    +sNaN  ->  720
 | |
| ddcps430 copysign         -720    +sNaN3 ->  720
 | |
| 
 |