1/* Test roundeven. 2 Copyright (C) 1997-2021 Free Software Foundation, Inc. 3 This file is part of the GNU C Library. 4 5 The GNU C Library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Lesser General Public 7 License as published by the Free Software Foundation; either 8 version 2.1 of the License, or (at your option) any later version. 9 10 The GNU C Library is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Lesser General Public License for more details. 14 15 You should have received a copy of the GNU Lesser General Public 16 License along with the GNU C Library; if not, see 17 <https://www.gnu.org/licenses/>. */ 18 19#include "libm-test-driver.c" 20 21static const struct test_f_f_data roundeven_test_data[] = 22 { 23 TEST_f_f (roundeven, plus_zero, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 24 TEST_f_f (roundeven, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 25 TEST_f_f (roundeven, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 26 TEST_f_f (roundeven, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 27 TEST_f_f (roundeven, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 28 TEST_f_f (roundeven, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 29 TEST_f_f (roundeven, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION), 30 TEST_f_f (roundeven, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION), 31 32 TEST_f_f (roundeven, min_subnorm_value, 0.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 33 TEST_f_f (roundeven, min_value, 0.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 34 TEST_f_f (roundeven, 1, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 35 TEST_f_f (roundeven, 2, 2, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 36 TEST_f_f (roundeven, 3, 3, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 37 TEST_f_f (roundeven, 4, 4, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 38 TEST_f_f (roundeven, 5, 5, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 39 TEST_f_f (roundeven, 0x1p23, 0x1p23, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 40 TEST_f_f (roundeven, 0x1p24, 0x1p24, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 41 TEST_f_f (roundeven, 0x1p25, 0x1p25, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 42 TEST_f_f (roundeven, 0x1p52, 0x1p52, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 43 TEST_f_f (roundeven, 0x1p53, 0x1p53, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 44 TEST_f_f (roundeven, 0x1p54, 0x1p54, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 45 TEST_f_f (roundeven, 0x1p63, 0x1p63, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 46 TEST_f_f (roundeven, 0x1p64, 0x1p64, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 47 TEST_f_f (roundeven, 0x1p65, 0x1p65, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 48 TEST_f_f (roundeven, 0x1p105, 0x1p105, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 49 TEST_f_f (roundeven, 0x1p106, 0x1p106, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 50 TEST_f_f (roundeven, 0x1p107, 0x1p107, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 51 TEST_f_f (roundeven, 0x1p112, 0x1p112, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 52 TEST_f_f (roundeven, 0x1p113, 0x1p113, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 53 TEST_f_f (roundeven, 0x1p114, 0x1p114, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 54 TEST_f_f (roundeven, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 55 TEST_f_f (roundeven, -min_subnorm_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 56 TEST_f_f (roundeven, -min_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 57 TEST_f_f (roundeven, -1, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 58 TEST_f_f (roundeven, -2, -2, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 59 TEST_f_f (roundeven, -3, -3, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 60 TEST_f_f (roundeven, -4, -4, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 61 TEST_f_f (roundeven, -5, -5, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 62 TEST_f_f (roundeven, -0x1p23, -0x1p23, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 63 TEST_f_f (roundeven, -0x1p24, -0x1p24, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 64 TEST_f_f (roundeven, -0x1p25, -0x1p25, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 65 TEST_f_f (roundeven, -0x1p52, -0x1p52, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 66 TEST_f_f (roundeven, -0x1p53, -0x1p53, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 67 TEST_f_f (roundeven, -0x1p54, -0x1p54, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 68 TEST_f_f (roundeven, -0x1p63, -0x1p63, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 69 TEST_f_f (roundeven, -0x1p64, -0x1p64, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 70 TEST_f_f (roundeven, -0x1p65, -0x1p65, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 71 TEST_f_f (roundeven, -0x1p105, -0x1p105, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 72 TEST_f_f (roundeven, -0x1p106, -0x1p106, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 73 TEST_f_f (roundeven, -0x1p107, -0x1p107, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 74 TEST_f_f (roundeven, -0x1p112, -0x1p112, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 75 TEST_f_f (roundeven, -0x1p113, -0x1p113, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 76 TEST_f_f (roundeven, -0x1p114, -0x1p114, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 77 TEST_f_f (roundeven, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 78 79 TEST_f_f (roundeven, 0.1, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 80 TEST_f_f (roundeven, -0.1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 81 TEST_f_f (roundeven, 0.2, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 82 TEST_f_f (roundeven, -0.2, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 83 TEST_f_f (roundeven, 0.25, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 84 TEST_f_f (roundeven, -0.25, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 85 TEST_f_f (roundeven, 0.499, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 86 TEST_f_f (roundeven, -0.499, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 87 TEST_f_f (roundeven, 0.5, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 88 TEST_f_f (roundeven, -0.5, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 89 TEST_f_f (roundeven, 0.501, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 90 TEST_f_f (roundeven, -0.501, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 91 TEST_f_f (roundeven, 0.625, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 92 TEST_f_f (roundeven, -0.625, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 93 TEST_f_f (roundeven, 0.75, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 94 TEST_f_f (roundeven, -0.75, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 95 TEST_f_f (roundeven, 0.8, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 96 TEST_f_f (roundeven, -0.8, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 97 TEST_f_f (roundeven, 1.25, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 98 TEST_f_f (roundeven, -1.25, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 99 TEST_f_f (roundeven, 1.499, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 100 TEST_f_f (roundeven, -1.499, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 101 TEST_f_f (roundeven, 1.5, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 102 TEST_f_f (roundeven, -1.5, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 103 TEST_f_f (roundeven, 1.501, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 104 TEST_f_f (roundeven, -1.501, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 105 TEST_f_f (roundeven, 1.75, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 106 TEST_f_f (roundeven, -1.75, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 107 TEST_f_f (roundeven, 2.25, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 108 TEST_f_f (roundeven, -2.25, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 109 TEST_f_f (roundeven, 2.499, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 110 TEST_f_f (roundeven, -2.499, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 111 TEST_f_f (roundeven, 2.5, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 112 TEST_f_f (roundeven, -2.5, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 113 TEST_f_f (roundeven, 2.501, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 114 TEST_f_f (roundeven, -2.501, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 115 TEST_f_f (roundeven, 2.75, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 116 TEST_f_f (roundeven, -2.75, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 117 TEST_f_f (roundeven, 3.25, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 118 TEST_f_f (roundeven, -3.25, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 119 TEST_f_f (roundeven, 3.499, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 120 TEST_f_f (roundeven, -3.499, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 121 TEST_f_f (roundeven, 3.5, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 122 TEST_f_f (roundeven, -3.5, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 123 TEST_f_f (roundeven, 3.501, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 124 TEST_f_f (roundeven, -3.501, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 125 TEST_f_f (roundeven, 3.75, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 126 TEST_f_f (roundeven, -3.75, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 127 TEST_f_f (roundeven, 4.25, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 128 TEST_f_f (roundeven, -4.25, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 129 TEST_f_f (roundeven, 4.499, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 130 TEST_f_f (roundeven, -4.499, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 131 TEST_f_f (roundeven, 4.5, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 132 TEST_f_f (roundeven, -4.5, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 133 TEST_f_f (roundeven, 4.501, 5.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 134 TEST_f_f (roundeven, -4.501, -5.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 135 TEST_f_f (roundeven, 4.75, 5.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 136 TEST_f_f (roundeven, -4.75, -5.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 137 TEST_f_f (roundeven, 5.25, 5.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 138 TEST_f_f (roundeven, -5.25, -5.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 139 TEST_f_f (roundeven, 5.499, 5.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 140 TEST_f_f (roundeven, -5.499, -5.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 141 TEST_f_f (roundeven, 5.5, 6.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 142 TEST_f_f (roundeven, -5.5, -6.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 143 TEST_f_f (roundeven, 5.501, 6.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 144 TEST_f_f (roundeven, -5.501, -6.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 145 TEST_f_f (roundeven, 5.75, 6.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 146 TEST_f_f (roundeven, -5.75, -6.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 147 148 /* 0.5, 1.5, 2.5, 3.5 +/- 1ulp. */ 149 TEST_f_f (roundeven, 0x0.ffffffp-1, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 150 TEST_f_f (roundeven, -0x0.ffffffp-1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 151 TEST_f_f (roundeven, 0x1.000002p-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 152 TEST_f_f (roundeven, -0x1.000002p-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 153 TEST_f_f (roundeven, 0x2.fffffcp-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 154 TEST_f_f (roundeven, -0x2.fffffcp-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 155 TEST_f_f (roundeven, 0x3.000004p-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 156 TEST_f_f (roundeven, -0x3.000004p-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 157 TEST_f_f (roundeven, 0x4.fffff8p-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 158 TEST_f_f (roundeven, -0x4.fffff8p-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 159 TEST_f_f (roundeven, 0x5.000008p-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 160 TEST_f_f (roundeven, -0x5.000008p-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 161 TEST_f_f (roundeven, 0x6.fffff8p-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 162 TEST_f_f (roundeven, -0x6.fffff8p-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 163 TEST_f_f (roundeven, 0x7.000008p-1, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 164 TEST_f_f (roundeven, -0x7.000008p-1, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 165#if MANT_DIG >= 53 166 TEST_f_f (roundeven, 0x0.fffffffffffff8p-1, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 167 TEST_f_f (roundeven, -0x0.fffffffffffff8p-1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 168 TEST_f_f (roundeven, 0x1.0000000000001p-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 169 TEST_f_f (roundeven, -0x1.0000000000001p-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 170 TEST_f_f (roundeven, 0x2.ffffffffffffep-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 171 TEST_f_f (roundeven, -0x2.ffffffffffffep-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 172 TEST_f_f (roundeven, 0x3.0000000000002p-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 173 TEST_f_f (roundeven, -0x3.0000000000002p-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 174 TEST_f_f (roundeven, 0x4.ffffffffffffcp-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 175 TEST_f_f (roundeven, -0x4.ffffffffffffcp-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 176 TEST_f_f (roundeven, 0x5.0000000000004p-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 177 TEST_f_f (roundeven, -0x5.0000000000004p-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 178 TEST_f_f (roundeven, 0x6.ffffffffffffcp-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 179 TEST_f_f (roundeven, -0x6.ffffffffffffcp-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 180 TEST_f_f (roundeven, 0x7.0000000000004p-1, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 181 TEST_f_f (roundeven, -0x7.0000000000004p-1, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 182#endif 183#if MANT_DIG >= 64 184 TEST_f_f (roundeven, 0x0.ffffffffffffffffp-1, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 185 TEST_f_f (roundeven, -0x0.ffffffffffffffffp-1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 186 TEST_f_f (roundeven, 0x1.0000000000000002p-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 187 TEST_f_f (roundeven, -0x1.0000000000000002p-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 188 TEST_f_f (roundeven, 0x2.fffffffffffffffcp-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 189 TEST_f_f (roundeven, -0x2.fffffffffffffffcp-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 190 TEST_f_f (roundeven, 0x3.0000000000000004p-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 191 TEST_f_f (roundeven, -0x3.0000000000000004p-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 192 TEST_f_f (roundeven, 0x4.fffffffffffffff8p-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 193 TEST_f_f (roundeven, -0x4.fffffffffffffff8p-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 194 TEST_f_f (roundeven, 0x5.0000000000000008p-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 195 TEST_f_f (roundeven, -0x5.0000000000000008p-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 196 TEST_f_f (roundeven, 0x6.fffffffffffffff8p-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 197 TEST_f_f (roundeven, -0x6.fffffffffffffff8p-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 198 TEST_f_f (roundeven, 0x7.0000000000000008p-1, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 199 TEST_f_f (roundeven, -0x7.0000000000000008p-1, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 200#endif 201#if MANT_DIG >= 106 202 TEST_f_f (roundeven, 0x0.ffffffffffffffffffffffffffcp-1, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 203 TEST_f_f (roundeven, -0x0.ffffffffffffffffffffffffffcp-1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 204 TEST_f_f (roundeven, 0x1.000000000000000000000000008p-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 205 TEST_f_f (roundeven, -0x1.000000000000000000000000008p-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 206 TEST_f_f (roundeven, 0x2.ffffffffffffffffffffffffffp-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 207 TEST_f_f (roundeven, -0x2.ffffffffffffffffffffffffffp-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 208 TEST_f_f (roundeven, 0x3.00000000000000000000000001p-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 209 TEST_f_f (roundeven, -0x3.00000000000000000000000001p-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 210 TEST_f_f (roundeven, 0x4.fffffffffffffffffffffffffep-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 211 TEST_f_f (roundeven, -0x4.fffffffffffffffffffffffffep-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 212 TEST_f_f (roundeven, 0x5.00000000000000000000000002p-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 213 TEST_f_f (roundeven, -0x5.00000000000000000000000002p-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 214 TEST_f_f (roundeven, 0x6.fffffffffffffffffffffffffep-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 215 TEST_f_f (roundeven, -0x6.fffffffffffffffffffffffffep-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 216 TEST_f_f (roundeven, 0x7.00000000000000000000000002p-1, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 217 TEST_f_f (roundeven, -0x7.00000000000000000000000002p-1, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 218#endif 219#if MANT_DIG >= 113 220 TEST_f_f (roundeven, 0x0.ffffffffffffffffffffffffffff8p-1, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 221 TEST_f_f (roundeven, -0x0.ffffffffffffffffffffffffffff8p-1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 222 TEST_f_f (roundeven, 0x1.0000000000000000000000000001p-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 223 TEST_f_f (roundeven, -0x1.0000000000000000000000000001p-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 224 TEST_f_f (roundeven, 0x2.fffffffffffffffffffffffffffep-1, 1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 225 TEST_f_f (roundeven, -0x2.fffffffffffffffffffffffffffep-1, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 226 TEST_f_f (roundeven, 0x3.0000000000000000000000000002p-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 227 TEST_f_f (roundeven, -0x3.0000000000000000000000000002p-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 228 TEST_f_f (roundeven, 0x4.fffffffffffffffffffffffffffcp-1, 2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 229 TEST_f_f (roundeven, -0x4.fffffffffffffffffffffffffffcp-1, -2.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 230 TEST_f_f (roundeven, 0x5.0000000000000000000000000004p-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 231 TEST_f_f (roundeven, -0x5.0000000000000000000000000004p-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 232 TEST_f_f (roundeven, 0x6.fffffffffffffffffffffffffffcp-1, 3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 233 TEST_f_f (roundeven, -0x6.fffffffffffffffffffffffffffcp-1, -3.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 234 TEST_f_f (roundeven, 0x7.0000000000000000000000000004p-1, 4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 235 TEST_f_f (roundeven, -0x7.0000000000000000000000000004p-1, -4.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 236#endif 237 238 /* 31, 32, 33 fractional bits. */ 239#if MANT_DIG >= 53 240 TEST_f_f (roundeven, 0x200000.7ffffffep0, 0x200000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 241 TEST_f_f (roundeven, -0x200000.7ffffffep0, -0x200000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 242 TEST_f_f (roundeven, 0x200000.8p0, 0x200000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 243 TEST_f_f (roundeven, -0x200000.8p0, -0x200000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 244 TEST_f_f (roundeven, 0x200000.80000002p0, 0x200001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 245 TEST_f_f (roundeven, -0x200000.80000002p0, -0x200001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 246 TEST_f_f (roundeven, 0x200001.7ffffffep0, 0x200001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 247 TEST_f_f (roundeven, -0x200001.7ffffffep0, -0x200001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 248 TEST_f_f (roundeven, 0x200001.8p0, 0x200002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 249 TEST_f_f (roundeven, -0x200001.8p0, -0x200002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 250 TEST_f_f (roundeven, 0x200001.80000002p0, 0x200002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 251 TEST_f_f (roundeven, -0x200001.80000002p0, -0x200002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 252 TEST_f_f (roundeven, 0x3fffff.fffffffep0, 0x400000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 253 TEST_f_f (roundeven, -0x3fffff.fffffffep0, -0x400000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 254 TEST_f_f (roundeven, 0x100000.7fffffffp0, 0x100000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 255 TEST_f_f (roundeven, -0x100000.7fffffffp0, -0x100000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 256 TEST_f_f (roundeven, 0x100000.8p0, 0x100000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 257 TEST_f_f (roundeven, -0x100000.8p0, -0x100000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 258 TEST_f_f (roundeven, 0x100000.80000001p0, 0x100001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 259 TEST_f_f (roundeven, -0x100000.80000001p0, -0x100001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 260 TEST_f_f (roundeven, 0x100001.7fffffffp0, 0x100001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 261 TEST_f_f (roundeven, -0x100001.7fffffffp0, -0x100001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 262 TEST_f_f (roundeven, 0x100001.8p0, 0x100002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 263 TEST_f_f (roundeven, -0x100001.8p0, -0x100002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 264 TEST_f_f (roundeven, 0x100001.80000001p0, 0x100002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 265 TEST_f_f (roundeven, -0x100001.80000001p0, -0x100002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 266 TEST_f_f (roundeven, 0x1fffff.ffffffffp0, 0x200000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 267 TEST_f_f (roundeven, -0x1fffff.ffffffffp0, -0x200000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 268 TEST_f_f (roundeven, 0x80000.7fffffff8p0, 0x80000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 269 TEST_f_f (roundeven, -0x80000.7fffffff8p0, -0x80000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 270 TEST_f_f (roundeven, 0x80000.8p0, 0x80000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 271 TEST_f_f (roundeven, -0x80000.8p0, -0x80000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 272 TEST_f_f (roundeven, 0x80000.800000008p0, 0x80001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 273 TEST_f_f (roundeven, -0x80000.800000008p0, -0x80001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 274 TEST_f_f (roundeven, 0x80001.7fffffff8p0, 0x80001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 275 TEST_f_f (roundeven, -0x80001.7fffffff8p0, -0x80001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 276 TEST_f_f (roundeven, 0x80001.8p0, 0x80002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 277 TEST_f_f (roundeven, -0x80001.8p0, -0x80002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 278 TEST_f_f (roundeven, 0x80001.800000008p0, 0x80002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 279 TEST_f_f (roundeven, -0x80001.800000008p0, -0x80002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 280 TEST_f_f (roundeven, 0xfffff.ffffffff8p0, 0x100000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 281 TEST_f_f (roundeven, -0xfffff.ffffffff8p0, -0x100000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 282#endif 283#if MANT_DIG >= 64 284 TEST_f_f (roundeven, 0x100000000.7ffffffep0, 0x100000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 285 TEST_f_f (roundeven, -0x100000000.7ffffffep0, -0x100000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 286 TEST_f_f (roundeven, 0x100000000.8p0, 0x100000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 287 TEST_f_f (roundeven, -0x100000000.8p0, -0x100000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 288 TEST_f_f (roundeven, 0x100000000.80000002p0, 0x100000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 289 TEST_f_f (roundeven, -0x100000000.80000002p0, -0x100000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 290 TEST_f_f (roundeven, 0x100000001.7ffffffep0, 0x100000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 291 TEST_f_f (roundeven, -0x100000001.7ffffffep0, -0x100000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 292 TEST_f_f (roundeven, 0x100000001.8p0, 0x100000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 293 TEST_f_f (roundeven, -0x100000001.8p0, -0x100000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 294 TEST_f_f (roundeven, 0x100000001.80000002p0, 0x100000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 295 TEST_f_f (roundeven, -0x100000001.80000002p0, -0x100000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 296 TEST_f_f (roundeven, 0x1ffffffff.fffffffep0, 0x200000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 297 TEST_f_f (roundeven, -0x1ffffffff.fffffffep0, -0x200000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 298 TEST_f_f (roundeven, 0x80000000.7fffffffp0, 0x80000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 299 TEST_f_f (roundeven, -0x80000000.7fffffffp0, -0x80000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 300 TEST_f_f (roundeven, 0x80000000.8p0, 0x80000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 301 TEST_f_f (roundeven, -0x80000000.8p0, -0x80000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 302 TEST_f_f (roundeven, 0x80000000.80000001p0, 0x80000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 303 TEST_f_f (roundeven, -0x80000000.80000001p0, -0x80000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 304 TEST_f_f (roundeven, 0x80000001.7fffffffp0, 0x80000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 305 TEST_f_f (roundeven, -0x80000001.7fffffffp0, -0x80000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 306 TEST_f_f (roundeven, 0x80000001.8p0, 0x80000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 307 TEST_f_f (roundeven, -0x80000001.8p0, -0x80000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 308 TEST_f_f (roundeven, 0x80000001.80000001p0, 0x80000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 309 TEST_f_f (roundeven, -0x80000001.80000001p0, -0x80000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 310 TEST_f_f (roundeven, 0xffffffff.ffffffffp0, 0x100000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 311 TEST_f_f (roundeven, -0xffffffff.ffffffffp0, -0x100000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 312 TEST_f_f (roundeven, 0x40000000.7fffffff8p0, 0x40000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 313 TEST_f_f (roundeven, -0x40000000.7fffffff8p0, -0x40000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 314 TEST_f_f (roundeven, 0x40000000.8p0, 0x40000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 315 TEST_f_f (roundeven, -0x40000000.8p0, -0x40000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 316 TEST_f_f (roundeven, 0x40000000.800000008p0, 0x40000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 317 TEST_f_f (roundeven, -0x40000000.800000008p0, -0x40000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 318 TEST_f_f (roundeven, 0x40000001.7fffffff8p0, 0x40000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 319 TEST_f_f (roundeven, -0x40000001.7fffffff8p0, -0x40000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 320 TEST_f_f (roundeven, 0x40000001.8p0, 0x40000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 321 TEST_f_f (roundeven, -0x40000001.8p0, -0x40000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 322 TEST_f_f (roundeven, 0x40000001.800000008p0, 0x40000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 323 TEST_f_f (roundeven, -0x40000001.800000008p0, -0x40000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 324 TEST_f_f (roundeven, 0x7fffffff.ffffffff8p0, 0x80000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 325 TEST_f_f (roundeven, -0x7fffffff.ffffffff8p0, -0x80000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 326#endif 327#if MANT_DIG >= 106 328 TEST_f_f (roundeven, 0x4000000000000000000.7ffffffep0, 0x4000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 329 TEST_f_f (roundeven, -0x4000000000000000000.7ffffffep0, -0x4000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 330 TEST_f_f (roundeven, 0x4000000000000000000.8p0, 0x4000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 331 TEST_f_f (roundeven, -0x4000000000000000000.8p0, -0x4000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 332 TEST_f_f (roundeven, 0x4000000000000000000.80000002p0, 0x4000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 333 TEST_f_f (roundeven, -0x4000000000000000000.80000002p0, -0x4000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 334 TEST_f_f (roundeven, 0x4000000000000000001.7ffffffep0, 0x4000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 335 TEST_f_f (roundeven, -0x4000000000000000001.7ffffffep0, -0x4000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 336 TEST_f_f (roundeven, 0x4000000000000000001.8p0, 0x4000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 337 TEST_f_f (roundeven, -0x4000000000000000001.8p0, -0x4000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 338 TEST_f_f (roundeven, 0x4000000000000000001.80000002p0, 0x4000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 339 TEST_f_f (roundeven, -0x4000000000000000001.80000002p0, -0x4000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 340 TEST_f_f (roundeven, 0x7ffffffffffffffffff.fffffffep0, 0x8000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 341 TEST_f_f (roundeven, -0x7ffffffffffffffffff.fffffffep0, -0x8000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 342 TEST_f_f (roundeven, 0x2000000000000000000.7fffffffp0, 0x2000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 343 TEST_f_f (roundeven, -0x2000000000000000000.7fffffffp0, -0x2000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 344 TEST_f_f (roundeven, 0x2000000000000000000.8p0, 0x2000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 345 TEST_f_f (roundeven, -0x2000000000000000000.8p0, -0x2000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 346 TEST_f_f (roundeven, 0x2000000000000000000.80000001p0, 0x2000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 347 TEST_f_f (roundeven, -0x2000000000000000000.80000001p0, -0x2000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 348 TEST_f_f (roundeven, 0x2000000000000000001.7fffffffp0, 0x2000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 349 TEST_f_f (roundeven, -0x2000000000000000001.7fffffffp0, -0x2000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 350 TEST_f_f (roundeven, 0x2000000000000000001.8p0, 0x2000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 351 TEST_f_f (roundeven, -0x2000000000000000001.8p0, -0x2000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 352 TEST_f_f (roundeven, 0x2000000000000000001.80000001p0, 0x2000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 353 TEST_f_f (roundeven, -0x2000000000000000001.80000001p0, -0x2000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 354 TEST_f_f (roundeven, 0x3ffffffffffffffffff.ffffffffp0, 0x4000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 355 TEST_f_f (roundeven, -0x3ffffffffffffffffff.ffffffffp0, -0x4000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 356 TEST_f_f (roundeven, 0x1000000000000000000.7fffffff8p0, 0x1000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 357 TEST_f_f (roundeven, -0x1000000000000000000.7fffffff8p0, -0x1000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 358 TEST_f_f (roundeven, 0x1000000000000000000.8p0, 0x1000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 359 TEST_f_f (roundeven, -0x1000000000000000000.8p0, -0x1000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 360 TEST_f_f (roundeven, 0x1000000000000000000.800000008p0, 0x1000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 361 TEST_f_f (roundeven, -0x1000000000000000000.800000008p0, -0x1000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 362 TEST_f_f (roundeven, 0x1000000000000000001.7fffffff8p0, 0x1000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 363 TEST_f_f (roundeven, -0x1000000000000000001.7fffffff8p0, -0x1000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 364 TEST_f_f (roundeven, 0x1000000000000000001.8p0, 0x1000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 365 TEST_f_f (roundeven, -0x1000000000000000001.8p0, -0x1000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 366 TEST_f_f (roundeven, 0x1000000000000000001.800000008p0, 0x1000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 367 TEST_f_f (roundeven, -0x1000000000000000001.800000008p0, -0x1000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 368 TEST_f_f (roundeven, 0x1ffffffffffffffffff.ffffffff8p0, 0x2000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 369 TEST_f_f (roundeven, -0x1ffffffffffffffffff.ffffffff8p0, -0x2000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 370#endif 371#if MANT_DIG >= 113 372 TEST_f_f (roundeven, 0x200000000000000000000.7ffffffep0, 0x200000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 373 TEST_f_f (roundeven, -0x200000000000000000000.7ffffffep0, -0x200000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 374 TEST_f_f (roundeven, 0x200000000000000000000.8p0, 0x200000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 375 TEST_f_f (roundeven, -0x200000000000000000000.8p0, -0x200000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 376 TEST_f_f (roundeven, 0x200000000000000000000.80000002p0, 0x200000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 377 TEST_f_f (roundeven, -0x200000000000000000000.80000002p0, -0x200000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 378 TEST_f_f (roundeven, 0x200000000000000000001.7ffffffep0, 0x200000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 379 TEST_f_f (roundeven, -0x200000000000000000001.7ffffffep0, -0x200000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 380 TEST_f_f (roundeven, 0x200000000000000000001.8p0, 0x200000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 381 TEST_f_f (roundeven, -0x200000000000000000001.8p0, -0x200000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 382 TEST_f_f (roundeven, 0x200000000000000000001.80000002p0, 0x200000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 383 TEST_f_f (roundeven, -0x200000000000000000001.80000002p0, -0x200000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 384 TEST_f_f (roundeven, 0x3ffffffffffffffffffff.fffffffep0, 0x400000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 385 TEST_f_f (roundeven, -0x3ffffffffffffffffffff.fffffffep0, -0x400000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 386 TEST_f_f (roundeven, 0x100000000000000000000.7fffffffp0, 0x100000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 387 TEST_f_f (roundeven, -0x100000000000000000000.7fffffffp0, -0x100000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 388 TEST_f_f (roundeven, 0x100000000000000000000.8p0, 0x100000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 389 TEST_f_f (roundeven, -0x100000000000000000000.8p0, -0x100000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 390 TEST_f_f (roundeven, 0x100000000000000000000.80000001p0, 0x100000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 391 TEST_f_f (roundeven, -0x100000000000000000000.80000001p0, -0x100000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 392 TEST_f_f (roundeven, 0x100000000000000000001.7fffffffp0, 0x100000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 393 TEST_f_f (roundeven, -0x100000000000000000001.7fffffffp0, -0x100000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 394 TEST_f_f (roundeven, 0x100000000000000000001.8p0, 0x100000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 395 TEST_f_f (roundeven, -0x100000000000000000001.8p0, -0x100000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 396 TEST_f_f (roundeven, 0x100000000000000000001.80000001p0, 0x100000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 397 TEST_f_f (roundeven, -0x100000000000000000001.80000001p0, -0x100000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 398 TEST_f_f (roundeven, 0x1ffffffffffffffffffff.ffffffffp0, 0x200000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 399 TEST_f_f (roundeven, -0x1ffffffffffffffffffff.ffffffffp0, -0x200000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 400 TEST_f_f (roundeven, 0x80000000000000000000.7fffffff8p0, 0x80000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 401 TEST_f_f (roundeven, -0x80000000000000000000.7fffffff8p0, -0x80000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 402 TEST_f_f (roundeven, 0x80000000000000000000.8p0, 0x80000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 403 TEST_f_f (roundeven, -0x80000000000000000000.8p0, -0x80000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 404 TEST_f_f (roundeven, 0x80000000000000000000.800000008p0, 0x80000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 405 TEST_f_f (roundeven, -0x80000000000000000000.800000008p0, -0x80000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 406 TEST_f_f (roundeven, 0x80000000000000000001.7fffffff8p0, 0x80000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 407 TEST_f_f (roundeven, -0x80000000000000000001.7fffffff8p0, -0x80000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 408 TEST_f_f (roundeven, 0x80000000000000000001.8p0, 0x80000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 409 TEST_f_f (roundeven, -0x80000000000000000001.8p0, -0x80000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 410 TEST_f_f (roundeven, 0x80000000000000000001.800000008p0, 0x80000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 411 TEST_f_f (roundeven, -0x80000000000000000001.800000008p0, -0x80000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 412 TEST_f_f (roundeven, 0xffffffffffffffffffff.ffffffff8p0, 0x100000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 413 TEST_f_f (roundeven, -0xffffffffffffffffffff.ffffffff8p0, -0x100000000000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 414#endif 415 416 /* 63, 64, 65 fractional bits. */ 417#if MANT_DIG >= 106 418 TEST_f_f (roundeven, 0x40000000000.7ffffffffffffffep0, 0x40000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 419 TEST_f_f (roundeven, -0x40000000000.7ffffffffffffffep0, -0x40000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 420 TEST_f_f (roundeven, 0x40000000000.8p0, 0x40000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 421 TEST_f_f (roundeven, -0x40000000000.8p0, -0x40000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 422 TEST_f_f (roundeven, 0x40000000000.8000000000000002p0, 0x40000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 423 TEST_f_f (roundeven, -0x40000000000.8000000000000002p0, -0x40000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 424 TEST_f_f (roundeven, 0x40000000001.7ffffffffffffffep0, 0x40000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 425 TEST_f_f (roundeven, -0x40000000001.7ffffffffffffffep0, -0x40000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 426 TEST_f_f (roundeven, 0x40000000001.8p0, 0x40000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 427 TEST_f_f (roundeven, -0x40000000001.8p0, -0x40000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 428 TEST_f_f (roundeven, 0x40000000001.8000000000000002p0, 0x40000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 429 TEST_f_f (roundeven, -0x40000000001.8000000000000002p0, -0x40000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 430 TEST_f_f (roundeven, 0x7ffffffffff.fffffffffffffffep0, 0x80000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 431 TEST_f_f (roundeven, -0x7ffffffffff.fffffffffffffffep0, -0x80000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 432 TEST_f_f (roundeven, 0x20000000000.7fffffffffffffffp0, 0x20000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 433 TEST_f_f (roundeven, -0x20000000000.7fffffffffffffffp0, -0x20000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 434 TEST_f_f (roundeven, 0x20000000000.8p0, 0x20000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 435 TEST_f_f (roundeven, -0x20000000000.8p0, -0x20000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 436 TEST_f_f (roundeven, 0x20000000000.8000000000000001p0, 0x20000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 437 TEST_f_f (roundeven, -0x20000000000.8000000000000001p0, -0x20000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 438 TEST_f_f (roundeven, 0x20000000001.7fffffffffffffffp0, 0x20000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 439 TEST_f_f (roundeven, -0x20000000001.7fffffffffffffffp0, -0x20000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 440 TEST_f_f (roundeven, 0x20000000001.8p0, 0x20000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 441 TEST_f_f (roundeven, -0x20000000001.8p0, -0x20000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 442 TEST_f_f (roundeven, 0x20000000001.8000000000000001p0, 0x20000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 443 TEST_f_f (roundeven, -0x20000000001.8000000000000001p0, -0x20000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 444 TEST_f_f (roundeven, 0x3ffffffffff.ffffffffffffffffp0, 0x40000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 445 TEST_f_f (roundeven, -0x3ffffffffff.ffffffffffffffffp0, -0x40000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 446 TEST_f_f (roundeven, 0x10000000000.7fffffffffffffff8p0, 0x10000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 447 TEST_f_f (roundeven, -0x10000000000.7fffffffffffffff8p0, -0x10000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 448 TEST_f_f (roundeven, 0x10000000000.8p0, 0x10000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 449 TEST_f_f (roundeven, -0x10000000000.8p0, -0x10000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 450 TEST_f_f (roundeven, 0x10000000000.80000000000000008p0, 0x10000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 451 TEST_f_f (roundeven, -0x10000000000.80000000000000008p0, -0x10000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 452 TEST_f_f (roundeven, 0x10000000001.7fffffffffffffff8p0, 0x10000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 453 TEST_f_f (roundeven, -0x10000000001.7fffffffffffffff8p0, -0x10000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 454 TEST_f_f (roundeven, 0x10000000001.8p0, 0x10000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 455 TEST_f_f (roundeven, -0x10000000001.8p0, -0x10000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 456 TEST_f_f (roundeven, 0x10000000001.80000000000000008p0, 0x10000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 457 TEST_f_f (roundeven, -0x10000000001.80000000000000008p0, -0x10000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 458 TEST_f_f (roundeven, 0x1ffffffffff.ffffffffffffffff8p0, 0x20000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 459 TEST_f_f (roundeven, -0x1ffffffffff.ffffffffffffffff8p0, -0x20000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 460#endif 461#if MANT_DIG >= 113 462 TEST_f_f (roundeven, 0x2000000000000.7ffffffffffffffep0, 0x2000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 463 TEST_f_f (roundeven, -0x2000000000000.7ffffffffffffffep0, -0x2000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 464 TEST_f_f (roundeven, 0x2000000000000.8p0, 0x2000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 465 TEST_f_f (roundeven, -0x2000000000000.8p0, -0x2000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 466 TEST_f_f (roundeven, 0x2000000000000.8000000000000002p0, 0x2000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 467 TEST_f_f (roundeven, -0x2000000000000.8000000000000002p0, -0x2000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 468 TEST_f_f (roundeven, 0x2000000000001.7ffffffffffffffep0, 0x2000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 469 TEST_f_f (roundeven, -0x2000000000001.7ffffffffffffffep0, -0x2000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 470 TEST_f_f (roundeven, 0x2000000000001.8p0, 0x2000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 471 TEST_f_f (roundeven, -0x2000000000001.8p0, -0x2000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 472 TEST_f_f (roundeven, 0x2000000000001.8000000000000002p0, 0x2000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 473 TEST_f_f (roundeven, -0x2000000000001.8000000000000002p0, -0x2000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 474 TEST_f_f (roundeven, 0x3ffffffffffff.fffffffffffffffep0, 0x4000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 475 TEST_f_f (roundeven, -0x3ffffffffffff.fffffffffffffffep0, -0x4000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 476 TEST_f_f (roundeven, 0x1000000000000.7fffffffffffffffp0, 0x1000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 477 TEST_f_f (roundeven, -0x1000000000000.7fffffffffffffffp0, -0x1000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 478 TEST_f_f (roundeven, 0x1000000000000.8p0, 0x1000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 479 TEST_f_f (roundeven, -0x1000000000000.8p0, -0x1000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 480 TEST_f_f (roundeven, 0x1000000000000.8000000000000001p0, 0x1000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 481 TEST_f_f (roundeven, -0x1000000000000.8000000000000001p0, -0x1000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 482 TEST_f_f (roundeven, 0x1000000000001.7fffffffffffffffp0, 0x1000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 483 TEST_f_f (roundeven, -0x1000000000001.7fffffffffffffffp0, -0x1000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 484 TEST_f_f (roundeven, 0x1000000000001.8p0, 0x1000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 485 TEST_f_f (roundeven, -0x1000000000001.8p0, -0x1000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 486 TEST_f_f (roundeven, 0x1000000000001.8000000000000001p0, 0x1000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 487 TEST_f_f (roundeven, -0x1000000000001.8000000000000001p0, -0x1000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 488 TEST_f_f (roundeven, 0x1ffffffffffff.ffffffffffffffffp0, 0x2000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 489 TEST_f_f (roundeven, -0x1ffffffffffff.ffffffffffffffffp0, -0x2000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 490 TEST_f_f (roundeven, 0x800000000000.7fffffffffffffff8p0, 0x800000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 491 TEST_f_f (roundeven, -0x800000000000.7fffffffffffffff8p0, -0x800000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 492 TEST_f_f (roundeven, 0x800000000000.8p0, 0x800000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 493 TEST_f_f (roundeven, -0x800000000000.8p0, -0x800000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 494 TEST_f_f (roundeven, 0x800000000000.80000000000000008p0, 0x800000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 495 TEST_f_f (roundeven, -0x800000000000.80000000000000008p0, -0x800000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 496 TEST_f_f (roundeven, 0x800000000001.7fffffffffffffff8p0, 0x800000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 497 TEST_f_f (roundeven, -0x800000000001.7fffffffffffffff8p0, -0x800000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 498 TEST_f_f (roundeven, 0x800000000001.8p0, 0x800000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 499 TEST_f_f (roundeven, -0x800000000001.8p0, -0x800000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 500 TEST_f_f (roundeven, 0x800000000001.80000000000000008p0, 0x800000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 501 TEST_f_f (roundeven, -0x800000000001.80000000000000008p0, -0x800000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 502 TEST_f_f (roundeven, 0xffffffffffff.ffffffffffffffff8p0, 0x1000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 503 TEST_f_f (roundeven, -0xffffffffffff.ffffffffffffffff8p0, -0x1000000000000p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 504#endif 505 506 /* Maximum exponent for noninteger values. */ 507 TEST_f_f (roundeven, 0x800001p-1, 0x800000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 508 TEST_f_f (roundeven, -0x800001p-1, -0x800000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 509 TEST_f_f (roundeven, 0x800002p-1, 0x800002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 510 TEST_f_f (roundeven, -0x800002p-1, -0x800002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 511 TEST_f_f (roundeven, 0x800003p-1, 0x800004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 512 TEST_f_f (roundeven, -0x800003p-1, -0x800004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 513 TEST_f_f (roundeven, 0x800004p-1, 0x800004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 514 TEST_f_f (roundeven, -0x800004p-1, -0x800004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 515 TEST_f_f (roundeven, 0x800005p-1, 0x800004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 516 TEST_f_f (roundeven, -0x800005p-1, -0x800004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 517 TEST_f_f (roundeven, 0xffffffp-1, 0x1000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 518 TEST_f_f (roundeven, -0xffffffp-1, -0x1000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 519#if MANT_DIG >= 53 520 TEST_f_f (roundeven, 0x10000000000001p-1, 0x10000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 521 TEST_f_f (roundeven, -0x10000000000001p-1, -0x10000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 522 TEST_f_f (roundeven, 0x10000000000002p-1, 0x10000000000002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 523 TEST_f_f (roundeven, -0x10000000000002p-1, -0x10000000000002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 524 TEST_f_f (roundeven, 0x10000000000003p-1, 0x10000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 525 TEST_f_f (roundeven, -0x10000000000003p-1, -0x10000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 526 TEST_f_f (roundeven, 0x10000000000004p-1, 0x10000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 527 TEST_f_f (roundeven, -0x10000000000004p-1, -0x10000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 528 TEST_f_f (roundeven, 0x10000000000005p-1, 0x10000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 529 TEST_f_f (roundeven, -0x10000000000005p-1, -0x10000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 530 TEST_f_f (roundeven, 0x1fffffffffffffp-1, 0x20000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 531 TEST_f_f (roundeven, -0x1fffffffffffffp-1, -0x20000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 532#endif 533#if MANT_DIG >= 64 534 TEST_f_f (roundeven, 0x8000000000000001p-1, 0x8000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 535 TEST_f_f (roundeven, -0x8000000000000001p-1, -0x8000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 536 TEST_f_f (roundeven, 0x8000000000000002p-1, 0x8000000000000002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 537 TEST_f_f (roundeven, -0x8000000000000002p-1, -0x8000000000000002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 538 TEST_f_f (roundeven, 0x8000000000000003p-1, 0x8000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 539 TEST_f_f (roundeven, -0x8000000000000003p-1, -0x8000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 540 TEST_f_f (roundeven, 0x8000000000000004p-1, 0x8000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 541 TEST_f_f (roundeven, -0x8000000000000004p-1, -0x8000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 542 TEST_f_f (roundeven, 0x8000000000000005p-1, 0x8000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 543 TEST_f_f (roundeven, -0x8000000000000005p-1, -0x8000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 544 TEST_f_f (roundeven, 0xffffffffffffffffp-1, 0x10000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 545 TEST_f_f (roundeven, -0xffffffffffffffffp-1, -0x10000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 546#endif 547#if MANT_DIG >= 106 548 TEST_f_f (roundeven, 0x200000000000000000000000001p-1, 0x200000000000000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 549 TEST_f_f (roundeven, -0x200000000000000000000000001p-1, -0x200000000000000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 550 TEST_f_f (roundeven, 0x200000000000000000000000002p-1, 0x200000000000000000000000002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 551 TEST_f_f (roundeven, -0x200000000000000000000000002p-1, -0x200000000000000000000000002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 552 TEST_f_f (roundeven, 0x200000000000000000000000003p-1, 0x200000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 553 TEST_f_f (roundeven, -0x200000000000000000000000003p-1, -0x200000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 554 TEST_f_f (roundeven, 0x200000000000000000000000004p-1, 0x200000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 555 TEST_f_f (roundeven, -0x200000000000000000000000004p-1, -0x200000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 556 TEST_f_f (roundeven, 0x200000000000000000000000005p-1, 0x200000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 557 TEST_f_f (roundeven, -0x200000000000000000000000005p-1, -0x200000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 558 TEST_f_f (roundeven, 0x3ffffffffffffffffffffffffffp-1, 0x400000000000000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 559 TEST_f_f (roundeven, -0x3ffffffffffffffffffffffffffp-1, -0x400000000000000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 560#endif 561#if MANT_DIG >= 113 562 TEST_f_f (roundeven, 0x10000000000000000000000000001p-1, 0x10000000000000000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 563 TEST_f_f (roundeven, -0x10000000000000000000000000001p-1, -0x10000000000000000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 564 TEST_f_f (roundeven, 0x10000000000000000000000000002p-1, 0x10000000000000000000000000002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 565 TEST_f_f (roundeven, -0x10000000000000000000000000002p-1, -0x10000000000000000000000000002p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 566 TEST_f_f (roundeven, 0x10000000000000000000000000003p-1, 0x10000000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 567 TEST_f_f (roundeven, -0x10000000000000000000000000003p-1, -0x10000000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 568 TEST_f_f (roundeven, 0x10000000000000000000000000004p-1, 0x10000000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 569 TEST_f_f (roundeven, -0x10000000000000000000000000004p-1, -0x10000000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 570 TEST_f_f (roundeven, 0x10000000000000000000000000005p-1, 0x10000000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 571 TEST_f_f (roundeven, -0x10000000000000000000000000005p-1, -0x10000000000000000000000000004p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 572 TEST_f_f (roundeven, 0x1ffffffffffffffffffffffffffffp-1, 0x20000000000000000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 573 TEST_f_f (roundeven, -0x1ffffffffffffffffffffffffffffp-1, -0x20000000000000000000000000000p-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 574#endif 575 576 /* Minimum exponent forcing integer values. */ 577 TEST_f_f (roundeven, 0x800001p0, 0x800001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 578 TEST_f_f (roundeven, -0x800001p0, -0x800001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 579 TEST_f_f (roundeven, 0x800002p0, 0x800002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 580 TEST_f_f (roundeven, -0x800002p0, -0x800002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 581 TEST_f_f (roundeven, 0x800003p0, 0x800003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 582 TEST_f_f (roundeven, -0x800003p0, -0x800003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 583#if MANT_DIG >= 53 584 TEST_f_f (roundeven, 0x10000000000001p0, 0x10000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 585 TEST_f_f (roundeven, -0x10000000000001p0, -0x10000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 586 TEST_f_f (roundeven, 0x10000000000002p0, 0x10000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 587 TEST_f_f (roundeven, -0x10000000000002p0, -0x10000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 588 TEST_f_f (roundeven, 0x10000000000003p0, 0x10000000000003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 589 TEST_f_f (roundeven, -0x10000000000003p0, -0x10000000000003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 590#endif 591#if MANT_DIG >= 64 592 TEST_f_f (roundeven, 0x8000000000000001p0, 0x8000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 593 TEST_f_f (roundeven, -0x8000000000000001p0, -0x8000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 594 TEST_f_f (roundeven, 0x8000000000000002p0, 0x8000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 595 TEST_f_f (roundeven, -0x8000000000000002p0, -0x8000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 596 TEST_f_f (roundeven, 0x8000000000000003p0, 0x8000000000000003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 597 TEST_f_f (roundeven, -0x8000000000000003p0, -0x8000000000000003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 598#endif 599#if MANT_DIG >= 106 600 TEST_f_f (roundeven, 0x200000000000000000000000001p0, 0x200000000000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 601 TEST_f_f (roundeven, -0x200000000000000000000000001p0, -0x200000000000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 602 TEST_f_f (roundeven, 0x200000000000000000000000002p0, 0x200000000000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 603 TEST_f_f (roundeven, -0x200000000000000000000000002p0, -0x200000000000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 604 TEST_f_f (roundeven, 0x200000000000000000000000003p0, 0x200000000000000000000000003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 605 TEST_f_f (roundeven, -0x200000000000000000000000003p0, -0x200000000000000000000000003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 606#endif 607#if MANT_DIG >= 113 608 TEST_f_f (roundeven, 0x10000000000000000000000000001p0, 0x10000000000000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 609 TEST_f_f (roundeven, -0x10000000000000000000000000001p0, -0x10000000000000000000000000001p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 610 TEST_f_f (roundeven, 0x10000000000000000000000000002p0, 0x10000000000000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 611 TEST_f_f (roundeven, -0x10000000000000000000000000002p0, -0x10000000000000000000000000002p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 612 TEST_f_f (roundeven, 0x10000000000000000000000000003p0, 0x10000000000000000000000000003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 613 TEST_f_f (roundeven, -0x10000000000000000000000000003p0, -0x10000000000000000000000000003p0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED), 614#endif 615 }; 616 617static void 618roundeven_test (void) 619{ 620 ALL_RM_TEST (roundeven, 1, roundeven_test_data, RUN_TEST_LOOP_f_f, END); 621} 622 623static void 624do_test (void) 625{ 626 roundeven_test (); 627} 628 629/* 630 * Local Variables: 631 * mode:c 632 * End: 633 */ 634