]> git.proxmox.com Git - mirror_edk2.git/blame - AppPkg/Applications/Python/Python-2.7.2/Lib/test/decimaltestdata/ddScaleB.decTest
EmbeddedPkg: Extend NvVarStoreFormattedLib LIBRARY_CLASS
[mirror_edk2.git] / AppPkg / Applications / Python / Python-2.7.2 / Lib / test / decimaltestdata / ddScaleB.decTest
CommitLineData
4710c53d 1------------------------------------------------------------------------\r
2-- ddScalebB.decTest -- scale a decDouble by powers of 10 --\r
3-- Copyright (c) IBM Corporation, 1981, 2008. All rights reserved. --\r
4------------------------------------------------------------------------\r
5-- Please see the document "General Decimal Arithmetic Testcases" --\r
6-- at http://www2.hursley.ibm.com/decimal for the description of --\r
7-- these testcases. --\r
8-- --\r
9-- These testcases are experimental ('beta' versions), and they --\r
10-- may contain errors. They are offered on an as-is basis. In --\r
11-- particular, achieving the same results as the tests here is not --\r
12-- a guarantee that an implementation complies with any Standard --\r
13-- or specification. The tests are not exhaustive. --\r
14-- --\r
15-- Please send comments, suggestions, and corrections to the author: --\r
16-- Mike Cowlishaw, IBM Fellow --\r
17-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --\r
18-- mfc@uk.ibm.com --\r
19------------------------------------------------------------------------\r
20version: 2.59\r
21\r
22precision: 16\r
23maxExponent: 384\r
24minExponent: -383\r
25extended: 1\r
26clamp: 1\r
27rounding: half_even\r
28\r
29-- Max |rhs| is 2*(384+16) = 800\r
30\r
31-- Sanity checks\r
32ddscb001 scaleb 7.50 10 -> 7.50E+10\r
33ddscb002 scaleb 7.50 3 -> 7.50E+3\r
34ddscb003 scaleb 7.50 2 -> 750\r
35ddscb004 scaleb 7.50 1 -> 75.0\r
36ddscb005 scaleb 7.50 0 -> 7.50\r
37ddscb006 scaleb 7.50 -1 -> 0.750\r
38ddscb007 scaleb 7.50 -2 -> 0.0750\r
39ddscb008 scaleb 7.50 -10 -> 7.50E-10\r
40ddscb009 scaleb -7.50 3 -> -7.50E+3\r
41ddscb010 scaleb -7.50 2 -> -750\r
42ddscb011 scaleb -7.50 1 -> -75.0\r
43ddscb012 scaleb -7.50 0 -> -7.50\r
44ddscb013 scaleb -7.50 -1 -> -0.750\r
45\r
46-- Infinities\r
47ddscb014 scaleb Infinity 1 -> Infinity\r
48ddscb015 scaleb -Infinity 2 -> -Infinity\r
49ddscb016 scaleb Infinity -1 -> Infinity\r
50ddscb017 scaleb -Infinity -2 -> -Infinity\r
51\r
52-- Next two are somewhat undefined in 754r; treat as non-integer\r
53ddscb018 scaleb 10 Infinity -> NaN Invalid_operation\r
54ddscb019 scaleb 10 -Infinity -> NaN Invalid_operation\r
55\r
56-- NaNs are undefined in 754r; assume usual processing\r
57-- NaNs, 0 payload\r
58ddscb021 scaleb NaN 1 -> NaN\r
59ddscb022 scaleb -NaN -1 -> -NaN\r
60ddscb023 scaleb sNaN 1 -> NaN Invalid_operation\r
61ddscb024 scaleb -sNaN 1 -> -NaN Invalid_operation\r
62ddscb025 scaleb 4 NaN -> NaN\r
63ddscb026 scaleb -Inf -NaN -> -NaN\r
64ddscb027 scaleb 4 sNaN -> NaN Invalid_operation\r
65ddscb028 scaleb Inf -sNaN -> -NaN Invalid_operation\r
66\r
67-- non-integer RHS\r
68ddscb030 scaleb 1.23 1 -> 12.3\r
69ddscb031 scaleb 1.23 1.00 -> NaN Invalid_operation\r
70ddscb032 scaleb 1.23 1.1 -> NaN Invalid_operation\r
71ddscb033 scaleb 1.23 1.01 -> NaN Invalid_operation\r
72ddscb034 scaleb 1.23 0.01 -> NaN Invalid_operation\r
73ddscb035 scaleb 1.23 0.11 -> NaN Invalid_operation\r
74ddscb036 scaleb 1.23 0.999999999 -> NaN Invalid_operation\r
75ddscb037 scaleb 1.23 -1 -> 0.123\r
76ddscb038 scaleb 1.23 -1.00 -> NaN Invalid_operation\r
77ddscb039 scaleb 1.23 -1.1 -> NaN Invalid_operation\r
78ddscb040 scaleb 1.23 -1.01 -> NaN Invalid_operation\r
79ddscb041 scaleb 1.23 -0.01 -> NaN Invalid_operation\r
80ddscb042 scaleb 1.23 -0.11 -> NaN Invalid_operation\r
81ddscb043 scaleb 1.23 -0.999999999 -> NaN Invalid_operation\r
82ddscb044 scaleb 1.23 0.1 -> NaN Invalid_operation\r
83ddscb045 scaleb 1.23 1E+1 -> NaN Invalid_operation\r
84ddscb046 scaleb 1.23 1.1234E+6 -> NaN Invalid_operation\r
85ddscb047 scaleb 1.23 1.123E+4 -> NaN Invalid_operation\r
86\r
87-- out-of range RHS\r
88ddscb120 scaleb 1.23 799 -> Infinity Overflow Inexact Rounded\r
89ddscb121 scaleb 1.23 800 -> Infinity Overflow Inexact Rounded\r
90ddscb122 scaleb 1.23 801 -> NaN Invalid_operation\r
91ddscb123 scaleb 1.23 802 -> NaN Invalid_operation\r
92ddscb124 scaleb 1.23 -799 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped\r
93ddscb125 scaleb 1.23 -800 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped\r
94ddscb126 scaleb 1.23 -801 -> NaN Invalid_operation\r
95ddscb127 scaleb 1.23 -802 -> NaN Invalid_operation\r
96\r
97-- NaNs, non-0 payload\r
98-- propagating NaNs\r
99ddscb861 scaleb NaN01 -Inf -> NaN1\r
100ddscb862 scaleb -NaN02 -1000 -> -NaN2\r
101ddscb863 scaleb NaN03 1000 -> NaN3\r
102ddscb864 scaleb NaN04 Inf -> NaN4\r
103ddscb865 scaleb NaN05 NaN61 -> NaN5\r
104ddscb866 scaleb -Inf -NaN71 -> -NaN71\r
105ddscb867 scaleb -1000 NaN81 -> NaN81\r
106ddscb868 scaleb 1000 NaN91 -> NaN91\r
107ddscb869 scaleb Inf NaN101 -> NaN101\r
108ddscb871 scaleb sNaN011 -Inf -> NaN11 Invalid_operation\r
109ddscb872 scaleb sNaN012 -1000 -> NaN12 Invalid_operation\r
110ddscb873 scaleb -sNaN013 1000 -> -NaN13 Invalid_operation\r
111ddscb874 scaleb sNaN014 NaN171 -> NaN14 Invalid_operation\r
112ddscb875 scaleb sNaN015 sNaN181 -> NaN15 Invalid_operation\r
113ddscb876 scaleb NaN016 sNaN191 -> NaN191 Invalid_operation\r
114ddscb877 scaleb -Inf sNaN201 -> NaN201 Invalid_operation\r
115ddscb878 scaleb -1000 sNaN211 -> NaN211 Invalid_operation\r
116ddscb879 scaleb 1000 -sNaN221 -> -NaN221 Invalid_operation\r
117ddscb880 scaleb Inf sNaN231 -> NaN231 Invalid_operation\r
118ddscb881 scaleb NaN025 sNaN241 -> NaN241 Invalid_operation\r
119\r
120-- finites\r
121ddscb051 scaleb 7 -2 -> 0.07\r
122ddscb052 scaleb -7 -2 -> -0.07\r
123ddscb053 scaleb 75 -2 -> 0.75\r
124ddscb054 scaleb -75 -2 -> -0.75\r
125ddscb055 scaleb 7.50 -2 -> 0.0750\r
126ddscb056 scaleb -7.50 -2 -> -0.0750\r
127ddscb057 scaleb 7.500 -2 -> 0.07500\r
128ddscb058 scaleb -7.500 -2 -> -0.07500\r
129ddscb061 scaleb 7 -1 -> 0.7\r
130ddscb062 scaleb -7 -1 -> -0.7\r
131ddscb063 scaleb 75 -1 -> 7.5\r
132ddscb064 scaleb -75 -1 -> -7.5\r
133ddscb065 scaleb 7.50 -1 -> 0.750\r
134ddscb066 scaleb -7.50 -1 -> -0.750\r
135ddscb067 scaleb 7.500 -1 -> 0.7500\r
136ddscb068 scaleb -7.500 -1 -> -0.7500\r
137ddscb071 scaleb 7 0 -> 7\r
138ddscb072 scaleb -7 0 -> -7\r
139ddscb073 scaleb 75 0 -> 75\r
140ddscb074 scaleb -75 0 -> -75\r
141ddscb075 scaleb 7.50 0 -> 7.50\r
142ddscb076 scaleb -7.50 0 -> -7.50\r
143ddscb077 scaleb 7.500 0 -> 7.500\r
144ddscb078 scaleb -7.500 0 -> -7.500\r
145ddscb081 scaleb 7 1 -> 7E+1\r
146ddscb082 scaleb -7 1 -> -7E+1\r
147ddscb083 scaleb 75 1 -> 7.5E+2\r
148ddscb084 scaleb -75 1 -> -7.5E+2\r
149ddscb085 scaleb 7.50 1 -> 75.0\r
150ddscb086 scaleb -7.50 1 -> -75.0\r
151ddscb087 scaleb 7.500 1 -> 75.00\r
152ddscb088 scaleb -7.500 1 -> -75.00\r
153ddscb091 scaleb 7 2 -> 7E+2\r
154ddscb092 scaleb -7 2 -> -7E+2\r
155ddscb093 scaleb 75 2 -> 7.5E+3\r
156ddscb094 scaleb -75 2 -> -7.5E+3\r
157ddscb095 scaleb 7.50 2 -> 750\r
158ddscb096 scaleb -7.50 2 -> -750\r
159ddscb097 scaleb 7.500 2 -> 750.0\r
160ddscb098 scaleb -7.500 2 -> -750.0\r
161\r
162-- zeros\r
163ddscb111 scaleb 0 1 -> 0E+1\r
164ddscb112 scaleb -0 2 -> -0E+2\r
165ddscb113 scaleb 0E+4 3 -> 0E+7\r
166ddscb114 scaleb -0E+4 4 -> -0E+8\r
167ddscb115 scaleb 0.0000 5 -> 0E+1\r
168ddscb116 scaleb -0.0000 6 -> -0E+2\r
169ddscb117 scaleb 0E-141 7 -> 0E-134\r
170ddscb118 scaleb -0E-141 8 -> -0E-133\r
171\r
172-- Nmax, Nmin, Ntiny\r
173ddscb132 scaleb 9.999999999999999E+384 +384 -> Infinity Overflow Inexact Rounded\r
174ddscb133 scaleb 9.999999999999999E+384 +10 -> Infinity Overflow Inexact Rounded\r
175ddscb134 scaleb 9.999999999999999E+384 +1 -> Infinity Overflow Inexact Rounded\r
176ddscb135 scaleb 9.999999999999999E+384 0 -> 9.999999999999999E+384\r
177ddscb136 scaleb 9.999999999999999E+384 -1 -> 9.999999999999999E+383\r
178ddscb137 scaleb 1E-383 +1 -> 1E-382\r
179ddscb138 scaleb 1E-383 -0 -> 1E-383\r
180ddscb139 scaleb 1E-383 -1 -> 1E-384 Subnormal\r
181ddscb140 scaleb 1.000000000000000E-383 +1 -> 1.000000000000000E-382\r
182ddscb141 scaleb 1.000000000000000E-383 0 -> 1.000000000000000E-383\r
183ddscb142 scaleb 1.000000000000000E-383 -1 -> 1.00000000000000E-384 Subnormal Rounded\r
184ddscb143 scaleb 1E-398 +1 -> 1E-397 Subnormal\r
185ddscb144 scaleb 1E-398 -0 -> 1E-398 Subnormal\r
186ddscb145 scaleb 1E-398 -1 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped\r
187\r
188ddscb150 scaleb -1E-398 +1 -> -1E-397 Subnormal\r
189ddscb151 scaleb -1E-398 -0 -> -1E-398 Subnormal\r
190ddscb152 scaleb -1E-398 -1 -> -0E-398 Underflow Subnormal Inexact Rounded Clamped\r
191ddscb153 scaleb -1.000000000000000E-383 +1 -> -1.000000000000000E-382\r
192ddscb154 scaleb -1.000000000000000E-383 +0 -> -1.000000000000000E-383\r
193ddscb155 scaleb -1.000000000000000E-383 -1 -> -1.00000000000000E-384 Subnormal Rounded\r
194ddscb156 scaleb -1E-383 +1 -> -1E-382\r
195ddscb157 scaleb -1E-383 -0 -> -1E-383\r
196ddscb158 scaleb -1E-383 -1 -> -1E-384 Subnormal\r
197ddscb159 scaleb -9.999999999999999E+384 +1 -> -Infinity Overflow Inexact Rounded\r
198ddscb160 scaleb -9.999999999999999E+384 +0 -> -9.999999999999999E+384\r
199ddscb161 scaleb -9.999999999999999E+384 -1 -> -9.999999999999999E+383\r
200ddscb162 scaleb -9E+384 +1 -> -Infinity Overflow Inexact Rounded\r
201ddscb163 scaleb -1E+384 +1 -> -Infinity Overflow Inexact Rounded\r
202\r
203-- some Origami\r
204-- (these check that overflow is being done correctly)\r
205ddscb171 scaleb 1000E+365 +1 -> 1.000E+369\r
206ddscb172 scaleb 1000E+366 +1 -> 1.000E+370\r
207ddscb173 scaleb 1000E+367 +1 -> 1.000E+371\r
208ddscb174 scaleb 1000E+368 +1 -> 1.000E+372\r
209ddscb175 scaleb 1000E+369 +1 -> 1.0000E+373 Clamped\r
210ddscb176 scaleb 1000E+370 +1 -> 1.00000E+374 Clamped\r
211ddscb177 scaleb 1000E+371 +1 -> 1.000000E+375 Clamped\r
212ddscb178 scaleb 1000E+372 +1 -> 1.0000000E+376 Clamped\r
213ddscb179 scaleb 1000E+373 +1 -> 1.00000000E+377 Clamped\r
214ddscb180 scaleb 1000E+374 +1 -> 1.000000000E+378 Clamped\r
215ddscb181 scaleb 1000E+375 +1 -> 1.0000000000E+379 Clamped\r
216ddscb182 scaleb 1000E+376 +1 -> 1.00000000000E+380 Clamped\r
217ddscb183 scaleb 1000E+377 +1 -> 1.000000000000E+381 Clamped\r
218ddscb184 scaleb 1000E+378 +1 -> 1.0000000000000E+382 Clamped\r
219ddscb185 scaleb 1000E+379 +1 -> 1.00000000000000E+383 Clamped\r
220ddscb186 scaleb 1000E+380 +1 -> 1.000000000000000E+384 Clamped\r
221ddscb187 scaleb 1000E+381 +1 -> Infinity Overflow Inexact Rounded\r
222\r
223-- and a few more subnormal truncations\r
224-- (these check that underflow is being done correctly)\r
225ddscb201 scaleb 1.000000000000000E-383 0 -> 1.000000000000000E-383\r
226ddscb202 scaleb 1.000000000000000E-383 -1 -> 1.00000000000000E-384 Subnormal Rounded\r
227ddscb203 scaleb 1.000000000000000E-383 -2 -> 1.0000000000000E-385 Subnormal Rounded\r
228ddscb204 scaleb 1.000000000000000E-383 -3 -> 1.000000000000E-386 Subnormal Rounded\r
229ddscb205 scaleb 1.000000000000000E-383 -4 -> 1.00000000000E-387 Subnormal Rounded\r
230ddscb206 scaleb 1.000000000000000E-383 -5 -> 1.0000000000E-388 Subnormal Rounded\r
231ddscb207 scaleb 1.000000000000000E-383 -6 -> 1.000000000E-389 Subnormal Rounded\r
232ddscb208 scaleb 1.000000000000000E-383 -7 -> 1.00000000E-390 Subnormal Rounded\r
233ddscb209 scaleb 1.000000000000000E-383 -8 -> 1.0000000E-391 Subnormal Rounded\r
234ddscb210 scaleb 1.000000000000000E-383 -9 -> 1.000000E-392 Subnormal Rounded\r
235ddscb211 scaleb 1.000000000000000E-383 -10 -> 1.00000E-393 Subnormal Rounded\r
236ddscb212 scaleb 1.000000000000000E-383 -11 -> 1.0000E-394 Subnormal Rounded\r
237ddscb213 scaleb 1.000000000000000E-383 -12 -> 1.000E-395 Subnormal Rounded\r
238ddscb214 scaleb 1.000000000000000E-383 -13 -> 1.00E-396 Subnormal Rounded\r
239ddscb215 scaleb 1.000000000000000E-383 -14 -> 1.0E-397 Subnormal Rounded\r
240ddscb216 scaleb 1.000000000000000E-383 -15 -> 1E-398 Subnormal Rounded\r
241ddscb217 scaleb 1.000000000000000E-383 -16 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped\r
242ddscb218 scaleb 1.000000000000000E-383 -17 -> 0E-398 Underflow Subnormal Inexact Rounded Clamped\r
243\r