1
------------------------------------------------------------------------
2
-- rounding.decTest -- decimal rounding modes testcases --
3
-- Copyright (c) IBM Corporation, 1981, 2008. All rights reserved. --
4
------------------------------------------------------------------------
5
-- Please see the document "General Decimal Arithmetic Testcases" --
6
-- at http://www2.hursley.ibm.com/decimal for the description of --
9
-- These testcases are experimental ('beta' versions), and they --
10
-- may contain errors. They are offered on an as-is basis. In --
11
-- particular, achieving the same results as the tests here is not --
12
-- a guarantee that an implementation complies with any Standard --
13
-- or specification. The tests are not exhaustive. --
15
-- Please send comments, suggestions, and corrections to the author: --
16
-- Mike Cowlishaw, IBM Fellow --
17
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
19
------------------------------------------------------------------------
22
-- These tests require that implementations take account of residues in
23
-- order to get correct results for some rounding modes. Rather than
24
-- single rounding tests we therefore need tests for most operators.
25
-- [We do assume add/minus/plus/subtract are common paths, however, as
26
-- is rounding of negatives (if the latter works for addition, assume it
27
-- works for the others, too).]
29
-- Round-for-reround (05UP) is tested as a separate block, mostly for
30
-- 'historical' reasons.
32
-- Underflow Subnormal and overflow behaviours are tested under the
33
-- individual operators.
36
precision: 5 -- for easier visual inspection
40
-- Addition operators -------------------------------------------------
43
radx100 add 12345 -0.1 -> 12344 Inexact Rounded
44
radx101 add 12345 -0.01 -> 12344 Inexact Rounded
45
radx102 add 12345 -0.001 -> 12344 Inexact Rounded
46
radx103 add 12345 -0.00001 -> 12344 Inexact Rounded
47
radx104 add 12345 -0.000001 -> 12344 Inexact Rounded
48
radx105 add 12345 -0.0000001 -> 12344 Inexact Rounded
49
radx106 add 12345 0 -> 12345
50
radx107 add 12345 0.0000001 -> 12345 Inexact Rounded
51
radx108 add 12345 0.000001 -> 12345 Inexact Rounded
52
radx109 add 12345 0.00001 -> 12345 Inexact Rounded
53
radx110 add 12345 0.0001 -> 12345 Inexact Rounded
54
radx111 add 12345 0.001 -> 12345 Inexact Rounded
55
radx112 add 12345 0.01 -> 12345 Inexact Rounded
56
radx113 add 12345 0.1 -> 12345 Inexact Rounded
58
radx115 add 12346 0.49999 -> 12346 Inexact Rounded
59
radx116 add 12346 0.5 -> 12346 Inexact Rounded
60
radx117 add 12346 0.50001 -> 12346 Inexact Rounded
62
radx120 add 12345 0.4 -> 12345 Inexact Rounded
63
radx121 add 12345 0.49 -> 12345 Inexact Rounded
64
radx122 add 12345 0.499 -> 12345 Inexact Rounded
65
radx123 add 12345 0.49999 -> 12345 Inexact Rounded
66
radx124 add 12345 0.5 -> 12345 Inexact Rounded
67
radx125 add 12345 0.50001 -> 12345 Inexact Rounded
68
radx126 add 12345 0.5001 -> 12345 Inexact Rounded
69
radx127 add 12345 0.501 -> 12345 Inexact Rounded
70
radx128 add 12345 0.51 -> 12345 Inexact Rounded
71
radx129 add 12345 0.6 -> 12345 Inexact Rounded
75
radx140 add 12345 -0.1 -> 12345 Inexact Rounded
76
radx141 add 12345 -0.01 -> 12345 Inexact Rounded
77
radx142 add 12345 -0.001 -> 12345 Inexact Rounded
78
radx143 add 12345 -0.00001 -> 12345 Inexact Rounded
79
radx144 add 12345 -0.000001 -> 12345 Inexact Rounded
80
radx145 add 12345 -0.0000001 -> 12345 Inexact Rounded
81
radx146 add 12345 0 -> 12345
82
radx147 add 12345 0.0000001 -> 12345 Inexact Rounded
83
radx148 add 12345 0.000001 -> 12345 Inexact Rounded
84
radx149 add 12345 0.00001 -> 12345 Inexact Rounded
85
radx150 add 12345 0.0001 -> 12345 Inexact Rounded
86
radx151 add 12345 0.001 -> 12345 Inexact Rounded
87
radx152 add 12345 0.01 -> 12345 Inexact Rounded
88
radx153 add 12345 0.1 -> 12345 Inexact Rounded
90
radx155 add 12346 0.49999 -> 12346 Inexact Rounded
91
radx156 add 12346 0.5 -> 12346 Inexact Rounded
92
radx157 add 12346 0.50001 -> 12347 Inexact Rounded
94
radx160 add 12345 0.4 -> 12345 Inexact Rounded
95
radx161 add 12345 0.49 -> 12345 Inexact Rounded
96
radx162 add 12345 0.499 -> 12345 Inexact Rounded
97
radx163 add 12345 0.49999 -> 12345 Inexact Rounded
98
radx164 add 12345 0.5 -> 12345 Inexact Rounded
99
radx165 add 12345 0.50001 -> 12346 Inexact Rounded
100
radx166 add 12345 0.5001 -> 12346 Inexact Rounded
101
radx167 add 12345 0.501 -> 12346 Inexact Rounded
102
radx168 add 12345 0.51 -> 12346 Inexact Rounded
103
radx169 add 12345 0.6 -> 12346 Inexact Rounded
107
radx170 add 12345 -0.1 -> 12345 Inexact Rounded
108
radx171 add 12345 -0.01 -> 12345 Inexact Rounded
109
radx172 add 12345 -0.001 -> 12345 Inexact Rounded
110
radx173 add 12345 -0.00001 -> 12345 Inexact Rounded
111
radx174 add 12345 -0.000001 -> 12345 Inexact Rounded
112
radx175 add 12345 -0.0000001 -> 12345 Inexact Rounded
113
radx176 add 12345 0 -> 12345
114
radx177 add 12345 0.0000001 -> 12345 Inexact Rounded
115
radx178 add 12345 0.000001 -> 12345 Inexact Rounded
116
radx179 add 12345 0.00001 -> 12345 Inexact Rounded
117
radx180 add 12345 0.0001 -> 12345 Inexact Rounded
118
radx181 add 12345 0.001 -> 12345 Inexact Rounded
119
radx182 add 12345 0.01 -> 12345 Inexact Rounded
120
radx183 add 12345 0.1 -> 12345 Inexact Rounded
122
radx185 add 12346 0.49999 -> 12346 Inexact Rounded
123
radx186 add 12346 0.5 -> 12346 Inexact Rounded
124
radx187 add 12346 0.50001 -> 12347 Inexact Rounded
126
radx190 add 12345 0.4 -> 12345 Inexact Rounded
127
radx191 add 12345 0.49 -> 12345 Inexact Rounded
128
radx192 add 12345 0.499 -> 12345 Inexact Rounded
129
radx193 add 12345 0.49999 -> 12345 Inexact Rounded
130
radx194 add 12345 0.5 -> 12346 Inexact Rounded
131
radx195 add 12345 0.50001 -> 12346 Inexact Rounded
132
radx196 add 12345 0.5001 -> 12346 Inexact Rounded
133
radx197 add 12345 0.501 -> 12346 Inexact Rounded
134
radx198 add 12345 0.51 -> 12346 Inexact Rounded
135
radx199 add 12345 0.6 -> 12346 Inexact Rounded
139
radx200 add 12345 -0.1 -> 12345 Inexact Rounded
140
radx201 add 12345 -0.01 -> 12345 Inexact Rounded
141
radx202 add 12345 -0.001 -> 12345 Inexact Rounded
142
radx203 add 12345 -0.00001 -> 12345 Inexact Rounded
143
radx204 add 12345 -0.000001 -> 12345 Inexact Rounded
144
radx205 add 12345 -0.0000001 -> 12345 Inexact Rounded
145
radx206 add 12345 0 -> 12345
146
radx207 add 12345 0.0000001 -> 12345 Inexact Rounded
147
radx208 add 12345 0.000001 -> 12345 Inexact Rounded
148
radx209 add 12345 0.00001 -> 12345 Inexact Rounded
149
radx210 add 12345 0.0001 -> 12345 Inexact Rounded
150
radx211 add 12345 0.001 -> 12345 Inexact Rounded
151
radx212 add 12345 0.01 -> 12345 Inexact Rounded
152
radx213 add 12345 0.1 -> 12345 Inexact Rounded
154
radx215 add 12346 0.49999 -> 12346 Inexact Rounded
155
radx216 add 12346 0.5 -> 12347 Inexact Rounded
156
radx217 add 12346 0.50001 -> 12347 Inexact Rounded
158
radx220 add 12345 0.4 -> 12345 Inexact Rounded
159
radx221 add 12345 0.49 -> 12345 Inexact Rounded
160
radx222 add 12345 0.499 -> 12345 Inexact Rounded
161
radx223 add 12345 0.49999 -> 12345 Inexact Rounded
162
radx224 add 12345 0.5 -> 12346 Inexact Rounded
163
radx225 add 12345 0.50001 -> 12346 Inexact Rounded
164
radx226 add 12345 0.5001 -> 12346 Inexact Rounded
165
radx227 add 12345 0.501 -> 12346 Inexact Rounded
166
radx228 add 12345 0.51 -> 12346 Inexact Rounded
167
radx229 add 12345 0.6 -> 12346 Inexact Rounded
171
radx230 add 12345 -0.1 -> 12345 Inexact Rounded
172
radx231 add 12345 -0.01 -> 12345 Inexact Rounded
173
radx232 add 12345 -0.001 -> 12345 Inexact Rounded
174
radx233 add 12345 -0.00001 -> 12345 Inexact Rounded
175
radx234 add 12345 -0.000001 -> 12345 Inexact Rounded
176
radx235 add 12345 -0.0000001 -> 12345 Inexact Rounded
177
radx236 add 12345 0 -> 12345
178
radx237 add 12345 0.0000001 -> 12346 Inexact Rounded
179
radx238 add 12345 0.000001 -> 12346 Inexact Rounded
180
radx239 add 12345 0.00001 -> 12346 Inexact Rounded
181
radx240 add 12345 0.0001 -> 12346 Inexact Rounded
182
radx241 add 12345 0.001 -> 12346 Inexact Rounded
183
radx242 add 12345 0.01 -> 12346 Inexact Rounded
184
radx243 add 12345 0.1 -> 12346 Inexact Rounded
186
radx245 add 12346 0.49999 -> 12347 Inexact Rounded
187
radx246 add 12346 0.5 -> 12347 Inexact Rounded
188
radx247 add 12346 0.50001 -> 12347 Inexact Rounded
190
radx250 add 12345 0.4 -> 12346 Inexact Rounded
191
radx251 add 12345 0.49 -> 12346 Inexact Rounded
192
radx252 add 12345 0.499 -> 12346 Inexact Rounded
193
radx253 add 12345 0.49999 -> 12346 Inexact Rounded
194
radx254 add 12345 0.5 -> 12346 Inexact Rounded
195
radx255 add 12345 0.50001 -> 12346 Inexact Rounded
196
radx256 add 12345 0.5001 -> 12346 Inexact Rounded
197
radx257 add 12345 0.501 -> 12346 Inexact Rounded
198
radx258 add 12345 0.51 -> 12346 Inexact Rounded
199
radx259 add 12345 0.6 -> 12346 Inexact Rounded
203
radx300 add 12345 -0.1 -> 12344 Inexact Rounded
204
radx301 add 12345 -0.01 -> 12344 Inexact Rounded
205
radx302 add 12345 -0.001 -> 12344 Inexact Rounded
206
radx303 add 12345 -0.00001 -> 12344 Inexact Rounded
207
radx304 add 12345 -0.000001 -> 12344 Inexact Rounded
208
radx305 add 12345 -0.0000001 -> 12344 Inexact Rounded
209
radx306 add 12345 0 -> 12345
210
radx307 add 12345 0.0000001 -> 12345 Inexact Rounded
211
radx308 add 12345 0.000001 -> 12345 Inexact Rounded
212
radx309 add 12345 0.00001 -> 12345 Inexact Rounded
213
radx310 add 12345 0.0001 -> 12345 Inexact Rounded
214
radx311 add 12345 0.001 -> 12345 Inexact Rounded
215
radx312 add 12345 0.01 -> 12345 Inexact Rounded
216
radx313 add 12345 0.1 -> 12345 Inexact Rounded
218
radx315 add 12346 0.49999 -> 12346 Inexact Rounded
219
radx316 add 12346 0.5 -> 12346 Inexact Rounded
220
radx317 add 12346 0.50001 -> 12346 Inexact Rounded
222
radx320 add 12345 0.4 -> 12345 Inexact Rounded
223
radx321 add 12345 0.49 -> 12345 Inexact Rounded
224
radx322 add 12345 0.499 -> 12345 Inexact Rounded
225
radx323 add 12345 0.49999 -> 12345 Inexact Rounded
226
radx324 add 12345 0.5 -> 12345 Inexact Rounded
227
radx325 add 12345 0.50001 -> 12345 Inexact Rounded
228
radx326 add 12345 0.5001 -> 12345 Inexact Rounded
229
radx327 add 12345 0.501 -> 12345 Inexact Rounded
230
radx328 add 12345 0.51 -> 12345 Inexact Rounded
231
radx329 add 12345 0.6 -> 12345 Inexact Rounded
235
radx330 add 12345 -0.1 -> 12345 Inexact Rounded
236
radx331 add 12345 -0.01 -> 12345 Inexact Rounded
237
radx332 add 12345 -0.001 -> 12345 Inexact Rounded
238
radx333 add 12345 -0.00001 -> 12345 Inexact Rounded
239
radx334 add 12345 -0.000001 -> 12345 Inexact Rounded
240
radx335 add 12345 -0.0000001 -> 12345 Inexact Rounded
241
radx336 add 12345 0 -> 12345
242
radx337 add 12345 0.0000001 -> 12346 Inexact Rounded
243
radx338 add 12345 0.000001 -> 12346 Inexact Rounded
244
radx339 add 12345 0.00001 -> 12346 Inexact Rounded
245
radx340 add 12345 0.0001 -> 12346 Inexact Rounded
246
radx341 add 12345 0.001 -> 12346 Inexact Rounded
247
radx342 add 12345 0.01 -> 12346 Inexact Rounded
248
radx343 add 12345 0.1 -> 12346 Inexact Rounded
250
radx345 add 12346 0.49999 -> 12347 Inexact Rounded
251
radx346 add 12346 0.5 -> 12347 Inexact Rounded
252
radx347 add 12346 0.50001 -> 12347 Inexact Rounded
254
radx350 add 12345 0.4 -> 12346 Inexact Rounded
255
radx351 add 12345 0.49 -> 12346 Inexact Rounded
256
radx352 add 12345 0.499 -> 12346 Inexact Rounded
257
radx353 add 12345 0.49999 -> 12346 Inexact Rounded
258
radx354 add 12345 0.5 -> 12346 Inexact Rounded
259
radx355 add 12345 0.50001 -> 12346 Inexact Rounded
260
radx356 add 12345 0.5001 -> 12346 Inexact Rounded
261
radx357 add 12345 0.501 -> 12346 Inexact Rounded
262
radx358 add 12345 0.51 -> 12346 Inexact Rounded
263
radx359 add 12345 0.6 -> 12346 Inexact Rounded
269
rsux100 add -12345 -0.1 -> -12345 Inexact Rounded
270
rsux101 add -12345 -0.01 -> -12345 Inexact Rounded
271
rsux102 add -12345 -0.001 -> -12345 Inexact Rounded
272
rsux103 add -12345 -0.00001 -> -12345 Inexact Rounded
273
rsux104 add -12345 -0.000001 -> -12345 Inexact Rounded
274
rsux105 add -12345 -0.0000001 -> -12345 Inexact Rounded
275
rsux106 add -12345 0 -> -12345
276
rsux107 add -12345 0.0000001 -> -12344 Inexact Rounded
277
rsux108 add -12345 0.000001 -> -12344 Inexact Rounded
278
rsux109 add -12345 0.00001 -> -12344 Inexact Rounded
279
rsux110 add -12345 0.0001 -> -12344 Inexact Rounded
280
rsux111 add -12345 0.001 -> -12344 Inexact Rounded
281
rsux112 add -12345 0.01 -> -12344 Inexact Rounded
282
rsux113 add -12345 0.1 -> -12344 Inexact Rounded
284
rsux115 add -12346 0.49999 -> -12345 Inexact Rounded
285
rsux116 add -12346 0.5 -> -12345 Inexact Rounded
286
rsux117 add -12346 0.50001 -> -12345 Inexact Rounded
288
rsux120 add -12345 0.4 -> -12344 Inexact Rounded
289
rsux121 add -12345 0.49 -> -12344 Inexact Rounded
290
rsux122 add -12345 0.499 -> -12344 Inexact Rounded
291
rsux123 add -12345 0.49999 -> -12344 Inexact Rounded
292
rsux124 add -12345 0.5 -> -12344 Inexact Rounded
293
rsux125 add -12345 0.50001 -> -12344 Inexact Rounded
294
rsux126 add -12345 0.5001 -> -12344 Inexact Rounded
295
rsux127 add -12345 0.501 -> -12344 Inexact Rounded
296
rsux128 add -12345 0.51 -> -12344 Inexact Rounded
297
rsux129 add -12345 0.6 -> -12344 Inexact Rounded
301
rsux140 add -12345 -0.1 -> -12345 Inexact Rounded
302
rsux141 add -12345 -0.01 -> -12345 Inexact Rounded
303
rsux142 add -12345 -0.001 -> -12345 Inexact Rounded
304
rsux143 add -12345 -0.00001 -> -12345 Inexact Rounded
305
rsux144 add -12345 -0.000001 -> -12345 Inexact Rounded
306
rsux145 add -12345 -0.0000001 -> -12345 Inexact Rounded
307
rsux146 add -12345 0 -> -12345
308
rsux147 add -12345 0.0000001 -> -12345 Inexact Rounded
309
rsux148 add -12345 0.000001 -> -12345 Inexact Rounded
310
rsux149 add -12345 0.00001 -> -12345 Inexact Rounded
311
rsux150 add -12345 0.0001 -> -12345 Inexact Rounded
312
rsux151 add -12345 0.001 -> -12345 Inexact Rounded
313
rsux152 add -12345 0.01 -> -12345 Inexact Rounded
314
rsux153 add -12345 0.1 -> -12345 Inexact Rounded
316
rsux155 add -12346 0.49999 -> -12346 Inexact Rounded
317
rsux156 add -12346 0.5 -> -12345 Inexact Rounded
318
rsux157 add -12346 0.50001 -> -12345 Inexact Rounded
320
rsux160 add -12345 0.4 -> -12345 Inexact Rounded
321
rsux161 add -12345 0.49 -> -12345 Inexact Rounded
322
rsux162 add -12345 0.499 -> -12345 Inexact Rounded
323
rsux163 add -12345 0.49999 -> -12345 Inexact Rounded
324
rsux164 add -12345 0.5 -> -12344 Inexact Rounded
325
rsux165 add -12345 0.50001 -> -12344 Inexact Rounded
326
rsux166 add -12345 0.5001 -> -12344 Inexact Rounded
327
rsux167 add -12345 0.501 -> -12344 Inexact Rounded
328
rsux168 add -12345 0.51 -> -12344 Inexact Rounded
329
rsux169 add -12345 0.6 -> -12344 Inexact Rounded
333
rsux170 add -12345 -0.1 -> -12345 Inexact Rounded
334
rsux171 add -12345 -0.01 -> -12345 Inexact Rounded
335
rsux172 add -12345 -0.001 -> -12345 Inexact Rounded
336
rsux173 add -12345 -0.00001 -> -12345 Inexact Rounded
337
rsux174 add -12345 -0.000001 -> -12345 Inexact Rounded
338
rsux175 add -12345 -0.0000001 -> -12345 Inexact Rounded
339
rsux176 add -12345 0 -> -12345
340
rsux177 add -12345 0.0000001 -> -12345 Inexact Rounded
341
rsux178 add -12345 0.000001 -> -12345 Inexact Rounded
342
rsux179 add -12345 0.00001 -> -12345 Inexact Rounded
343
rsux180 add -12345 0.0001 -> -12345 Inexact Rounded
344
rsux181 add -12345 0.001 -> -12345 Inexact Rounded
345
rsux182 add -12345 0.01 -> -12345 Inexact Rounded
346
rsux183 add -12345 0.1 -> -12345 Inexact Rounded
348
rsux185 add -12346 0.49999 -> -12346 Inexact Rounded
349
rsux186 add -12346 0.5 -> -12346 Inexact Rounded
350
rsux187 add -12346 0.50001 -> -12345 Inexact Rounded
352
rsux190 add -12345 0.4 -> -12345 Inexact Rounded
353
rsux191 add -12345 0.49 -> -12345 Inexact Rounded
354
rsux192 add -12345 0.499 -> -12345 Inexact Rounded
355
rsux193 add -12345 0.49999 -> -12345 Inexact Rounded
356
rsux194 add -12345 0.5 -> -12344 Inexact Rounded
357
rsux195 add -12345 0.50001 -> -12344 Inexact Rounded
358
rsux196 add -12345 0.5001 -> -12344 Inexact Rounded
359
rsux197 add -12345 0.501 -> -12344 Inexact Rounded
360
rsux198 add -12345 0.51 -> -12344 Inexact Rounded
361
rsux199 add -12345 0.6 -> -12344 Inexact Rounded
365
rsux200 add -12345 -0.1 -> -12345 Inexact Rounded
366
rsux201 add -12345 -0.01 -> -12345 Inexact Rounded
367
rsux202 add -12345 -0.001 -> -12345 Inexact Rounded
368
rsux203 add -12345 -0.00001 -> -12345 Inexact Rounded
369
rsux204 add -12345 -0.000001 -> -12345 Inexact Rounded
370
rsux205 add -12345 -0.0000001 -> -12345 Inexact Rounded
371
rsux206 add -12345 0 -> -12345
372
rsux207 add -12345 0.0000001 -> -12345 Inexact Rounded
373
rsux208 add -12345 0.000001 -> -12345 Inexact Rounded
374
rsux209 add -12345 0.00001 -> -12345 Inexact Rounded
375
rsux210 add -12345 0.0001 -> -12345 Inexact Rounded
376
rsux211 add -12345 0.001 -> -12345 Inexact Rounded
377
rsux212 add -12345 0.01 -> -12345 Inexact Rounded
378
rsux213 add -12345 0.1 -> -12345 Inexact Rounded
380
rsux215 add -12346 0.49999 -> -12346 Inexact Rounded
381
rsux216 add -12346 0.5 -> -12346 Inexact Rounded
382
rsux217 add -12346 0.50001 -> -12345 Inexact Rounded
384
rsux220 add -12345 0.4 -> -12345 Inexact Rounded
385
rsux221 add -12345 0.49 -> -12345 Inexact Rounded
386
rsux222 add -12345 0.499 -> -12345 Inexact Rounded
387
rsux223 add -12345 0.49999 -> -12345 Inexact Rounded
388
rsux224 add -12345 0.5 -> -12345 Inexact Rounded
389
rsux225 add -12345 0.50001 -> -12344 Inexact Rounded
390
rsux226 add -12345 0.5001 -> -12344 Inexact Rounded
391
rsux227 add -12345 0.501 -> -12344 Inexact Rounded
392
rsux228 add -12345 0.51 -> -12344 Inexact Rounded
393
rsux229 add -12345 0.6 -> -12344 Inexact Rounded
397
rsux230 add -12345 -0.1 -> -12346 Inexact Rounded
398
rsux231 add -12345 -0.01 -> -12346 Inexact Rounded
399
rsux232 add -12345 -0.001 -> -12346 Inexact Rounded
400
rsux233 add -12345 -0.00001 -> -12346 Inexact Rounded
401
rsux234 add -12345 -0.000001 -> -12346 Inexact Rounded
402
rsux235 add -12345 -0.0000001 -> -12346 Inexact Rounded
403
rsux236 add -12345 0 -> -12345
404
rsux237 add -12345 0.0000001 -> -12345 Inexact Rounded
405
rsux238 add -12345 0.000001 -> -12345 Inexact Rounded
406
rsux239 add -12345 0.00001 -> -12345 Inexact Rounded
407
rsux240 add -12345 0.0001 -> -12345 Inexact Rounded
408
rsux241 add -12345 0.001 -> -12345 Inexact Rounded
409
rsux242 add -12345 0.01 -> -12345 Inexact Rounded
410
rsux243 add -12345 0.1 -> -12345 Inexact Rounded
412
rsux245 add -12346 0.49999 -> -12346 Inexact Rounded
413
rsux246 add -12346 0.5 -> -12346 Inexact Rounded
414
rsux247 add -12346 0.50001 -> -12346 Inexact Rounded
416
rsux250 add -12345 0.4 -> -12345 Inexact Rounded
417
rsux251 add -12345 0.49 -> -12345 Inexact Rounded
418
rsux252 add -12345 0.499 -> -12345 Inexact Rounded
419
rsux253 add -12345 0.49999 -> -12345 Inexact Rounded
420
rsux254 add -12345 0.5 -> -12345 Inexact Rounded
421
rsux255 add -12345 0.50001 -> -12345 Inexact Rounded
422
rsux256 add -12345 0.5001 -> -12345 Inexact Rounded
423
rsux257 add -12345 0.501 -> -12345 Inexact Rounded
424
rsux258 add -12345 0.51 -> -12345 Inexact Rounded
425
rsux259 add -12345 0.6 -> -12345 Inexact Rounded
429
rsux300 add -12345 -0.1 -> -12346 Inexact Rounded
430
rsux301 add -12345 -0.01 -> -12346 Inexact Rounded
431
rsux302 add -12345 -0.001 -> -12346 Inexact Rounded
432
rsux303 add -12345 -0.00001 -> -12346 Inexact Rounded
433
rsux304 add -12345 -0.000001 -> -12346 Inexact Rounded
434
rsux305 add -12345 -0.0000001 -> -12346 Inexact Rounded
435
rsux306 add -12345 0 -> -12345
436
rsux307 add -12345 0.0000001 -> -12345 Inexact Rounded
437
rsux308 add -12345 0.000001 -> -12345 Inexact Rounded
438
rsux309 add -12345 0.00001 -> -12345 Inexact Rounded
439
rsux310 add -12345 0.0001 -> -12345 Inexact Rounded
440
rsux311 add -12345 0.001 -> -12345 Inexact Rounded
441
rsux312 add -12345 0.01 -> -12345 Inexact Rounded
442
rsux313 add -12345 0.1 -> -12345 Inexact Rounded
444
rsux315 add -12346 0.49999 -> -12346 Inexact Rounded
445
rsux316 add -12346 0.5 -> -12346 Inexact Rounded
446
rsux317 add -12346 0.50001 -> -12346 Inexact Rounded
448
rsux320 add -12345 0.4 -> -12345 Inexact Rounded
449
rsux321 add -12345 0.49 -> -12345 Inexact Rounded
450
rsux322 add -12345 0.499 -> -12345 Inexact Rounded
451
rsux323 add -12345 0.49999 -> -12345 Inexact Rounded
452
rsux324 add -12345 0.5 -> -12345 Inexact Rounded
453
rsux325 add -12345 0.50001 -> -12345 Inexact Rounded
454
rsux326 add -12345 0.5001 -> -12345 Inexact Rounded
455
rsux327 add -12345 0.501 -> -12345 Inexact Rounded
456
rsux328 add -12345 0.51 -> -12345 Inexact Rounded
457
rsux329 add -12345 0.6 -> -12345 Inexact Rounded
461
rsux330 add -12345 -0.1 -> -12345 Inexact Rounded
462
rsux331 add -12345 -0.01 -> -12345 Inexact Rounded
463
rsux332 add -12345 -0.001 -> -12345 Inexact Rounded
464
rsux333 add -12345 -0.00001 -> -12345 Inexact Rounded
465
rsux334 add -12345 -0.000001 -> -12345 Inexact Rounded
466
rsux335 add -12345 -0.0000001 -> -12345 Inexact Rounded
467
rsux336 add -12345 0 -> -12345
468
rsux337 add -12345 0.0000001 -> -12344 Inexact Rounded
469
rsux338 add -12345 0.000001 -> -12344 Inexact Rounded
470
rsux339 add -12345 0.00001 -> -12344 Inexact Rounded
471
rsux340 add -12345 0.0001 -> -12344 Inexact Rounded
472
rsux341 add -12345 0.001 -> -12344 Inexact Rounded
473
rsux342 add -12345 0.01 -> -12344 Inexact Rounded
474
rsux343 add -12345 0.1 -> -12344 Inexact Rounded
476
rsux345 add -12346 0.49999 -> -12345 Inexact Rounded
477
rsux346 add -12346 0.5 -> -12345 Inexact Rounded
478
rsux347 add -12346 0.50001 -> -12345 Inexact Rounded
480
rsux350 add -12345 0.4 -> -12344 Inexact Rounded
481
rsux351 add -12345 0.49 -> -12344 Inexact Rounded
482
rsux352 add -12345 0.499 -> -12344 Inexact Rounded
483
rsux353 add -12345 0.49999 -> -12344 Inexact Rounded
484
rsux354 add -12345 0.5 -> -12344 Inexact Rounded
485
rsux355 add -12345 0.50001 -> -12344 Inexact Rounded
486
rsux356 add -12345 0.5001 -> -12344 Inexact Rounded
487
rsux357 add -12345 0.501 -> -12344 Inexact Rounded
488
rsux358 add -12345 0.51 -> -12344 Inexact Rounded
489
rsux359 add -12345 0.6 -> -12344 Inexact Rounded
491
-- Check cancellation subtractions
492
-- (The IEEE 854 'curious rule' in $6.3)
496
rzex002 add 0 -0 -> 0
497
rzex003 add -0 0 -> 0
498
rzex004 add -0 -0 -> -0
499
rzex005 add 1 -1 -> 0
500
rzex006 add -1 1 -> 0
501
rzex007 add 1.5 -1.5 -> 0.0
502
rzex008 add -1.5 1.5 -> 0.0
503
rzex009 add 2 -2 -> 0
504
rzex010 add -2 2 -> 0
508
rzex012 add 0 -0 -> 0
509
rzex013 add -0 0 -> 0
510
rzex014 add -0 -0 -> -0
511
rzex015 add 1 -1 -> 0
512
rzex016 add -1 1 -> 0
513
rzex017 add 1.5 -1.5 -> 0.0
514
rzex018 add -1.5 1.5 -> 0.0
515
rzex019 add 2 -2 -> 0
516
rzex020 add -2 2 -> 0
520
rzex022 add 0 -0 -> 0
521
rzex023 add -0 0 -> 0
522
rzex024 add -0 -0 -> -0
523
rzex025 add 1 -1 -> 0
524
rzex026 add -1 1 -> 0
525
rzex027 add 1.5 -1.5 -> 0.0
526
rzex028 add -1.5 1.5 -> 0.0
527
rzex029 add 2 -2 -> 0
528
rzex030 add -2 2 -> 0
532
rzex032 add 0 -0 -> 0
533
rzex033 add -0 0 -> 0
534
rzex034 add -0 -0 -> -0
535
rzex035 add 1 -1 -> 0
536
rzex036 add -1 1 -> 0
537
rzex037 add 1.5 -1.5 -> 0.0
538
rzex038 add -1.5 1.5 -> 0.0
539
rzex039 add 2 -2 -> 0
540
rzex040 add -2 2 -> 0
544
rzex042 add 0 -0 -> 0
545
rzex043 add -0 0 -> 0
546
rzex044 add -0 -0 -> -0
547
rzex045 add 1 -1 -> 0
548
rzex046 add -1 1 -> 0
549
rzex047 add 1.5 -1.5 -> 0.0
550
rzex048 add -1.5 1.5 -> 0.0
551
rzex049 add 2 -2 -> 0
552
rzex050 add -2 2 -> 0
556
rzex052 add 0 -0 -> -0 -- here are two 'curious'
557
rzex053 add -0 0 -> -0 --
558
rzex054 add -0 -0 -> -0
559
rzex055 add 1 -1 -> -0 -- here are the rest
560
rzex056 add -1 1 -> -0 -- ..
561
rzex057 add 1.5 -1.5 -> -0.0 -- ..
562
rzex058 add -1.5 1.5 -> -0.0 -- ..
563
rzex059 add 2 -2 -> -0 -- ..
564
rzex060 add -2 2 -> -0 -- ..
568
rzex062 add 0 -0 -> 0
569
rzex063 add -0 0 -> 0
570
rzex064 add -0 -0 -> -0
571
rzex065 add 1 -1 -> 0
572
rzex066 add -1 1 -> 0
573
rzex067 add 1.5 -1.5 -> 0.0
574
rzex068 add -1.5 1.5 -> 0.0
575
rzex069 add 2 -2 -> 0
576
rzex070 add -2 2 -> 0
579
-- Division operators -------------------------------------------------
582
rdvx101 divide 12345 1 -> 12345
583
rdvx102 divide 12345 1.0001 -> 12343 Inexact Rounded
584
rdvx103 divide 12345 1.001 -> 12332 Inexact Rounded
585
rdvx104 divide 12345 1.01 -> 12222 Inexact Rounded
586
rdvx105 divide 12345 1.1 -> 11222 Inexact Rounded
587
rdvx106 divide 12355 4 -> 3088.7 Inexact Rounded
588
rdvx107 divide 12345 4 -> 3086.2 Inexact Rounded
589
rdvx108 divide 12355 4.0001 -> 3088.6 Inexact Rounded
590
rdvx109 divide 12345 4.0001 -> 3086.1 Inexact Rounded
591
rdvx110 divide 12345 4.9 -> 2519.3 Inexact Rounded
592
rdvx111 divide 12345 4.99 -> 2473.9 Inexact Rounded
593
rdvx112 divide 12345 4.999 -> 2469.4 Inexact Rounded
594
rdvx113 divide 12345 4.9999 -> 2469.0 Inexact Rounded
595
rdvx114 divide 12345 5 -> 2469
596
rdvx115 divide 12345 5.0001 -> 2468.9 Inexact Rounded
597
rdvx116 divide 12345 5.001 -> 2468.5 Inexact Rounded
598
rdvx117 divide 12345 5.01 -> 2464.0 Inexact Rounded
599
rdvx118 divide 12345 5.1 -> 2420.5 Inexact Rounded
602
rdvx201 divide 12345 1 -> 12345
603
rdvx202 divide 12345 1.0001 -> 12344 Inexact Rounded
604
rdvx203 divide 12345 1.001 -> 12333 Inexact Rounded
605
rdvx204 divide 12345 1.01 -> 12223 Inexact Rounded
606
rdvx205 divide 12345 1.1 -> 11223 Inexact Rounded
607
rdvx206 divide 12355 4 -> 3088.7 Inexact Rounded
608
rdvx207 divide 12345 4 -> 3086.2 Inexact Rounded
609
rdvx208 divide 12355 4.0001 -> 3088.7 Inexact Rounded
610
rdvx209 divide 12345 4.0001 -> 3086.2 Inexact Rounded
611
rdvx210 divide 12345 4.9 -> 2519.4 Inexact Rounded
612
rdvx211 divide 12345 4.99 -> 2473.9 Inexact Rounded
613
rdvx212 divide 12345 4.999 -> 2469.5 Inexact Rounded
614
rdvx213 divide 12345 4.9999 -> 2469.0 Inexact Rounded
615
rdvx214 divide 12345 5 -> 2469
616
rdvx215 divide 12345 5.0001 -> 2469.0 Inexact Rounded
617
rdvx216 divide 12345 5.001 -> 2468.5 Inexact Rounded
618
rdvx217 divide 12345 5.01 -> 2464.1 Inexact Rounded
619
rdvx218 divide 12345 5.1 -> 2420.6 Inexact Rounded
622
rdvx301 divide 12345 1 -> 12345
623
rdvx302 divide 12345 1.0001 -> 12344 Inexact Rounded
624
rdvx303 divide 12345 1.001 -> 12333 Inexact Rounded
625
rdvx304 divide 12345 1.01 -> 12223 Inexact Rounded
626
rdvx305 divide 12345 1.1 -> 11223 Inexact Rounded
627
rdvx306 divide 12355 4 -> 3088.8 Inexact Rounded
628
rdvx307 divide 12345 4 -> 3086.2 Inexact Rounded
629
rdvx308 divide 12355 4.0001 -> 3088.7 Inexact Rounded
630
rdvx309 divide 12345 4.0001 -> 3086.2 Inexact Rounded
631
rdvx310 divide 12345 4.9 -> 2519.4 Inexact Rounded
632
rdvx311 divide 12345 4.99 -> 2473.9 Inexact Rounded
633
rdvx312 divide 12345 4.999 -> 2469.5 Inexact Rounded
634
rdvx313 divide 12345 4.9999 -> 2469.0 Inexact Rounded
635
rdvx314 divide 12345 5 -> 2469
636
rdvx315 divide 12345 5.0001 -> 2469.0 Inexact Rounded
637
rdvx316 divide 12345 5.001 -> 2468.5 Inexact Rounded
638
rdvx317 divide 12345 5.01 -> 2464.1 Inexact Rounded
639
rdvx318 divide 12345 5.1 -> 2420.6 Inexact Rounded
642
rdvx401 divide 12345 1 -> 12345
643
rdvx402 divide 12345 1.0001 -> 12344 Inexact Rounded
644
rdvx403 divide 12345 1.001 -> 12333 Inexact Rounded
645
rdvx404 divide 12345 1.01 -> 12223 Inexact Rounded
646
rdvx405 divide 12345 1.1 -> 11223 Inexact Rounded
647
rdvx406 divide 12355 4 -> 3088.8 Inexact Rounded
648
rdvx407 divide 12345 4 -> 3086.3 Inexact Rounded
649
rdvx408 divide 12355 4.0001 -> 3088.7 Inexact Rounded
650
rdvx409 divide 12345 4.0001 -> 3086.2 Inexact Rounded
651
rdvx410 divide 12345 4.9 -> 2519.4 Inexact Rounded
652
rdvx411 divide 12345 4.99 -> 2473.9 Inexact Rounded
653
rdvx412 divide 12345 4.999 -> 2469.5 Inexact Rounded
654
rdvx413 divide 12345 4.9999 -> 2469.0 Inexact Rounded
655
rdvx414 divide 12345 5 -> 2469
656
rdvx415 divide 12345 5.0001 -> 2469.0 Inexact Rounded
657
rdvx416 divide 12345 5.001 -> 2468.5 Inexact Rounded
658
rdvx417 divide 12345 5.01 -> 2464.1 Inexact Rounded
659
rdvx418 divide 12345 5.1 -> 2420.6 Inexact Rounded
662
rdvx501 divide 12345 1 -> 12345
663
rdvx502 divide 12345 1.0001 -> 12344 Inexact Rounded
664
rdvx503 divide 12345 1.001 -> 12333 Inexact Rounded
665
rdvx504 divide 12345 1.01 -> 12223 Inexact Rounded
666
rdvx505 divide 12345 1.1 -> 11223 Inexact Rounded
667
rdvx506 divide 12355 4 -> 3088.8 Inexact Rounded
668
rdvx507 divide 12345 4 -> 3086.3 Inexact Rounded
669
rdvx508 divide 12355 4.0001 -> 3088.7 Inexact Rounded
670
rdvx509 divide 12345 4.0001 -> 3086.2 Inexact Rounded
671
rdvx510 divide 12345 4.9 -> 2519.4 Inexact Rounded
672
rdvx511 divide 12345 4.99 -> 2474.0 Inexact Rounded
673
rdvx512 divide 12345 4.999 -> 2469.5 Inexact Rounded
674
rdvx513 divide 12345 4.9999 -> 2469.1 Inexact Rounded
675
rdvx514 divide 12345 5 -> 2469
676
rdvx515 divide 12345 5.0001 -> 2469.0 Inexact Rounded
677
rdvx516 divide 12345 5.001 -> 2468.6 Inexact Rounded
678
rdvx517 divide 12345 5.01 -> 2464.1 Inexact Rounded
679
rdvx518 divide 12345 5.1 -> 2420.6 Inexact Rounded
682
rdvx601 divide 12345 1 -> 12345
683
rdvx602 divide 12345 1.0001 -> 12343 Inexact Rounded
684
rdvx603 divide 12345 1.001 -> 12332 Inexact Rounded
685
rdvx604 divide 12345 1.01 -> 12222 Inexact Rounded
686
rdvx605 divide 12345 1.1 -> 11222 Inexact Rounded
687
rdvx606 divide 12355 4 -> 3088.7 Inexact Rounded
688
rdvx607 divide 12345 4 -> 3086.2 Inexact Rounded
689
rdvx608 divide 12355 4.0001 -> 3088.6 Inexact Rounded
690
rdvx609 divide 12345 4.0001 -> 3086.1 Inexact Rounded
691
rdvx610 divide 12345 4.9 -> 2519.3 Inexact Rounded
692
rdvx611 divide 12345 4.99 -> 2473.9 Inexact Rounded
693
rdvx612 divide 12345 4.999 -> 2469.4 Inexact Rounded
694
rdvx613 divide 12345 4.9999 -> 2469.0 Inexact Rounded
695
rdvx614 divide 12345 5 -> 2469
696
rdvx615 divide 12345 5.0001 -> 2468.9 Inexact Rounded
697
rdvx616 divide 12345 5.001 -> 2468.5 Inexact Rounded
698
rdvx617 divide 12345 5.01 -> 2464.0 Inexact Rounded
699
rdvx618 divide 12345 5.1 -> 2420.5 Inexact Rounded
702
rdvx701 divide 12345 1 -> 12345
703
rdvx702 divide 12345 1.0001 -> 12344 Inexact Rounded
704
rdvx703 divide 12345 1.001 -> 12333 Inexact Rounded
705
rdvx704 divide 12345 1.01 -> 12223 Inexact Rounded
706
rdvx705 divide 12345 1.1 -> 11223 Inexact Rounded
707
rdvx706 divide 12355 4 -> 3088.8 Inexact Rounded
708
rdvx707 divide 12345 4 -> 3086.3 Inexact Rounded
709
rdvx708 divide 12355 4.0001 -> 3088.7 Inexact Rounded
710
rdvx709 divide 12345 4.0001 -> 3086.2 Inexact Rounded
711
rdvx710 divide 12345 4.9 -> 2519.4 Inexact Rounded
712
rdvx711 divide 12345 4.99 -> 2474.0 Inexact Rounded
713
rdvx712 divide 12345 4.999 -> 2469.5 Inexact Rounded
714
rdvx713 divide 12345 4.9999 -> 2469.1 Inexact Rounded
715
rdvx714 divide 12345 5 -> 2469
716
rdvx715 divide 12345 5.0001 -> 2469.0 Inexact Rounded
717
rdvx716 divide 12345 5.001 -> 2468.6 Inexact Rounded
718
rdvx717 divide 12345 5.01 -> 2464.1 Inexact Rounded
719
rdvx718 divide 12345 5.1 -> 2420.6 Inexact Rounded
721
-- [divideInteger and remainder unaffected]
723
-- Multiplication operator --------------------------------------------
726
rmux101 multiply 12345 1 -> 12345
727
rmux102 multiply 12345 1.0001 -> 12346 Inexact Rounded
728
rmux103 multiply 12345 1.001 -> 12357 Inexact Rounded
729
rmux104 multiply 12345 1.01 -> 12468 Inexact Rounded
730
rmux105 multiply 12345 1.1 -> 13579 Inexact Rounded
731
rmux106 multiply 12345 4 -> 49380
732
rmux107 multiply 12345 4.0001 -> 49381 Inexact Rounded
733
rmux108 multiply 12345 4.9 -> 60490 Inexact Rounded
734
rmux109 multiply 12345 4.99 -> 61601 Inexact Rounded
735
rmux110 multiply 12345 4.999 -> 61712 Inexact Rounded
736
rmux111 multiply 12345 4.9999 -> 61723 Inexact Rounded
737
rmux112 multiply 12345 5 -> 61725
738
rmux113 multiply 12345 5.0001 -> 61726 Inexact Rounded
739
rmux114 multiply 12345 5.001 -> 61737 Inexact Rounded
740
rmux115 multiply 12345 5.01 -> 61848 Inexact Rounded
741
rmux116 multiply 12345 12 -> 1.4814E+5 Rounded
742
rmux117 multiply 12345 13 -> 1.6048E+5 Inexact Rounded
743
rmux118 multiply 12355 12 -> 1.4826E+5 Rounded
744
rmux119 multiply 12355 13 -> 1.6061E+5 Inexact Rounded
747
rmux201 multiply 12345 1 -> 12345
748
rmux202 multiply 12345 1.0001 -> 12346 Inexact Rounded
749
rmux203 multiply 12345 1.001 -> 12357 Inexact Rounded
750
rmux204 multiply 12345 1.01 -> 12468 Inexact Rounded
751
rmux205 multiply 12345 1.1 -> 13579 Inexact Rounded
752
rmux206 multiply 12345 4 -> 49380
753
rmux207 multiply 12345 4.0001 -> 49381 Inexact Rounded
754
rmux208 multiply 12345 4.9 -> 60490 Inexact Rounded
755
rmux209 multiply 12345 4.99 -> 61602 Inexact Rounded
756
rmux210 multiply 12345 4.999 -> 61713 Inexact Rounded
757
rmux211 multiply 12345 4.9999 -> 61724 Inexact Rounded
758
rmux212 multiply 12345 5 -> 61725
759
rmux213 multiply 12345 5.0001 -> 61726 Inexact Rounded
760
rmux214 multiply 12345 5.001 -> 61737 Inexact Rounded
761
rmux215 multiply 12345 5.01 -> 61848 Inexact Rounded
762
rmux216 multiply 12345 12 -> 1.4814E+5 Rounded
763
rmux217 multiply 12345 13 -> 1.6048E+5 Inexact Rounded
764
rmux218 multiply 12355 12 -> 1.4826E+5 Rounded
765
rmux219 multiply 12355 13 -> 1.6061E+5 Inexact Rounded
768
rmux301 multiply 12345 1 -> 12345
769
rmux302 multiply 12345 1.0001 -> 12346 Inexact Rounded
770
rmux303 multiply 12345 1.001 -> 12357 Inexact Rounded
771
rmux304 multiply 12345 1.01 -> 12468 Inexact Rounded
772
rmux305 multiply 12345 1.1 -> 13580 Inexact Rounded
773
rmux306 multiply 12345 4 -> 49380
774
rmux307 multiply 12345 4.0001 -> 49381 Inexact Rounded
775
rmux308 multiply 12345 4.9 -> 60490 Inexact Rounded
776
rmux309 multiply 12345 4.99 -> 61602 Inexact Rounded
777
rmux310 multiply 12345 4.999 -> 61713 Inexact Rounded
778
rmux311 multiply 12345 4.9999 -> 61724 Inexact Rounded
779
rmux312 multiply 12345 5 -> 61725
780
rmux313 multiply 12345 5.0001 -> 61726 Inexact Rounded
781
rmux314 multiply 12345 5.001 -> 61737 Inexact Rounded
782
rmux315 multiply 12345 5.01 -> 61848 Inexact Rounded
783
rmux316 multiply 12345 12 -> 1.4814E+5 Rounded
784
rmux317 multiply 12345 13 -> 1.6048E+5 Inexact Rounded
785
rmux318 multiply 12355 12 -> 1.4826E+5 Rounded
786
rmux319 multiply 12355 13 -> 1.6062E+5 Inexact Rounded
789
rmux401 multiply 12345 1 -> 12345
790
rmux402 multiply 12345 1.0001 -> 12346 Inexact Rounded
791
rmux403 multiply 12345 1.001 -> 12357 Inexact Rounded
792
rmux404 multiply 12345 1.01 -> 12468 Inexact Rounded
793
rmux405 multiply 12345 1.1 -> 13580 Inexact Rounded
794
rmux406 multiply 12345 4 -> 49380
795
rmux407 multiply 12345 4.0001 -> 49381 Inexact Rounded
796
rmux408 multiply 12345 4.9 -> 60491 Inexact Rounded
797
rmux409 multiply 12345 4.99 -> 61602 Inexact Rounded
798
rmux410 multiply 12345 4.999 -> 61713 Inexact Rounded
799
rmux411 multiply 12345 4.9999 -> 61724 Inexact Rounded
800
rmux412 multiply 12345 5 -> 61725
801
rmux413 multiply 12345 5.0001 -> 61726 Inexact Rounded
802
rmux414 multiply 12345 5.001 -> 61737 Inexact Rounded
803
rmux415 multiply 12345 5.01 -> 61848 Inexact Rounded
804
rmux416 multiply 12345 12 -> 1.4814E+5 Rounded
805
rmux417 multiply 12345 13 -> 1.6049E+5 Inexact Rounded
806
rmux418 multiply 12355 12 -> 1.4826E+5 Rounded
807
rmux419 multiply 12355 13 -> 1.6062E+5 Inexact Rounded
810
rmux501 multiply 12345 1 -> 12345
811
rmux502 multiply 12345 1.0001 -> 12347 Inexact Rounded
812
rmux503 multiply 12345 1.001 -> 12358 Inexact Rounded
813
rmux504 multiply 12345 1.01 -> 12469 Inexact Rounded
814
rmux505 multiply 12345 1.1 -> 13580 Inexact Rounded
815
rmux506 multiply 12345 4 -> 49380
816
rmux507 multiply 12345 4.0001 -> 49382 Inexact Rounded
817
rmux508 multiply 12345 4.9 -> 60491 Inexact Rounded
818
rmux509 multiply 12345 4.99 -> 61602 Inexact Rounded
819
rmux510 multiply 12345 4.999 -> 61713 Inexact Rounded
820
rmux511 multiply 12345 4.9999 -> 61724 Inexact Rounded
821
rmux512 multiply 12345 5 -> 61725
822
rmux513 multiply 12345 5.0001 -> 61727 Inexact Rounded
823
rmux514 multiply 12345 5.001 -> 61738 Inexact Rounded
824
rmux515 multiply 12345 5.01 -> 61849 Inexact Rounded
825
rmux516 multiply 12345 12 -> 1.4814E+5 Rounded
826
rmux517 multiply 12345 13 -> 1.6049E+5 Inexact Rounded
827
rmux518 multiply 12355 12 -> 1.4826E+5 Rounded
828
rmux519 multiply 12355 13 -> 1.6062E+5 Inexact Rounded
829
-- [rmux516 & rmux518] can surprise
832
rmux601 multiply 12345 1 -> 12345
833
rmux602 multiply 12345 1.0001 -> 12346 Inexact Rounded
834
rmux603 multiply 12345 1.001 -> 12357 Inexact Rounded
835
rmux604 multiply 12345 1.01 -> 12468 Inexact Rounded
836
rmux605 multiply 12345 1.1 -> 13579 Inexact Rounded
837
rmux606 multiply 12345 4 -> 49380
838
rmux607 multiply 12345 4.0001 -> 49381 Inexact Rounded
839
rmux608 multiply 12345 4.9 -> 60490 Inexact Rounded
840
rmux609 multiply 12345 4.99 -> 61601 Inexact Rounded
841
rmux610 multiply 12345 4.999 -> 61712 Inexact Rounded
842
rmux611 multiply 12345 4.9999 -> 61723 Inexact Rounded
843
rmux612 multiply 12345 5 -> 61725
844
rmux613 multiply 12345 5.0001 -> 61726 Inexact Rounded
845
rmux614 multiply 12345 5.001 -> 61737 Inexact Rounded
846
rmux615 multiply 12345 5.01 -> 61848 Inexact Rounded
847
rmux616 multiply 12345 12 -> 1.4814E+5 Rounded
848
rmux617 multiply 12345 13 -> 1.6048E+5 Inexact Rounded
849
rmux618 multiply 12355 12 -> 1.4826E+5 Rounded
850
rmux619 multiply 12355 13 -> 1.6061E+5 Inexact Rounded
853
rmux701 multiply 12345 1 -> 12345
854
rmux702 multiply 12345 1.0001 -> 12347 Inexact Rounded
855
rmux703 multiply 12345 1.001 -> 12358 Inexact Rounded
856
rmux704 multiply 12345 1.01 -> 12469 Inexact Rounded
857
rmux705 multiply 12345 1.1 -> 13580 Inexact Rounded
858
rmux706 multiply 12345 4 -> 49380
859
rmux707 multiply 12345 4.0001 -> 49382 Inexact Rounded
860
rmux708 multiply 12345 4.9 -> 60491 Inexact Rounded
861
rmux709 multiply 12345 4.99 -> 61602 Inexact Rounded
862
rmux710 multiply 12345 4.999 -> 61713 Inexact Rounded
863
rmux711 multiply 12345 4.9999 -> 61724 Inexact Rounded
864
rmux712 multiply 12345 5 -> 61725
865
rmux713 multiply 12345 5.0001 -> 61727 Inexact Rounded
866
rmux714 multiply 12345 5.001 -> 61738 Inexact Rounded
867
rmux715 multiply 12345 5.01 -> 61849 Inexact Rounded
868
rmux716 multiply 12345 12 -> 1.4814E+5 Rounded
869
rmux717 multiply 12345 13 -> 1.6049E+5 Inexact Rounded
870
rmux718 multiply 12355 12 -> 1.4826E+5 Rounded
871
rmux719 multiply 12355 13 -> 1.6062E+5 Inexact Rounded
873
-- Power operator -----------------------------------------------------
876
rpox101 power 12345 -5 -> 3.4877E-21 Inexact Rounded
877
rpox102 power 12345 -4 -> 4.3056E-17 Inexact Rounded
878
rpox103 power 12345 -3 -> 5.3152E-13 Inexact Rounded
879
rpox104 power 12345 -2 -> 6.5617E-9 Inexact Rounded
880
rpox105 power 12345 -1 -> 0.000081004 Inexact Rounded
881
rpox106 power 12345 0 -> 1
882
rpox107 power 12345 1 -> 12345
883
rpox108 power 12345 2 -> 1.5239E+8 Inexact Rounded
884
rpox109 power 12345 3 -> 1.8813E+12 Inexact Rounded
885
rpox110 power 12345 4 -> 2.3225E+16 Inexact Rounded
886
rpox111 power 12345 5 -> 2.8671E+20 Inexact Rounded
887
rpox112 power 415 2 -> 1.7222E+5 Inexact Rounded
888
rpox113 power 75 3 -> 4.2187E+5 Inexact Rounded
891
rpox201 power 12345 -5 -> 3.4877E-21 Inexact Rounded
892
rpox202 power 12345 -4 -> 4.3056E-17 Inexact Rounded
893
rpox203 power 12345 -3 -> 5.3153E-13 Inexact Rounded
894
rpox204 power 12345 -2 -> 6.5617E-9 Inexact Rounded
895
rpox205 power 12345 -1 -> 0.000081004 Inexact Rounded
896
rpox206 power 12345 0 -> 1
897
rpox207 power 12345 1 -> 12345
898
rpox208 power 12345 2 -> 1.5240E+8 Inexact Rounded
899
rpox209 power 12345 3 -> 1.8814E+12 Inexact Rounded
900
rpox210 power 12345 4 -> 2.3225E+16 Inexact Rounded
901
rpox211 power 12345 5 -> 2.8672E+20 Inexact Rounded
902
rpox212 power 415 2 -> 1.7222E+5 Inexact Rounded
903
rpox213 power 75 3 -> 4.2187E+5 Inexact Rounded
906
rpox301 power 12345 -5 -> 3.4877E-21 Inexact Rounded
907
rpox302 power 12345 -4 -> 4.3056E-17 Inexact Rounded
908
rpox303 power 12345 -3 -> 5.3153E-13 Inexact Rounded
909
rpox304 power 12345 -2 -> 6.5617E-9 Inexact Rounded
910
rpox305 power 12345 -1 -> 0.000081004 Inexact Rounded
911
rpox306 power 12345 0 -> 1
912
rpox307 power 12345 1 -> 12345
913
rpox308 power 12345 2 -> 1.5240E+8 Inexact Rounded
914
rpox309 power 12345 3 -> 1.8814E+12 Inexact Rounded
915
rpox310 power 12345 4 -> 2.3225E+16 Inexact Rounded
916
rpox311 power 12345 5 -> 2.8672E+20 Inexact Rounded
917
rpox312 power 415 2 -> 1.7222E+5 Inexact Rounded
918
rpox313 power 75 3 -> 4.2188E+5 Inexact Rounded
921
rpox401 power 12345 -5 -> 3.4877E-21 Inexact Rounded
922
rpox402 power 12345 -4 -> 4.3056E-17 Inexact Rounded
923
rpox403 power 12345 -3 -> 5.3153E-13 Inexact Rounded
924
rpox404 power 12345 -2 -> 6.5617E-9 Inexact Rounded
925
rpox405 power 12345 -1 -> 0.000081004 Inexact Rounded
926
rpox406 power 12345 0 -> 1
927
rpox407 power 12345 1 -> 12345
928
rpox408 power 12345 2 -> 1.5240E+8 Inexact Rounded
929
rpox409 power 12345 3 -> 1.8814E+12 Inexact Rounded
930
rpox410 power 12345 4 -> 2.3225E+16 Inexact Rounded
931
rpox411 power 12345 5 -> 2.8672E+20 Inexact Rounded
932
rpox412 power 415 2 -> 1.7223E+5 Inexact Rounded
933
rpox413 power 75 3 -> 4.2188E+5 Inexact Rounded
936
rpox501 power 12345 -5 -> 3.4878E-21 Inexact Rounded
937
rpox502 power 12345 -4 -> 4.3057E-17 Inexact Rounded
938
rpox503 power 12345 -3 -> 5.3153E-13 Inexact Rounded
939
rpox504 power 12345 -2 -> 6.5618E-9 Inexact Rounded
940
rpox505 power 12345 -1 -> 0.000081005 Inexact Rounded
941
rpox506 power 12345 0 -> 1
942
rpox507 power 12345 1 -> 12345
943
rpox508 power 12345 2 -> 1.5240E+8 Inexact Rounded
944
rpox509 power 12345 3 -> 1.8814E+12 Inexact Rounded
945
rpox510 power 12345 4 -> 2.3226E+16 Inexact Rounded
946
rpox511 power 12345 5 -> 2.8672E+20 Inexact Rounded
947
rpox512 power 415 2 -> 1.7223E+5 Inexact Rounded
948
rpox513 power 75 3 -> 4.2188E+5 Inexact Rounded
951
rpox601 power 12345 -5 -> 3.4877E-21 Inexact Rounded
952
rpox602 power 12345 -4 -> 4.3056E-17 Inexact Rounded
953
rpox603 power 12345 -3 -> 5.3152E-13 Inexact Rounded
954
rpox604 power 12345 -2 -> 6.5617E-9 Inexact Rounded
955
rpox605 power 12345 -1 -> 0.000081004 Inexact Rounded
956
rpox606 power 12345 0 -> 1
957
rpox607 power 12345 1 -> 12345
958
rpox608 power 12345 2 -> 1.5239E+8 Inexact Rounded
959
rpox609 power 12345 3 -> 1.8813E+12 Inexact Rounded
960
rpox610 power 12345 4 -> 2.3225E+16 Inexact Rounded
961
rpox611 power 12345 5 -> 2.8671E+20 Inexact Rounded
962
rpox612 power 415 2 -> 1.7222E+5 Inexact Rounded
963
rpox613 power 75 3 -> 4.2187E+5 Inexact Rounded
966
rpox701 power 12345 -5 -> 3.4878E-21 Inexact Rounded
967
rpox702 power 12345 -4 -> 4.3057E-17 Inexact Rounded
968
rpox703 power 12345 -3 -> 5.3153E-13 Inexact Rounded
969
rpox704 power 12345 -2 -> 6.5618E-9 Inexact Rounded
970
rpox705 power 12345 -1 -> 0.000081005 Inexact Rounded
971
rpox706 power 12345 0 -> 1
972
rpox707 power 12345 1 -> 12345
973
rpox708 power 12345 2 -> 1.5240E+8 Inexact Rounded
974
rpox709 power 12345 3 -> 1.8814E+12 Inexact Rounded
975
rpox710 power 12345 4 -> 2.3226E+16 Inexact Rounded
976
rpox711 power 12345 5 -> 2.8672E+20 Inexact Rounded
977
rpox712 power 415 2 -> 1.7223E+5 Inexact Rounded
978
rpox713 power 75 3 -> 4.2188E+5 Inexact Rounded
980
-- Underflow Subnormal and overflow values vary with rounding mode and sign
981
maxexponent: 999999999
982
minexponent: -999999999
984
rovx100 multiply 10 9E+999999999 -> 9.9999E+999999999 Overflow Inexact Rounded
985
rovx101 multiply -10 9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded
986
rovx102 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
987
rovx104 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
990
rovx110 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded
991
rovx111 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded
992
rovx112 divide 1E-9 9E+999999999 -> 1E-1000000003 Underflow Subnormal Inexact Rounded
993
rovx114 divide -1E-9 9E+999999999 -> -1E-1000000003 Underflow Subnormal Inexact Rounded
996
rovx120 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded
997
rovx121 multiply -10 9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded
998
rovx122 divide 1E-9 9E+999999999 -> 1E-1000000003 Underflow Subnormal Inexact Rounded
999
rovx124 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
1002
rovx130 multiply 10 9E+999999999 -> 9.9999E+999999999 Overflow Inexact Rounded
1003
rovx131 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded
1004
rovx132 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
1005
rovx134 divide -1E-9 9E+999999999 -> -1E-1000000003 Underflow Subnormal Inexact Rounded
1008
rovx140 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded
1009
rovx141 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded
1010
rovx142 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
1011
rovx144 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
1014
rovx150 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded
1015
rovx151 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded
1016
rovx152 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
1017
rovx154 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
1020
rovx160 multiply 10 9E+999999999 -> Infinity Overflow Inexact Rounded
1021
rovx161 multiply -10 9E+999999999 -> -Infinity Overflow Inexact Rounded
1022
rovx162 divide 1E-9 9E+999999999 -> 0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
1023
rovx164 divide -1E-9 9E+999999999 -> -0E-1000000003 Underflow Subnormal Inexact Rounded Clamped
1025
-- check maximum finite value over a range of precisions
1028
rovx200 multiply 10 9E+999999999 -> 9E+999999999 Overflow Inexact Rounded
1029
rovx201 multiply -10 9E+999999999 -> -9E+999999999 Overflow Inexact Rounded
1031
rovx210 multiply 10 9E+999999999 -> 9.9E+999999999 Overflow Inexact Rounded
1032
rovx211 multiply -10 9E+999999999 -> -9.9E+999999999 Overflow Inexact Rounded
1034
rovx220 multiply 10 9E+999999999 -> 9.99E+999999999 Overflow Inexact Rounded
1035
rovx221 multiply -10 9E+999999999 -> -9.99E+999999999 Overflow Inexact Rounded
1037
rovx230 multiply 10 9E+999999999 -> 9.999E+999999999 Overflow Inexact Rounded
1038
rovx231 multiply -10 9E+999999999 -> -9.999E+999999999 Overflow Inexact Rounded
1040
rovx240 multiply 10 9E+999999999 -> 9.9999E+999999999 Overflow Inexact Rounded
1041
rovx241 multiply -10 9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded
1043
rovx250 multiply 10 9E+999999999 -> 9.99999E+999999999 Overflow Inexact Rounded
1044
rovx251 multiply -10 9E+999999999 -> -9.99999E+999999999 Overflow Inexact Rounded
1046
rovx260 multiply 10 9E+999999999 -> 9.999999E+999999999 Overflow Inexact Rounded
1047
rovx261 multiply -10 9E+999999999 -> -9.999999E+999999999 Overflow Inexact Rounded
1049
rovx270 multiply 10 9E+999999999 -> 9.9999999E+999999999 Overflow Inexact Rounded
1050
rovx271 multiply -10 9E+999999999 -> -9.9999999E+999999999 Overflow Inexact Rounded
1052
rovx280 multiply 10 9E+999999999 -> 9.99999999E+999999999 Overflow Inexact Rounded
1053
rovx281 multiply -10 9E+999999999 -> -9.99999999E+999999999 Overflow Inexact Rounded
1055
rovx290 multiply 10 9E+999999999 -> 9.999999999E+999999999 Overflow Inexact Rounded
1056
rovx291 multiply -10 9E+999999999 -> -9.999999999E+999999999 Overflow Inexact Rounded
1058
-- reprise rounding mode effect (using multiplies so precision directive used)
1060
maxexponent: 999999999
1062
rmex400 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
1063
rmex401 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded
1065
rmex402 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
1066
rmex403 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded
1068
rmex404 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
1069
rmex405 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded
1071
rmex406 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
1072
rmex407 multiply 9.999E+999999999 10 -> 9.99999999E+999999999 Overflow Inexact Rounded
1074
rmex408 multiply -9.999E+999999999 10 -> -9.99999999E+999999999 Overflow Inexact Rounded
1075
rmex409 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded
1077
rmex410 multiply -9.999E+999999999 10 -> -Infinity Overflow Inexact Rounded
1078
rmex411 multiply 9.999E+999999999 10 -> Infinity Overflow Inexact Rounded
1080
rmex412 multiply -9.999E+999999999 10 -> -9.99999999E+999999999 Overflow Inexact Rounded
1081
rmex413 multiply 9.999E+999999999 10 -> 9.99999999E+999999999 Overflow Inexact Rounded
1083
----- Round-for-reround -----
1085
precision: 5 -- for easier visual inspection
1089
-- basic rounding; really is just 0 and 5 up
1090
r05up001 add 12340 0.001 -> 12341 Inexact Rounded
1091
r05up002 add 12341 0.001 -> 12341 Inexact Rounded
1092
r05up003 add 12342 0.001 -> 12342 Inexact Rounded
1093
r05up004 add 12343 0.001 -> 12343 Inexact Rounded
1094
r05up005 add 12344 0.001 -> 12344 Inexact Rounded
1095
r05up006 add 12345 0.001 -> 12346 Inexact Rounded
1096
r05up007 add 12346 0.001 -> 12346 Inexact Rounded
1097
r05up008 add 12347 0.001 -> 12347 Inexact Rounded
1098
r05up009 add 12348 0.001 -> 12348 Inexact Rounded
1099
r05up010 add 12349 0.001 -> 12349 Inexact Rounded
1101
r05up011 add 12340 0.000 -> 12340 Rounded
1102
r05up012 add 12341 0.000 -> 12341 Rounded
1103
r05up013 add 12342 0.000 -> 12342 Rounded
1104
r05up014 add 12343 0.000 -> 12343 Rounded
1105
r05up015 add 12344 0.000 -> 12344 Rounded
1106
r05up016 add 12345 0.000 -> 12345 Rounded
1107
r05up017 add 12346 0.000 -> 12346 Rounded
1108
r05up018 add 12347 0.000 -> 12347 Rounded
1109
r05up019 add 12348 0.000 -> 12348 Rounded
1110
r05up020 add 12349 0.000 -> 12349 Rounded
1112
r05up021 add 12340 0.901 -> 12341 Inexact Rounded
1113
r05up022 add 12341 0.901 -> 12341 Inexact Rounded
1114
r05up023 add 12342 0.901 -> 12342 Inexact Rounded
1115
r05up024 add 12343 0.901 -> 12343 Inexact Rounded
1116
r05up025 add 12344 0.901 -> 12344 Inexact Rounded
1117
r05up026 add 12345 0.901 -> 12346 Inexact Rounded
1118
r05up027 add 12346 0.901 -> 12346 Inexact Rounded
1119
r05up028 add 12347 0.901 -> 12347 Inexact Rounded
1120
r05up029 add 12348 0.901 -> 12348 Inexact Rounded
1121
r05up030 add 12349 0.901 -> 12349 Inexact Rounded
1123
r05up031 add -12340 -0.001 -> -12341 Inexact Rounded
1124
r05up032 add -12341 -0.001 -> -12341 Inexact Rounded
1125
r05up033 add -12342 -0.001 -> -12342 Inexact Rounded
1126
r05up034 add -12343 -0.001 -> -12343 Inexact Rounded
1127
r05up035 add -12344 -0.001 -> -12344 Inexact Rounded
1128
r05up036 add -12345 -0.001 -> -12346 Inexact Rounded
1129
r05up037 add -12346 -0.001 -> -12346 Inexact Rounded
1130
r05up038 add -12347 -0.001 -> -12347 Inexact Rounded
1131
r05up039 add -12348 -0.001 -> -12348 Inexact Rounded
1132
r05up040 add -12349 -0.001 -> -12349 Inexact Rounded
1134
r05up041 add -12340 0.001 -> -12339 Inexact Rounded
1135
r05up042 add -12341 0.001 -> -12341 Inexact Rounded
1136
r05up043 add -12342 0.001 -> -12341 Inexact Rounded
1137
r05up044 add -12343 0.001 -> -12342 Inexact Rounded
1138
r05up045 add -12344 0.001 -> -12343 Inexact Rounded
1139
r05up046 add -12345 0.001 -> -12344 Inexact Rounded
1140
r05up047 add -12346 0.001 -> -12346 Inexact Rounded
1141
r05up048 add -12347 0.001 -> -12346 Inexact Rounded
1142
r05up049 add -12348 0.001 -> -12347 Inexact Rounded
1143
r05up050 add -12349 0.001 -> -12348 Inexact Rounded
1145
-- Addition operators -------------------------------------------------
1146
-- [The first few of these check negative residue possibilities; these
1147
-- cases may be implemented as a negative residue in fastpaths]
1149
r0adx100 add 12345 -0.1 -> 12344 Inexact Rounded
1150
r0adx101 add 12345 -0.01 -> 12344 Inexact Rounded
1151
r0adx102 add 12345 -0.001 -> 12344 Inexact Rounded
1152
r0adx103 add 12345 -0.00001 -> 12344 Inexact Rounded
1153
r0adx104 add 12345 -0.000001 -> 12344 Inexact Rounded
1154
r0adx105 add 12345 -0.0000001 -> 12344 Inexact Rounded
1155
r0adx106 add 12345 0 -> 12345
1156
r0adx107 add 12345 0.0000001 -> 12346 Inexact Rounded
1157
r0adx108 add 12345 0.000001 -> 12346 Inexact Rounded
1158
r0adx109 add 12345 0.00001 -> 12346 Inexact Rounded
1159
r0adx110 add 12345 0.0001 -> 12346 Inexact Rounded
1160
r0adx111 add 12345 0.001 -> 12346 Inexact Rounded
1161
r0adx112 add 12345 0.01 -> 12346 Inexact Rounded
1162
r0adx113 add 12345 0.1 -> 12346 Inexact Rounded
1164
r0adx115 add 12346 0.49999 -> 12346 Inexact Rounded
1165
r0adx116 add 12346 0.5 -> 12346 Inexact Rounded
1166
r0adx117 add 12346 0.50001 -> 12346 Inexact Rounded
1168
r0adx120 add 12345 0.4 -> 12346 Inexact Rounded
1169
r0adx121 add 12345 0.49 -> 12346 Inexact Rounded
1170
r0adx122 add 12345 0.499 -> 12346 Inexact Rounded
1171
r0adx123 add 12345 0.49999 -> 12346 Inexact Rounded
1172
r0adx124 add 12345 0.5 -> 12346 Inexact Rounded
1173
r0adx125 add 12345 0.50001 -> 12346 Inexact Rounded
1174
r0adx126 add 12345 0.5001 -> 12346 Inexact Rounded
1175
r0adx127 add 12345 0.501 -> 12346 Inexact Rounded
1176
r0adx128 add 12345 0.51 -> 12346 Inexact Rounded
1177
r0adx129 add 12345 0.6 -> 12346 Inexact Rounded
1181
r0sux100 add -12345 -0.1 -> -12346 Inexact Rounded
1182
r0sux101 add -12345 -0.01 -> -12346 Inexact Rounded
1183
r0sux102 add -12345 -0.001 -> -12346 Inexact Rounded
1184
r0sux103 add -12345 -0.00001 -> -12346 Inexact Rounded
1185
r0sux104 add -12345 -0.000001 -> -12346 Inexact Rounded
1186
r0sux105 add -12345 -0.0000001 -> -12346 Inexact Rounded
1187
r0sux106 add -12345 0 -> -12345
1188
r0sux107 add -12345 0.0000001 -> -12344 Inexact Rounded
1189
r0sux108 add -12345 0.000001 -> -12344 Inexact Rounded
1190
r0sux109 add -12345 0.00001 -> -12344 Inexact Rounded
1191
r0sux110 add -12345 0.0001 -> -12344 Inexact Rounded
1192
r0sux111 add -12345 0.001 -> -12344 Inexact Rounded
1193
r0sux112 add -12345 0.01 -> -12344 Inexact Rounded
1194
r0sux113 add -12345 0.1 -> -12344 Inexact Rounded
1196
r0sux115 add -12346 0.49999 -> -12346 Inexact Rounded
1197
r0sux116 add -12346 0.5 -> -12346 Inexact Rounded
1198
r0sux117 add -12346 0.50001 -> -12346 Inexact Rounded
1200
r0sux120 add -12345 0.4 -> -12344 Inexact Rounded
1201
r0sux121 add -12345 0.49 -> -12344 Inexact Rounded
1202
r0sux122 add -12345 0.499 -> -12344 Inexact Rounded
1203
r0sux123 add -12345 0.49999 -> -12344 Inexact Rounded
1204
r0sux124 add -12345 0.5 -> -12344 Inexact Rounded
1205
r0sux125 add -12345 0.50001 -> -12344 Inexact Rounded
1206
r0sux126 add -12345 0.5001 -> -12344 Inexact Rounded
1207
r0sux127 add -12345 0.501 -> -12344 Inexact Rounded
1208
r0sux128 add -12345 0.51 -> -12344 Inexact Rounded
1209
r0sux129 add -12345 0.6 -> -12344 Inexact Rounded
1211
-- Check cancellation subtractions
1212
-- (The IEEE 854 'curious rule' in $6.3)
1214
r0zex001 add 0 0 -> 0
1215
r0zex002 add 0 -0 -> 0
1216
r0zex003 add -0 0 -> 0
1217
r0zex004 add -0 -0 -> -0
1218
r0zex005 add 1 -1 -> 0
1219
r0zex006 add -1 1 -> 0
1220
r0zex007 add 1.5 -1.5 -> 0.0
1221
r0zex008 add -1.5 1.5 -> 0.0
1222
r0zex009 add 2 -2 -> 0
1223
r0zex010 add -2 2 -> 0
1226
-- Division operators -------------------------------------------------
1228
r0dvx101 divide 12345 1 -> 12345
1229
r0dvx102 divide 12345 1.0001 -> 12343 Inexact Rounded
1230
r0dvx103 divide 12345 1.001 -> 12332 Inexact Rounded
1231
r0dvx104 divide 12345 1.01 -> 12222 Inexact Rounded
1232
r0dvx105 divide 12345 1.1 -> 11222 Inexact Rounded
1233
r0dvx106 divide 12355 4 -> 3088.7 Inexact Rounded
1234
r0dvx107 divide 12345 4 -> 3086.2 Inexact Rounded
1235
r0dvx108 divide 12355 4.0001 -> 3088.6 Inexact Rounded
1236
r0dvx109 divide 12345 4.0001 -> 3086.1 Inexact Rounded
1237
r0dvx110 divide 12345 4.9 -> 2519.3 Inexact Rounded
1238
r0dvx111 divide 12345 4.99 -> 2473.9 Inexact Rounded
1239
r0dvx112 divide 12345 4.999 -> 2469.4 Inexact Rounded
1240
r0dvx113 divide 12345 4.9999 -> 2469.1 Inexact Rounded
1241
r0dvx114 divide 12345 5 -> 2469
1242
r0dvx115 divide 12345 5.0001 -> 2468.9 Inexact Rounded
1243
r0dvx116 divide 12345 5.001 -> 2468.6 Inexact Rounded
1244
r0dvx117 divide 12345 5.01 -> 2464.1 Inexact Rounded
1245
r0dvx118 divide 12345 5.1 -> 2420.6 Inexact Rounded
1247
-- [divideInteger and remainder unaffected]
1249
-- Multiplication operator --------------------------------------------
1251
r0mux101 multiply 12345 1 -> 12345
1252
r0mux102 multiply 12345 1.0001 -> 12346 Inexact Rounded
1253
r0mux103 multiply 12345 1.001 -> 12357 Inexact Rounded
1254
r0mux104 multiply 12345 1.01 -> 12468 Inexact Rounded
1255
r0mux105 multiply 12345 1.1 -> 13579 Inexact Rounded
1256
r0mux106 multiply 12345 4 -> 49380
1257
r0mux107 multiply 12345 4.0001 -> 49381 Inexact Rounded
1258
r0mux108 multiply 12345 4.9 -> 60491 Inexact Rounded
1259
r0mux109 multiply 12345 4.99 -> 61601 Inexact Rounded
1260
r0mux110 multiply 12345 4.999 -> 61712 Inexact Rounded
1261
r0mux111 multiply 12345 4.9999 -> 61723 Inexact Rounded
1262
r0mux112 multiply 12345 5 -> 61725
1263
r0mux113 multiply 12345 5.0001 -> 61726 Inexact Rounded
1264
r0mux114 multiply 12345 5.001 -> 61737 Inexact Rounded
1265
r0mux115 multiply 12345 5.01 -> 61848 Inexact Rounded
1266
r0mux116 multiply 12345 12 -> 1.4814E+5 Rounded
1267
r0mux117 multiply 12345 13 -> 1.6048E+5 Inexact Rounded
1268
r0mux118 multiply 12355 12 -> 1.4826E+5 Rounded
1269
r0mux119 multiply 12355 13 -> 1.6061E+5 Inexact Rounded
1272
-- Power operator -----------------------------------------------------
1274
r0pox101 power 12345 -5 -> 3.4877E-21 Inexact Rounded
1275
r0pox102 power 12345 -4 -> 4.3056E-17 Inexact Rounded
1276
r0pox103 power 12345 -3 -> 5.3152E-13 Inexact Rounded
1277
r0pox104 power 12345 -2 -> 6.5617E-9 Inexact Rounded
1278
r0pox105 power 12345 -1 -> 0.000081004 Inexact Rounded
1279
r0pox106 power 12345 0 -> 1
1280
r0pox107 power 12345 1 -> 12345
1281
r0pox108 power 12345 2 -> 1.5239E+8 Inexact Rounded
1282
r0pox109 power 12345 3 -> 1.8813E+12 Inexact Rounded
1283
r0pox110 power 12345 4 -> 2.3226E+16 Inexact Rounded
1284
r0pox111 power 12345 5 -> 2.8671E+20 Inexact Rounded
1285
r0pox112 power 415 2 -> 1.7222E+5 Inexact Rounded
1286
r0pox113 power 75 3 -> 4.2187E+5 Inexact Rounded
1289
-- Underflow Subnormal and overflow values vary with rounding mode and sign
1290
maxexponent: 999999999
1291
minexponent: -999999999
1292
-- [round down gives Nmax on first two and .0E... on the next two]
1293
r0ovx100 multiply 10 9E+999999999 -> 9.9999E+999999999 Overflow Inexact Rounded
1294
r0ovx101 multiply -10 9E+999999999 -> -9.9999E+999999999 Overflow Inexact Rounded
1295
r0ovx102 divide 1E-9 9E+999999999 -> 1E-1000000003 Underflow Subnormal Inexact Rounded
1296
r0ovx104 divide -1E-9 9E+999999999 -> -1E-1000000003 Underflow Subnormal Inexact Rounded
1298
-- reprise rounding mode effect (using multiplies so precision directive used)
1300
maxexponent: 999999999
1301
r0mex412 multiply -9.999E+999999999 10 -> -9.99999999E+999999999 Overflow Inexact Rounded
1302
r0mex413 multiply 9.999E+999999999 10 -> 9.99999999E+999999999 Overflow Inexact Rounded