1------------------------------------------------------------------------
2-- ddNextToward.decTest -- decDouble next toward rhs [754r nextafter] --
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      --
7-- these testcases.                                                   --
8--                                                                    --
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.                   --
14--                                                                    --
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         --
18--   mfc@uk.ibm.com                                                   --
19------------------------------------------------------------------------
20version: 2.59
21
22-- All operands and results are decDoubles.
23precision:   16
24maxExponent: 384
25minExponent: -383
26extended:    1
27clamp:       1
28rounding:    half_even
29
30-- Sanity check with a scattering of numerics
31ddnextt001 nexttoward   10    10   ->  10
32ddnextt002 nexttoward  -10   -10   -> -10
33ddnextt003 nexttoward   1     10   ->  1.000000000000001
34ddnextt004 nexttoward   1    -10   ->  0.9999999999999999
35ddnextt005 nexttoward  -1     10   -> -0.9999999999999999
36ddnextt006 nexttoward  -1    -10   -> -1.000000000000001
37ddnextt007 nexttoward   0     10   ->  1E-398       Underflow Subnormal Inexact Rounded
38ddnextt008 nexttoward   0    -10   -> -1E-398       Underflow Subnormal Inexact Rounded
39ddnextt009 nexttoward   9.999999999999999E+384 +Infinity ->  Infinity Overflow Inexact Rounded
40ddnextt010 nexttoward  -9.999999999999999E+384 -Infinity -> -Infinity Overflow Inexact Rounded
41ddnextt011 nexttoward       9.999999999999999  10  ->  10.00000000000000
42ddnextt012 nexttoward   10  9.999999999999999      ->  9.999999999999999
43ddnextt013 nexttoward      -9.999999999999999 -10  -> -10.00000000000000
44ddnextt014 nexttoward  -10 -9.999999999999999      -> -9.999999999999999
45ddnextt015 nexttoward       9.999999999999998  10  ->  9.999999999999999
46ddnextt016 nexttoward   10  9.999999999999998      ->  9.999999999999999
47ddnextt017 nexttoward      -9.999999999999998 -10  -> -9.999999999999999
48ddnextt018 nexttoward  -10 -9.999999999999998      -> -9.999999999999999
49
50------- lhs=rhs
51-- finites
52ddnextt101 nexttoward          7       7 ->  7
53ddnextt102 nexttoward         -7      -7 -> -7
54ddnextt103 nexttoward         75      75 ->  75
55ddnextt104 nexttoward        -75     -75 -> -75
56ddnextt105 nexttoward       7.50     7.5 ->  7.50
57ddnextt106 nexttoward      -7.50   -7.50 -> -7.50
58ddnextt107 nexttoward       7.500 7.5000 ->  7.500
59ddnextt108 nexttoward      -7.500   -7.5 -> -7.500
60
61-- zeros
62ddnextt111 nexttoward          0       0 ->  0
63ddnextt112 nexttoward         -0      -0 -> -0
64ddnextt113 nexttoward       0E+4       0 ->  0E+4
65ddnextt114 nexttoward      -0E+4      -0 -> -0E+4
66ddnextt115 nexttoward     0.00000000000   0.000000000000 ->  0E-11
67ddnextt116 nexttoward    -0.00000000000  -0.00           -> -0E-11
68ddnextt117 nexttoward      0E-141      0 ->  0E-141
69ddnextt118 nexttoward     -0E-141   -000 -> -0E-141
70
71-- full coefficients, alternating bits
72ddnextt121 nexttoward   268268268    268268268 ->   268268268
73ddnextt122 nexttoward  -268268268   -268268268 ->  -268268268
74ddnextt123 nexttoward   134134134    134134134 ->   134134134
75ddnextt124 nexttoward  -134134134   -134134134 ->  -134134134
76
77-- Nmax, Nmin, Ntiny
78ddnextt131 nexttoward  9.999999999999999E+384  9.999999999999999E+384   ->   9.999999999999999E+384
79ddnextt132 nexttoward  1E-383           1E-383            ->   1E-383
80ddnextt133 nexttoward  1.000000000000000E-383  1.000000000000000E-383   ->   1.000000000000000E-383
81ddnextt134 nexttoward  1E-398           1E-398            ->   1E-398
82
83ddnextt135 nexttoward  -1E-398          -1E-398           ->  -1E-398
84ddnextt136 nexttoward  -1.000000000000000E-383 -1.000000000000000E-383  ->  -1.000000000000000E-383
85ddnextt137 nexttoward  -1E-383          -1E-383           ->  -1E-383
86ddnextt138 nexttoward  -9.999999999999999E+384 -9.999999999999999E+384  ->  -9.999999999999999E+384
87
88------- lhs<rhs
89ddnextt201 nexttoward  0.9999999999999995 Infinity ->   0.9999999999999996
90ddnextt202 nexttoward  0.9999999999999996 Infinity ->   0.9999999999999997
91ddnextt203 nexttoward  0.9999999999999997 Infinity ->   0.9999999999999998
92ddnextt204 nexttoward  0.9999999999999998 Infinity ->   0.9999999999999999
93ddnextt205 nexttoward  0.9999999999999999 Infinity ->   1.000000000000000
94ddnextt206 nexttoward  1.000000000000000  Infinity ->   1.000000000000001
95ddnextt207 nexttoward  1.0         Infinity ->   1.000000000000001
96ddnextt208 nexttoward  1           Infinity ->   1.000000000000001
97ddnextt209 nexttoward  1.000000000000001  Infinity ->   1.000000000000002
98ddnextt210 nexttoward  1.000000000000002  Infinity ->   1.000000000000003
99ddnextt211 nexttoward  1.000000000000003  Infinity ->   1.000000000000004
100ddnextt212 nexttoward  1.000000000000004  Infinity ->   1.000000000000005
101ddnextt213 nexttoward  1.000000000000005  Infinity ->   1.000000000000006
102ddnextt214 nexttoward  1.000000000000006  Infinity ->   1.000000000000007
103ddnextt215 nexttoward  1.000000000000007  Infinity ->   1.000000000000008
104ddnextt216 nexttoward  1.000000000000008  Infinity ->   1.000000000000009
105ddnextt217 nexttoward  1.000000000000009  Infinity ->   1.000000000000010
106ddnextt218 nexttoward  1.000000000000010  Infinity ->   1.000000000000011
107ddnextt219 nexttoward  1.000000000000011  Infinity ->   1.000000000000012
108
109ddnextt221 nexttoward -0.9999999999999995 Infinity ->  -0.9999999999999994
110ddnextt222 nexttoward -0.9999999999999996 Infinity ->  -0.9999999999999995
111ddnextt223 nexttoward -0.9999999999999997 Infinity ->  -0.9999999999999996
112ddnextt224 nexttoward -0.9999999999999998 Infinity ->  -0.9999999999999997
113ddnextt225 nexttoward -0.9999999999999999 Infinity ->  -0.9999999999999998
114ddnextt226 nexttoward -1.000000000000000  Infinity ->  -0.9999999999999999
115ddnextt227 nexttoward -1.0         Infinity ->  -0.9999999999999999
116ddnextt228 nexttoward -1           Infinity ->  -0.9999999999999999
117ddnextt229 nexttoward -1.000000000000001  Infinity ->  -1.000000000000000
118ddnextt230 nexttoward -1.000000000000002  Infinity ->  -1.000000000000001
119ddnextt231 nexttoward -1.000000000000003  Infinity ->  -1.000000000000002
120ddnextt232 nexttoward -1.000000000000004  Infinity ->  -1.000000000000003
121ddnextt233 nexttoward -1.000000000000005  Infinity ->  -1.000000000000004
122ddnextt234 nexttoward -1.000000000000006  Infinity ->  -1.000000000000005
123ddnextt235 nexttoward -1.000000000000007  Infinity ->  -1.000000000000006
124ddnextt236 nexttoward -1.000000000000008  Infinity ->  -1.000000000000007
125ddnextt237 nexttoward -1.000000000000009  Infinity ->  -1.000000000000008
126ddnextt238 nexttoward -1.000000000000010  Infinity ->  -1.000000000000009
127ddnextt239 nexttoward -1.000000000000011  Infinity ->  -1.000000000000010
128ddnextt240 nexttoward -1.000000000000012  Infinity ->  -1.000000000000011
129
130-- Zeros
131ddnextt300 nexttoward  0           Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
132ddnextt301 nexttoward  0.00        Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
133ddnextt302 nexttoward  0E-300      Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
134ddnextt303 nexttoward  0E+300      Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
135ddnextt304 nexttoward  0E+30000    Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
136ddnextt305 nexttoward -0           Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
137ddnextt306 nexttoward -0.00        Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
138ddnextt307 nexttoward -0E-300      Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
139ddnextt308 nexttoward -0E+300      Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
140ddnextt309 nexttoward -0E+30000    Infinity ->  1E-398              Underflow Subnormal Inexact Rounded
141
142-- specials
143ddnextt350 nexttoward   Inf    Infinity ->  Infinity
144ddnextt351 nexttoward  -Inf    Infinity -> -9.999999999999999E+384
145ddnextt352 nexttoward   NaN    Infinity ->  NaN
146ddnextt353 nexttoward  sNaN    Infinity ->  NaN   Invalid_operation
147ddnextt354 nexttoward   NaN77  Infinity ->  NaN77
148ddnextt355 nexttoward  sNaN88  Infinity ->  NaN88 Invalid_operation
149ddnextt356 nexttoward  -NaN    Infinity -> -NaN
150ddnextt357 nexttoward -sNaN    Infinity -> -NaN   Invalid_operation
151ddnextt358 nexttoward  -NaN77  Infinity -> -NaN77
152ddnextt359 nexttoward -sNaN88  Infinity -> -NaN88 Invalid_operation
153
154-- Nmax, Nmin, Ntiny, subnormals
155ddnextt370 nexttoward  -9.999999999999999E+384  Infinity  -> -9.999999999999998E+384
156ddnextt371 nexttoward  -9.999999999999998E+384  Infinity  -> -9.999999999999997E+384
157ddnextt372 nexttoward  -1E-383                  Infinity  -> -9.99999999999999E-384  Underflow Subnormal Inexact Rounded
158ddnextt373 nexttoward  -1.000000000000000E-383  Infinity  -> -9.99999999999999E-384  Underflow Subnormal Inexact Rounded
159ddnextt374 nexttoward  -9E-398                  Infinity  -> -8E-398                 Underflow Subnormal Inexact Rounded
160ddnextt375 nexttoward  -9.9E-397                Infinity  -> -9.8E-397               Underflow Subnormal Inexact Rounded
161ddnextt376 nexttoward  -9.99999999999E-387      Infinity  -> -9.99999999998E-387     Underflow Subnormal Inexact Rounded
162ddnextt377 nexttoward  -9.99999999999999E-384   Infinity  -> -9.99999999999998E-384  Underflow Subnormal Inexact Rounded
163ddnextt378 nexttoward  -9.99999999999998E-384   Infinity  -> -9.99999999999997E-384  Underflow Subnormal Inexact Rounded
164ddnextt379 nexttoward  -9.99999999999997E-384   Infinity  -> -9.99999999999996E-384  Underflow Subnormal Inexact Rounded
165ddnextt380 nexttoward  -0E-398                  Infinity  ->  1E-398                 Underflow Subnormal Inexact Rounded
166ddnextt381 nexttoward  -1E-398                  Infinity  -> -0E-398 Underflow Subnormal Inexact Rounded Clamped
167ddnextt382 nexttoward  -2E-398                  Infinity  -> -1E-398                 Underflow Subnormal Inexact Rounded
168
169ddnextt383 nexttoward   0E-398                  Infinity  ->  1E-398                 Underflow Subnormal Inexact Rounded
170ddnextt384 nexttoward   1E-398                  Infinity  ->  2E-398                 Underflow Subnormal Inexact Rounded
171ddnextt385 nexttoward   2E-398                  Infinity  ->  3E-398                 Underflow Subnormal Inexact Rounded
172ddnextt386 nexttoward   10E-398                 Infinity  ->  1.1E-397               Underflow Subnormal Inexact Rounded
173ddnextt387 nexttoward   100E-398                Infinity  ->  1.01E-396              Underflow Subnormal Inexact Rounded
174ddnextt388 nexttoward   100000E-398             Infinity  ->  1.00001E-393           Underflow Subnormal Inexact Rounded
175ddnextt389 nexttoward   1.00000000000E-383      Infinity  ->  1.000000000000001E-383
176ddnextt390 nexttoward   1.000000000000000E-383  Infinity  ->  1.000000000000001E-383
177ddnextt391 nexttoward   1E-383                  Infinity  ->  1.000000000000001E-383
178ddnextt392 nexttoward   9.999999999999997E+384  Infinity  ->  9.999999999999998E+384
179ddnextt393 nexttoward   9.999999999999998E+384  Infinity  ->  9.999999999999999E+384
180ddnextt394 nexttoward   9.999999999999999E+384  Infinity  ->  Infinity               Overflow Inexact Rounded
181
182------- lhs>rhs
183ddnextt401 nexttoward  0.9999999999999995  -Infinity ->   0.9999999999999994
184ddnextt402 nexttoward  0.9999999999999996  -Infinity ->   0.9999999999999995
185ddnextt403 nexttoward  0.9999999999999997  -Infinity ->   0.9999999999999996
186ddnextt404 nexttoward  0.9999999999999998  -Infinity ->   0.9999999999999997
187ddnextt405 nexttoward  0.9999999999999999  -Infinity ->   0.9999999999999998
188ddnextt406 nexttoward  1.000000000000000   -Infinity ->   0.9999999999999999
189ddnextt407 nexttoward  1.0          -Infinity ->   0.9999999999999999
190ddnextt408 nexttoward  1            -Infinity ->   0.9999999999999999
191ddnextt409 nexttoward  1.000000000000001   -Infinity ->   1.000000000000000
192ddnextt410 nexttoward  1.000000000000002   -Infinity ->   1.000000000000001
193ddnextt411 nexttoward  1.000000000000003   -Infinity ->   1.000000000000002
194ddnextt412 nexttoward  1.000000000000004   -Infinity ->   1.000000000000003
195ddnextt413 nexttoward  1.000000000000005   -Infinity ->   1.000000000000004
196ddnextt414 nexttoward  1.000000000000006   -Infinity ->   1.000000000000005
197ddnextt415 nexttoward  1.000000000000007   -Infinity ->   1.000000000000006
198ddnextt416 nexttoward  1.000000000000008   -Infinity ->   1.000000000000007
199ddnextt417 nexttoward  1.000000000000009   -Infinity ->   1.000000000000008
200ddnextt418 nexttoward  1.000000000000010   -Infinity ->   1.000000000000009
201ddnextt419 nexttoward  1.000000000000011   -Infinity ->   1.000000000000010
202ddnextt420 nexttoward  1.000000000000012   -Infinity ->   1.000000000000011
203
204ddnextt421 nexttoward -0.9999999999999995  -Infinity ->  -0.9999999999999996
205ddnextt422 nexttoward -0.9999999999999996  -Infinity ->  -0.9999999999999997
206ddnextt423 nexttoward -0.9999999999999997  -Infinity ->  -0.9999999999999998
207ddnextt424 nexttoward -0.9999999999999998  -Infinity ->  -0.9999999999999999
208ddnextt425 nexttoward -0.9999999999999999  -Infinity ->  -1.000000000000000
209ddnextt426 nexttoward -1.000000000000000   -Infinity ->  -1.000000000000001
210ddnextt427 nexttoward -1.0          -Infinity ->  -1.000000000000001
211ddnextt428 nexttoward -1            -Infinity ->  -1.000000000000001
212ddnextt429 nexttoward -1.000000000000001   -Infinity ->  -1.000000000000002
213ddnextt430 nexttoward -1.000000000000002   -Infinity ->  -1.000000000000003
214ddnextt431 nexttoward -1.000000000000003   -Infinity ->  -1.000000000000004
215ddnextt432 nexttoward -1.000000000000004   -Infinity ->  -1.000000000000005
216ddnextt433 nexttoward -1.000000000000005   -Infinity ->  -1.000000000000006
217ddnextt434 nexttoward -1.000000000000006   -Infinity ->  -1.000000000000007
218ddnextt435 nexttoward -1.000000000000007   -Infinity ->  -1.000000000000008
219ddnextt436 nexttoward -1.000000000000008   -Infinity ->  -1.000000000000009
220ddnextt437 nexttoward -1.000000000000009   -Infinity ->  -1.000000000000010
221ddnextt438 nexttoward -1.000000000000010   -Infinity ->  -1.000000000000011
222ddnextt439 nexttoward -1.000000000000011   -Infinity ->  -1.000000000000012
223
224-- Zeros
225ddnextt500 nexttoward -0            -Infinity -> -1E-398         Underflow Subnormal Inexact Rounded
226ddnextt501 nexttoward  0            -Infinity -> -1E-398         Underflow Subnormal Inexact Rounded
227ddnextt502 nexttoward  0.00         -Infinity -> -1E-398         Underflow Subnormal Inexact Rounded
228ddnextt503 nexttoward -0.00         -Infinity -> -1E-398         Underflow Subnormal Inexact Rounded
229ddnextt504 nexttoward  0E-300       -Infinity -> -1E-398         Underflow Subnormal Inexact Rounded
230ddnextt505 nexttoward  0E+300       -Infinity -> -1E-398         Underflow Subnormal Inexact Rounded
231ddnextt506 nexttoward  0E+30000     -Infinity -> -1E-398         Underflow Subnormal Inexact Rounded
232ddnextt507 nexttoward -0E+30000     -Infinity -> -1E-398         Underflow Subnormal Inexact Rounded
233
234-- specials
235ddnextt550 nexttoward   Inf     -Infinity ->  9.999999999999999E+384
236ddnextt551 nexttoward  -Inf     -Infinity -> -Infinity
237ddnextt552 nexttoward   NaN     -Infinity ->  NaN
238ddnextt553 nexttoward  sNaN     -Infinity ->  NaN   Invalid_operation
239ddnextt554 nexttoward   NaN77   -Infinity ->  NaN77
240ddnextt555 nexttoward  sNaN88   -Infinity ->  NaN88 Invalid_operation
241ddnextt556 nexttoward  -NaN     -Infinity -> -NaN
242ddnextt557 nexttoward -sNaN     -Infinity -> -NaN   Invalid_operation
243ddnextt558 nexttoward  -NaN77   -Infinity -> -NaN77
244ddnextt559 nexttoward -sNaN88   -Infinity -> -NaN88 Invalid_operation
245
246-- Nmax, Nmin, Ntiny, subnormals
247ddnextt670 nexttoward  9.999999999999999E+384   -Infinity  -> 9.999999999999998E+384
248ddnextt671 nexttoward  9.999999999999998E+384   -Infinity  -> 9.999999999999997E+384
249ddnextt672 nexttoward  1E-383                   -Infinity  -> 9.99999999999999E-384   Underflow Subnormal  Inexact Rounded
250ddnextt673 nexttoward  1.000000000000000E-383   -Infinity  -> 9.99999999999999E-384   Underflow Subnormal  Inexact Rounded
251ddnextt674 nexttoward  9E-398                   -Infinity  -> 8E-398                  Underflow Subnormal  Inexact Rounded
252ddnextt675 nexttoward  9.9E-397                 -Infinity  -> 9.8E-397                Underflow Subnormal  Inexact Rounded
253ddnextt676 nexttoward  9.99999999999E-387       -Infinity  -> 9.99999999998E-387      Underflow Subnormal  Inexact Rounded
254ddnextt677 nexttoward  9.99999999999999E-384    -Infinity  -> 9.99999999999998E-384   Underflow Subnormal  Inexact Rounded
255ddnextt678 nexttoward  9.99999999999998E-384    -Infinity  -> 9.99999999999997E-384   Underflow Subnormal  Inexact Rounded
256ddnextt679 nexttoward  9.99999999999997E-384    -Infinity  -> 9.99999999999996E-384   Underflow Subnormal  Inexact Rounded
257ddnextt680 nexttoward  0E-398                   -Infinity  -> -1E-398                 Underflow Subnormal  Inexact Rounded
258ddnextt681 nexttoward  1E-398                   -Infinity  -> 0E-398                  Underflow Subnormal  Inexact Rounded Clamped
259ddnextt682 nexttoward  2E-398                   -Infinity  -> 1E-398                  Underflow Subnormal  Inexact Rounded
260
261ddnextt683 nexttoward  -0E-398                  -Infinity  -> -1E-398                 Underflow Subnormal  Inexact Rounded
262ddnextt684 nexttoward  -1E-398                  -Infinity  -> -2E-398                 Underflow Subnormal  Inexact Rounded
263ddnextt685 nexttoward  -2E-398                  -Infinity  -> -3E-398                 Underflow Subnormal  Inexact Rounded
264ddnextt686 nexttoward  -10E-398                 -Infinity  -> -1.1E-397               Underflow Subnormal  Inexact Rounded
265ddnextt687 nexttoward  -100E-398                -Infinity  -> -1.01E-396              Underflow Subnormal  Inexact Rounded
266ddnextt688 nexttoward  -100000E-398             -Infinity  -> -1.00001E-393           Underflow Subnormal  Inexact Rounded
267ddnextt689 nexttoward  -1.00000000000E-383      -Infinity  -> -1.000000000000001E-383
268ddnextt690 nexttoward  -1.000000000000000E-383  -Infinity  -> -1.000000000000001E-383
269ddnextt691 nexttoward  -1E-383                  -Infinity  -> -1.000000000000001E-383
270ddnextt692 nexttoward  -9.999999999999998E+384  -Infinity  -> -9.999999999999999E+384
271ddnextt693 nexttoward  -9.999999999999999E+384  -Infinity  -> -Infinity               Overflow Inexact Rounded
272
273------- Specials
274ddnextt780 nexttoward -Inf  -Inf   -> -Infinity
275ddnextt781 nexttoward -Inf  -1000  -> -9.999999999999999E+384
276ddnextt782 nexttoward -Inf  -1     -> -9.999999999999999E+384
277ddnextt783 nexttoward -Inf  -0     -> -9.999999999999999E+384
278ddnextt784 nexttoward -Inf   0     -> -9.999999999999999E+384
279ddnextt785 nexttoward -Inf   1     -> -9.999999999999999E+384
280ddnextt786 nexttoward -Inf   1000  -> -9.999999999999999E+384
281ddnextt787 nexttoward -1000 -Inf   -> -1000.000000000001
282ddnextt788 nexttoward -Inf  -Inf   -> -Infinity
283ddnextt789 nexttoward -1    -Inf   -> -1.000000000000001
284ddnextt790 nexttoward -0    -Inf   -> -1E-398           Underflow Subnormal Inexact Rounded
285ddnextt791 nexttoward  0    -Inf   -> -1E-398           Underflow Subnormal Inexact Rounded
286ddnextt792 nexttoward  1    -Inf   ->  0.9999999999999999
287ddnextt793 nexttoward  1000 -Inf   ->  999.9999999999999
288ddnextt794 nexttoward  Inf  -Inf   ->  9.999999999999999E+384
289
290ddnextt800 nexttoward  Inf  -Inf   ->  9.999999999999999E+384
291ddnextt801 nexttoward  Inf  -1000  ->  9.999999999999999E+384
292ddnextt802 nexttoward  Inf  -1     ->  9.999999999999999E+384
293ddnextt803 nexttoward  Inf  -0     ->  9.999999999999999E+384
294ddnextt804 nexttoward  Inf   0     ->  9.999999999999999E+384
295ddnextt805 nexttoward  Inf   1     ->  9.999999999999999E+384
296ddnextt806 nexttoward  Inf   1000  ->  9.999999999999999E+384
297ddnextt807 nexttoward  Inf   Inf   ->  Infinity
298ddnextt808 nexttoward -1000  Inf   -> -999.9999999999999
299ddnextt809 nexttoward -Inf   Inf   -> -9.999999999999999E+384
300ddnextt810 nexttoward -1     Inf   -> -0.9999999999999999
301ddnextt811 nexttoward -0     Inf   ->  1E-398           Underflow Subnormal Inexact Rounded
302ddnextt812 nexttoward  0     Inf   ->  1E-398           Underflow Subnormal Inexact Rounded
303ddnextt813 nexttoward  1     Inf   ->  1.000000000000001
304ddnextt814 nexttoward  1000  Inf   ->  1000.000000000001
305ddnextt815 nexttoward  Inf   Inf   ->  Infinity
306
307ddnextt821 nexttoward  NaN -Inf    ->  NaN
308ddnextt822 nexttoward  NaN -1000   ->  NaN
309ddnextt823 nexttoward  NaN -1      ->  NaN
310ddnextt824 nexttoward  NaN -0      ->  NaN
311ddnextt825 nexttoward  NaN  0      ->  NaN
312ddnextt826 nexttoward  NaN  1      ->  NaN
313ddnextt827 nexttoward  NaN  1000   ->  NaN
314ddnextt828 nexttoward  NaN  Inf    ->  NaN
315ddnextt829 nexttoward  NaN  NaN    ->  NaN
316ddnextt830 nexttoward -Inf  NaN    ->  NaN
317ddnextt831 nexttoward -1000 NaN    ->  NaN
318ddnextt832 nexttoward -1    NaN    ->  NaN
319ddnextt833 nexttoward -0    NaN    ->  NaN
320ddnextt834 nexttoward  0    NaN    ->  NaN
321ddnextt835 nexttoward  1    NaN    ->  NaN
322ddnextt836 nexttoward  1000 NaN    ->  NaN
323ddnextt837 nexttoward  Inf  NaN    ->  NaN
324
325ddnextt841 nexttoward  sNaN -Inf   ->  NaN  Invalid_operation
326ddnextt842 nexttoward  sNaN -1000  ->  NaN  Invalid_operation
327ddnextt843 nexttoward  sNaN -1     ->  NaN  Invalid_operation
328ddnextt844 nexttoward  sNaN -0     ->  NaN  Invalid_operation
329ddnextt845 nexttoward  sNaN  0     ->  NaN  Invalid_operation
330ddnextt846 nexttoward  sNaN  1     ->  NaN  Invalid_operation
331ddnextt847 nexttoward  sNaN  1000  ->  NaN  Invalid_operation
332ddnextt848 nexttoward  sNaN  NaN   ->  NaN  Invalid_operation
333ddnextt849 nexttoward  sNaN sNaN   ->  NaN  Invalid_operation
334ddnextt850 nexttoward  NaN  sNaN   ->  NaN  Invalid_operation
335ddnextt851 nexttoward -Inf  sNaN   ->  NaN  Invalid_operation
336ddnextt852 nexttoward -1000 sNaN   ->  NaN  Invalid_operation
337ddnextt853 nexttoward -1    sNaN   ->  NaN  Invalid_operation
338ddnextt854 nexttoward -0    sNaN   ->  NaN  Invalid_operation
339ddnextt855 nexttoward  0    sNaN   ->  NaN  Invalid_operation
340ddnextt856 nexttoward  1    sNaN   ->  NaN  Invalid_operation
341ddnextt857 nexttoward  1000 sNaN   ->  NaN  Invalid_operation
342ddnextt858 nexttoward  Inf  sNaN   ->  NaN  Invalid_operation
343ddnextt859 nexttoward  NaN  sNaN   ->  NaN  Invalid_operation
344
345-- propagating NaNs
346ddnextt861 nexttoward  NaN1   -Inf    ->  NaN1
347ddnextt862 nexttoward +NaN2   -1000   ->  NaN2
348ddnextt863 nexttoward  NaN3    1000   ->  NaN3
349ddnextt864 nexttoward  NaN4    Inf    ->  NaN4
350ddnextt865 nexttoward  NaN5   +NaN6   ->  NaN5
351ddnextt866 nexttoward -Inf     NaN7   ->  NaN7
352ddnextt867 nexttoward -1000    NaN8   ->  NaN8
353ddnextt868 nexttoward  1000    NaN9   ->  NaN9
354ddnextt869 nexttoward  Inf    +NaN10  ->  NaN10
355ddnextt871 nexttoward  sNaN11  -Inf   ->  NaN11  Invalid_operation
356ddnextt872 nexttoward  sNaN12  -1000  ->  NaN12  Invalid_operation
357ddnextt873 nexttoward  sNaN13   1000  ->  NaN13  Invalid_operation
358ddnextt874 nexttoward  sNaN14   NaN17 ->  NaN14  Invalid_operation
359ddnextt875 nexttoward  sNaN15  sNaN18 ->  NaN15  Invalid_operation
360ddnextt876 nexttoward  NaN16   sNaN19 ->  NaN19  Invalid_operation
361ddnextt877 nexttoward -Inf    +sNaN20 ->  NaN20  Invalid_operation
362ddnextt878 nexttoward -1000    sNaN21 ->  NaN21  Invalid_operation
363ddnextt879 nexttoward  1000    sNaN22 ->  NaN22  Invalid_operation
364ddnextt880 nexttoward  Inf     sNaN23 ->  NaN23  Invalid_operation
365ddnextt881 nexttoward +NaN25  +sNaN24 ->  NaN24  Invalid_operation
366ddnextt882 nexttoward -NaN26    NaN28 -> -NaN26
367ddnextt883 nexttoward -sNaN27  sNaN29 -> -NaN27  Invalid_operation
368ddnextt884 nexttoward  1000    -NaN30 -> -NaN30
369ddnextt885 nexttoward  1000   -sNaN31 -> -NaN31  Invalid_operation
370
371-- Null tests
372ddnextt900 nexttoward 1  # -> NaN Invalid_operation
373ddnextt901 nexttoward #  1 -> NaN Invalid_operation
374
375