1 T(RN
, 0x0p
+0, 0x0p
+0, 0x0p
+0, 0x0p
+0, 0x0p
+0, 0)
2 T(RN
, -0x0p
+0, -0x0p
+0, -0x0p
+0, 0x0p
+0, 0x0p
+0, 0)
3 T(RN
, -0x0p
+0, -0x0p
+0, 0x0p
+0, 0x0p
+0, 0x0p
+0, 0)
4 T(RN
, -0x0p
+0, 0x0p
+0, -0x0p
+0, -0x0p
+0, 0x0p
+0, 0)
5 T(RN
, 0x0p
+0, -0x0p
+0, -0x0p
+0, -0x0p
+0, 0x0p
+0, 0)
6 T(RN
, -0x0p
+0, 0x0p
+0, 0x0p
+0, 0x0p
+0, 0x0p
+0, 0)
7 T(RN
, 0x0p
+0, -0x0p
+0, 0x0p
+0, 0x0p
+0, 0x0p
+0, 0)
8 T(RN
, 0x0p
+0, 0x0p
+0, -0x0p
+0, 0x0p
+0, 0x0p
+0, 0)
9 T(RN
, 0x0p
+0, 0x0p
+0, nan
, nan
, 0x0p
+0, 0)
10 T(RN
, 0x0p
+0, nan
, 0x0p
+0, nan
, 0x0p
+0, 0)
11 T(RN
, nan
, 0x0p
+0, 0x0p
+0, nan
, 0x0p
+0, 0)
12 T(RN
, 0x0p
+0, 0x0p
+0, inf
, inf
, 0x0p
+0, 0)
13 T(RN
, 0x0p
+0, inf
, 0x0p
+0, nan
, 0x0p
+0, INVALID
)
14 T(RN
, inf
, 0x0p
+0, 0x0p
+0, nan
, 0x0p
+0, INVALID
)
15 T(RN
, 0x0p
+0, 0x0p
+0, -inf
, -inf
, 0x0p
+0, 0)
16 T(RN
, 0x0p
+0, -inf
, 0x0p
+0, nan
, 0x0p
+0, INVALID
)
17 T(RN
, -inf
, 0x0p
+0, 0x0p
+0, nan
, 0x0p
+0, INVALID
)
18 T(RN
, 0x1p
+0, inf
, inf
, inf
, 0x0p
+0, 0)
19 T(RN
, 0x1p
+0, inf
, -inf
, nan
, 0x0p
+0, INVALID
)
20 T(RN
, 0x1p
+0, -inf
, -inf
, -inf
, 0x0p
+0, 0)
21 T(RN
, 0x1p
+0, -inf
, inf
, nan
, 0x0p
+0, INVALID
)
22 T(RN
, -0x1p
+0, inf
, inf
, nan
, 0x0p
+0, INVALID
)
23 T(RN
, -0x1p
+0, inf
, -inf
, -inf
, 0x0p
+0, 0)
24 T(RN
, -0x1p
+0, -inf
, -inf
, nan
, 0x0p
+0, INVALID
)
25 T(RN
, -0x1p
+0, -inf
, inf
, inf
, 0x0p
+0, 0)
26 T(RN
, 0x1p
+0, 0x1p
+0, inf
, inf
, 0x0p
+0, 0)
27 T(RN
, 0x1p
+0, 0x1p
+0, -inf
, -inf
, 0x0p
+0, 0)
28 T(RN
, inf
, -inf
, 0x1p
+0, -inf
, 0x0p
+0, 0)
29 T(RN
, -inf
, -inf
, 0x1p
+0, inf
, 0x0p
+0, 0)
30 T(RN
, inf
, inf
, nan
, nan
, 0x0p
+0, 0)
31 T(RN
, inf
, nan
, inf
, nan
, 0x0p
+0, 0)
32 T(RN
, nan
, inf
, inf
, nan
, 0x0p
+0, 0)
33 // TODO: invalid is optional
34 T(RN
, inf
, 0x0p
+0, nan
, nan
, 0x0p
+0, INVALID
)
35 T(RN
, 0x0p
+0, inf
, nan
, nan
, 0x0p
+0, INVALID
)
36 T(RN
, -inf
, 0x0p
+0, nan
, nan
, 0x0p
+0, INVALID
)
37 T(RN
, 0x0p
+0, -inf
, nan
, nan
, 0x0p
+0, INVALID
)
38 T(RN
, 0x1p
-120, 0x1p
-120, 0x1p
-149, 0x1p
-149, -0x1p
-91, INEXACT
|UNDERFLOW
)
39 T(RN
, 0x1p
+0, 0x1p
+0, -0x1p
+0, 0x0p
+0, 0x0p
+0, 0)
40 T(RN
, 0x1p
+0, -0x1p
+0, 0x1p
+0, 0x0p
+0, 0x0p
+0, 0)
41 T(RN
, -0x1p
+0, -0x1p
+0, -0x1p
+0, 0x0p
+0, 0x0p
+0, 0)
42 T(RD
, 0x1p
+0, 0x1p
+0, -0x1p
+0, -0x0p
+0, 0x0p
+0, 0)
43 T(RD
, 0x1p
+0, -0x1p
+0, 0x1p
+0, -0x0p
+0, 0x0p
+0, 0)
44 T(RD
, -0x1p
+0, -0x1p
+0, -0x1p
+0, -0x0p
+0, 0x0p
+0, 0)
45 T(RD
, 0x1p
-120, 0x1p
-120, 0x1p
-149, 0x1p
-149, -0x1p
-91, INEXACT
|UNDERFLOW
)
46 T(RU
, 0x1p
-120, 0x1p
-120, 0x1p
-149, 0x1p
-148, 0x1p
+0, INEXACT
|UNDERFLOW
)
47 T(RZ
, 0x1p
-120, 0x1p
-120, 0x1p
-149, 0x1p
-149, -0x1p
-91, INEXACT
|UNDERFLOW
)
48 T(RN
, -0x1p
-100, 0x1.001p
-49, 0x1p
-126, 0x1.fffffcp
-127, 0x1p
-12, INEXACT
|UNDERFLOW
)
49 T(RU
, -0x1p
-100, 0x1.001p
-49, 0x1p
-126, 0x1.fffffcp
-127, 0x1p
-12, INEXACT
|UNDERFLOW
)
50 T(RD
, -0x1p
-100, 0x1.001p
-49, 0x1p
-126, 0x1.fffff8p
-127, -0x1.ffep
-1, INEXACT
|UNDERFLOW
)
51 T(RZ
, -0x1p
-100, 0x1.001p
-49, 0x1p
-126, 0x1.fffff8p
-127, -0x1.ffep
-1, INEXACT
|UNDERFLOW
)
52 T(RN
, -0x1.26524ep
-54, -0x1.cb7868p
+11, 0x1.d10f5ep
-29, 0x1.d1179ep
-29, -0x1p
-1, INEXACT
)
53 T(RU
, -0x1.26524ep
-54, -0x1.cb7868p
+11, 0x1.d10f5ep
-29, 0x1.d117ap
-29, 0x1p
-1, INEXACT
)
54 T(RD
, -0x1.26524ep
-54, -0x1.cb7868p
+11, 0x1.d10f5ep
-29, 0x1.d1179ep
-29, -0x1p
-1, INEXACT
)
55 T(RZ
, -0x1.26524ep
-54, -0x1.cb7868p
+11, 0x1.d10f5ep
-29, 0x1.d1179ep
-29, -0x1p
-1, INEXACT
)
56 // double precision x*y+z is a half-way float
57 T(RN
, 0x1.000002p
+0, 0x1.fffffep
+0, 0x1.fffffep
-47, 0x1p
+1, -0x1p
-1, INEXACT
)
58 T(RN
, 0x1.000002p
+0, 0x1.fffffep
+0, 0x1p
-46, 0x1p
+1, -0x1p
-1, INEXACT
)
59 T(RN
, 0x1.000002p
+0, 0x1.fffffep
+0, 0x1.000002p
-46, 0x1.000002p
+1, 0x1p
-1, INEXACT
)
60 T(RN
, 0x1.000002p
+0, -0x1.fffffep
+0, -0x1.fffffep
-47, -0x1p
+1, 0x1p
-1, INEXACT
)
61 T(RN
, 0x1.000002p
+0, -0x1.fffffep
+0, -0x1p
-46, -0x1p
+1, 0x1p
-1, INEXACT
)
62 T(RN
, 0x1.000002p
+0, -0x1.fffffep
+0, -0x1.000002p
-46, -0x1.000002p
+1, -0x1p
-1, INEXACT
)
63 T(RN
, 0x1.000004p
+0, 0x1.fffffep
+0, 0x1.fffffep
-46, 0x1.000002p
+1, -0x1p
-1, INEXACT
)
64 T(RN
, 0x1.000004p
+0, 0x1.fffffep
+0, 0x1p
-45, 0x1.000004p
+1, 0x1p
-1, INEXACT
)
65 T(RN
, 0x1.000004p
+0, 0x1.fffffep
+0, 0x1.000002p
-45, 0x1.000004p
+1, 0x1p
-1, INEXACT
)
66 T(RN
, 0x1.000004p
+0, -0x1.fffffep
+0, -0x1.fffffep
-46, -0x1.000002p
+1, 0x1p
-1, INEXACT
)
67 T(RN
, 0x1.000004p
+0, -0x1.fffffep
+0, -0x1p
-45, -0x1.000004p
+1, -0x1p
-1, INEXACT
)
68 T(RN
, 0x1.000004p
+0, -0x1.fffffep
+0, -0x1.000002p
-45, -0x1.000004p
+1, -0x1p
-1, INEXACT
)