github.com/wasilibs/wazerox@v0.0.0-20240124024944-4923be63ab5f/internal/integration_test/spectest/v2/testdata/const.wast (about) 1 ;; Test t.const instructions 2 3 ;; Syntax error 4 5 (module (func (i32.const 0_123_456_789) drop)) 6 (module (func (i32.const 0x0_9acf_fBDF) drop)) 7 (assert_malformed 8 (module quote "(func (i32.const) drop)") 9 "unexpected token" 10 ) 11 (assert_malformed 12 (module quote "(func (i32.const 0x) drop)") 13 "unknown operator" 14 ) 15 (assert_malformed 16 (module quote "(func (i32.const 1x) drop)") 17 "unknown operator" 18 ) 19 (assert_malformed 20 (module quote "(func (i32.const 0xg) drop)") 21 "unknown operator" 22 ) 23 24 (module (func (i64.const 0_123_456_789) drop)) 25 (module (func (i64.const 0x0125_6789_ADEF_bcef) drop)) 26 (assert_malformed 27 (module quote "(func (i64.const) drop)") 28 "unexpected token" 29 ) 30 (assert_malformed 31 (module quote "(func (i64.const 0x) drop)") 32 "unknown operator" 33 ) 34 (assert_malformed 35 (module quote "(func (i64.const 1x) drop)") 36 "unknown operator" 37 ) 38 (assert_malformed 39 (module quote "(func (i64.const 0xg) drop)") 40 "unknown operator" 41 ) 42 43 (module (func (f32.const 0123456789) drop)) 44 (module (func (f32.const 0123456789e019) drop)) 45 (module (func (f32.const 0123456789e+019) drop)) 46 (module (func (f32.const 0123456789e-019) drop)) 47 (module (func (f32.const 0123456789.) drop)) 48 (module (func (f32.const 0123456789.e019) drop)) 49 (module (func (f32.const 0123456789.e+019) drop)) 50 (module (func (f32.const 0123456789.e-019) drop)) 51 (module (func (f32.const 0123456789.0123456789) drop)) 52 (module (func (f32.const 0123456789.0123456789e019) drop)) 53 (module (func (f32.const 0123456789.0123456789e+019) drop)) 54 (module (func (f32.const 0123456789.0123456789e-019) drop)) 55 (module (func (f32.const 0x0123456789ABCDEF) drop)) 56 (module (func (f32.const 0x0123456789ABCDEFp019) drop)) 57 (module (func (f32.const 0x0123456789ABCDEFp+019) drop)) 58 (module (func (f32.const 0x0123456789ABCDEFp-019) drop)) 59 (module (func (f32.const 0x0123456789ABCDEF.) drop)) 60 (module (func (f32.const 0x0123456789ABCDEF.p019) drop)) 61 (module (func (f32.const 0x0123456789ABCDEF.p+019) drop)) 62 (module (func (f32.const 0x0123456789ABCDEF.p-019) drop)) 63 (module (func (f32.const 0x0123456789ABCDEF.019aF) drop)) 64 (module (func (f32.const 0x0123456789ABCDEF.019aFp019) drop)) 65 (module (func (f32.const 0x0123456789ABCDEF.019aFp+019) drop)) 66 (module (func (f32.const 0x0123456789ABCDEF.019aFp-019) drop)) 67 (assert_malformed 68 (module quote "(func (f32.const) drop)") 69 "unexpected token" 70 ) 71 (assert_malformed 72 (module quote "(func (f32.const .0) drop)") 73 "unknown operator" 74 ) 75 (assert_malformed 76 (module quote "(func (f32.const .0e0) drop)") 77 "unknown operator" 78 ) 79 (assert_malformed 80 (module quote "(func (f32.const 0e) drop)") 81 "unknown operator" 82 ) 83 (assert_malformed 84 (module quote "(func (f32.const 0e+) drop)") 85 "unknown operator" 86 ) 87 (assert_malformed 88 (module quote "(func (f32.const 0.0e) drop)") 89 "unknown operator" 90 ) 91 (assert_malformed 92 (module quote "(func (f32.const 0.0e-) drop)") 93 "unknown operator" 94 ) 95 (assert_malformed 96 (module quote "(func (f32.const 0x) drop)") 97 "unknown operator" 98 ) 99 (assert_malformed 100 (module quote "(func (f32.const 1x) drop)") 101 "unknown operator" 102 ) 103 (assert_malformed 104 (module quote "(func (f32.const 0xg) drop)") 105 "unknown operator" 106 ) 107 (assert_malformed 108 (module quote "(func (f32.const 0x.) drop)") 109 "unknown operator" 110 ) 111 (assert_malformed 112 (module quote "(func (f32.const 0x0.g) drop)") 113 "unknown operator" 114 ) 115 (assert_malformed 116 (module quote "(func (f32.const 0x0p) drop)") 117 "unknown operator" 118 ) 119 (assert_malformed 120 (module quote "(func (f32.const 0x0p+) drop)") 121 "unknown operator" 122 ) 123 (assert_malformed 124 (module quote "(func (f32.const 0x0p-) drop)") 125 "unknown operator" 126 ) 127 (assert_malformed 128 (module quote "(func (f32.const 0x0.0p) drop)") 129 "unknown operator" 130 ) 131 (assert_malformed 132 (module quote "(func (f32.const 0x0.0p+) drop)") 133 "unknown operator" 134 ) 135 (assert_malformed 136 (module quote "(func (f32.const 0x0.0p-) drop)") 137 "unknown operator" 138 ) 139 (assert_malformed 140 (module quote "(func (f32.const 0x0pA) drop)") 141 "unknown operator" 142 ) 143 144 145 (module (func (f64.const 0123456789) drop)) 146 (module (func (f64.const 0123456789e019) drop)) 147 (module (func (f64.const 0123456789e+019) drop)) 148 (module (func (f64.const 0123456789e-019) drop)) 149 (module (func (f64.const 0123456789.) drop)) 150 (module (func (f64.const 0123456789.e019) drop)) 151 (module (func (f64.const 0123456789.e+019) drop)) 152 (module (func (f64.const 0123456789.e-019) drop)) 153 (module (func (f64.const 0123456789.0123456789) drop)) 154 (module (func (f64.const 0123456789.0123456789e019) drop)) 155 (module (func (f64.const 0123456789.0123456789e+019) drop)) 156 (module (func (f64.const 0123456789.0123456789e-019) drop)) 157 (module (func (f64.const 0_1_2_3_4_5_6_7_8_9) drop)) 158 (module (func (f64.const 0_1_2_3_4_5_6_7_8_9.) drop)) 159 (module (func (f64.const 0_1_2_3_4_5_6_7_8_9.0_1_2_3_4_5_6_7_8_9) drop)) 160 (module (func (f64.const 0_1_2_3_4_5_6_7_8_9e+0_1_9) drop)) 161 (module (func (f64.const 0_1_2_3_4_5_6_7_8_9.e+0_1_9) drop)) 162 (module (func (f64.const 0_1_2_3_4_5_6_7_8_9.0_1_2_3_4_5_6_7_8_9e0_1_9) drop)) 163 164 (module (func (f64.const 0x0123456789ABCDEFabcdef) drop)) 165 (module (func (f64.const 0x0123456789ABCDEFabcdefp019) drop)) 166 (module (func (f64.const 0x0123456789ABCDEFabcdefp+019) drop)) 167 (module (func (f64.const 0x0123456789ABCDEFabcdefp-019) drop)) 168 (module (func (f64.const 0x0123456789ABCDEFabcdef.) drop)) 169 (module (func (f64.const 0x0123456789ABCDEFabcdef.p019) drop)) 170 (module (func (f64.const 0x0123456789ABCDEFabcdef.p+019) drop)) 171 (module (func (f64.const 0x0123456789ABCDEFabcdef.p-019) drop)) 172 (module (func (f64.const 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdef) drop)) 173 (module (func (f64.const 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp019) drop)) 174 (module (func (f64.const 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp+019) drop)) 175 (module (func (f64.const 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp-019) drop)) 176 (module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f) drop)) 177 (module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f.) drop)) 178 (module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f.0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f) drop)) 179 (module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_fp0_1_9) drop)) 180 (module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f.p0_1_9) drop)) 181 (module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f.0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_fp0_1_9) drop)) 182 183 184 (assert_malformed 185 (module quote "(func (f64.const) drop)") 186 "unexpected token" 187 ) 188 (assert_malformed 189 (module quote "(func (f64.const .0) drop)") 190 "unknown operator" 191 ) 192 (assert_malformed 193 (module quote "(func (f64.const .0e0) drop)") 194 "unknown operator" 195 ) 196 (assert_malformed 197 (module quote "(func (f64.const 0e) drop)") 198 "unknown operator" 199 ) 200 (assert_malformed 201 (module quote "(func (f64.const 0e+) drop)") 202 "unknown operator" 203 ) 204 (assert_malformed 205 (module quote "(func (f64.const 0.0e) drop)") 206 "unknown operator" 207 ) 208 (assert_malformed 209 (module quote "(func (f64.const 0.0e-) drop)") 210 "unknown operator" 211 ) 212 (assert_malformed 213 (module quote "(func (f64.const 0x) drop)") 214 "unknown operator" 215 ) 216 (assert_malformed 217 (module quote "(func (f64.const 1x) drop)") 218 "unknown operator" 219 ) 220 (assert_malformed 221 (module quote "(func (f64.const 0xg) drop)") 222 "unknown operator" 223 ) 224 (assert_malformed 225 (module quote "(func (f64.const 0x.) drop)") 226 "unknown operator" 227 ) 228 (assert_malformed 229 (module quote "(func (f64.const 0x0.g) drop)") 230 "unknown operator" 231 ) 232 (assert_malformed 233 (module quote "(func (f64.const 0x0p) drop)") 234 "unknown operator" 235 ) 236 (assert_malformed 237 (module quote "(func (f64.const 0x0p+) drop)") 238 "unknown operator" 239 ) 240 (assert_malformed 241 (module quote "(func (f64.const 0x0p-) drop)") 242 "unknown operator" 243 ) 244 (assert_malformed 245 (module quote "(func (f64.const 0x0.0p) drop)") 246 "unknown operator" 247 ) 248 (assert_malformed 249 (module quote "(func (f64.const 0x0.0p+) drop)") 250 "unknown operator" 251 ) 252 (assert_malformed 253 (module quote "(func (f64.const 0x0.0p-) drop)") 254 "unknown operator" 255 ) 256 (assert_malformed 257 (module quote "(func (f64.const 0x0pA) drop)") 258 "unknown operator" 259 ) 260 261 262 ;; Range error 263 264 (module (func (i32.const 0xffffffff) drop)) 265 (module (func (i32.const -0x80000000) drop)) 266 (assert_malformed 267 (module quote "(func (i32.const 0x100000000) drop)") 268 "constant out of range" 269 ) 270 (assert_malformed 271 (module quote "(func (i32.const -0x80000001) drop)") 272 "constant out of range" 273 ) 274 275 (module (func (i32.const 4294967295) drop)) 276 (module (func (i32.const -2147483648) drop)) 277 (assert_malformed 278 (module quote "(func (i32.const 4294967296) drop)") 279 "constant out of range" 280 ) 281 (assert_malformed 282 (module quote "(func (i32.const -2147483649) drop)") 283 "constant out of range" 284 ) 285 286 (module (func (i64.const 0xffffffffffffffff) drop)) 287 (module (func (i64.const -0x8000000000000000) drop)) 288 (assert_malformed 289 (module quote "(func (i64.const 0x10000000000000000) drop)") 290 "constant out of range" 291 ) 292 (assert_malformed 293 (module quote "(func (i64.const -0x8000000000000001) drop)") 294 "constant out of range" 295 ) 296 297 (module (func (i64.const 18446744073709551615) drop)) 298 (module (func (i64.const -9223372036854775808) drop)) 299 (assert_malformed 300 (module quote "(func (i64.const 18446744073709551616) drop)") 301 "constant out of range" 302 ) 303 (assert_malformed 304 (module quote "(func (i64.const -9223372036854775809) drop)") 305 "constant out of range" 306 ) 307 308 (module (func (f32.const 0x1p127) drop)) 309 (module (func (f32.const -0x1p127) drop)) 310 (module (func (f32.const 0x1.fffffep127) drop)) 311 (module (func (f32.const -0x1.fffffep127) drop)) 312 (module (func (f32.const 0x1.fffffe7p127) drop)) 313 (module (func (f32.const -0x1.fffffe7p127) drop)) 314 (module (func (f32.const 0x1.fffffefffffff8000000p127) drop)) 315 (module (func (f32.const -0x1.fffffefffffff8000000p127) drop)) 316 (module (func (f32.const 0x1.fffffefffffffffffffp127) drop)) 317 (module (func (f32.const -0x1.fffffefffffffffffffp127) drop)) 318 (assert_malformed 319 (module quote "(func (f32.const 0x1p128) drop)") 320 "constant out of range" 321 ) 322 (assert_malformed 323 (module quote "(func (f32.const -0x1p128) drop)") 324 "constant out of range" 325 ) 326 (assert_malformed 327 (module quote "(func (f32.const 0x1.ffffffp127) drop)") 328 "constant out of range" 329 ) 330 (assert_malformed 331 (module quote "(func (f32.const -0x1.ffffffp127) drop)") 332 "constant out of range" 333 ) 334 335 (module (func (f32.const 1e38) drop)) 336 (module (func (f32.const -1e38) drop)) 337 (assert_malformed 338 (module quote "(func (f32.const 1e39) drop)") 339 "constant out of range" 340 ) 341 (assert_malformed 342 (module quote "(func (f32.const -1e39) drop)") 343 "constant out of range" 344 ) 345 346 (module (func (f32.const 340282356779733623858607532500980858880) drop)) 347 (module (func (f32.const -340282356779733623858607532500980858880) drop)) 348 (assert_malformed 349 (module quote "(func (f32.const 340282356779733661637539395458142568448) drop)") 350 "constant out of range" 351 ) 352 (assert_malformed 353 (module quote "(func (f32.const -340282356779733661637539395458142568448) drop)") 354 "constant out of range" 355 ) 356 357 (module (func (f64.const 0x1p1023) drop)) 358 (module (func (f64.const -0x1p1023) drop)) 359 (module (func (f64.const 0x1.fffffffffffffp1023) drop)) 360 (module (func (f64.const -0x1.fffffffffffffp1023) drop)) 361 (module (func (f64.const 0x1.fffffffffffff7p1023) drop)) 362 (module (func (f64.const -0x1.fffffffffffff7p1023) drop)) 363 (module (func (f64.const 0x1.fffffffffffff7ffffffp1023) drop)) 364 (module (func (f64.const -0x1.fffffffffffff7ffffffp1023) drop)) 365 (assert_malformed 366 (module quote "(func (f64.const 0x1p1024) drop)") 367 "constant out of range" 368 ) 369 (assert_malformed 370 (module quote "(func (f64.const -0x1p1024) drop)") 371 "constant out of range" 372 ) 373 (assert_malformed 374 (module quote "(func (f64.const 0x1.fffffffffffff8p1023) drop)") 375 "constant out of range" 376 ) 377 (assert_malformed 378 (module quote "(func (f64.const -0x1.fffffffffffff8p1023) drop)") 379 "constant out of range" 380 ) 381 382 (module (func (f64.const 1e308) drop)) 383 (module (func (f64.const -1e308) drop)) 384 (assert_malformed 385 (module quote "(func (f64.const 1e309) drop)") 386 "constant out of range" 387 ) 388 (assert_malformed 389 (module quote "(func (f64.const -1e309) drop)") 390 "constant out of range" 391 ) 392 393 (module (func (f64.const 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368) drop)) 394 (module (func (f64.const -179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368) drop)) 395 (assert_malformed 396 (module quote "(func (f64.const 269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552) drop)") 397 "constant out of range" 398 ) 399 (assert_malformed 400 (module quote "(func (f64.const -269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552) drop)") 401 "constant out of range" 402 ) 403 404 (module (func (f32.const nan:0x1) drop)) 405 (module (func (f64.const nan:0x1) drop)) 406 (module (func (f32.const nan:0x7f_ffff) drop)) 407 (module (func (f64.const nan:0xf_ffff_ffff_ffff) drop)) 408 409 (assert_malformed 410 (module quote "(func (f32.const nan:1) drop)") 411 "unknown operator" 412 ) 413 (assert_malformed 414 (module quote "(func (f64.const nan:1) drop)") 415 "unknown operator" 416 ) 417 418 (assert_malformed 419 (module quote "(func (f32.const nan:0x0) drop)") 420 "constant out of range" 421 ) 422 (assert_malformed 423 (module quote "(func (f64.const nan:0x0) drop)") 424 "constant out of range" 425 ) 426 427 (assert_malformed 428 (module quote "(func (f32.const nan:0x80_0000) drop)") 429 "constant out of range" 430 ) 431 (assert_malformed 432 (module quote "(func (f64.const nan:0x10_0000_0000_0000) drop)") 433 "constant out of range" 434 ) 435 436 437 ;; Rounding behaviour 438 439 ;; f32, small exponent 440 (module (func (export "f") (result f32) (f32.const +0x1.00000100000000000p-50))) 441 (assert_return (invoke "f") (f32.const +0x1.000000p-50)) 442 (module (func (export "f") (result f32) (f32.const -0x1.00000100000000000p-50))) 443 (assert_return (invoke "f") (f32.const -0x1.000000p-50)) 444 (module (func (export "f") (result f32) (f32.const +0x1.00000100000000001p-50))) 445 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 446 (module (func (export "f") (result f32) (f32.const -0x1.00000100000000001p-50))) 447 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 448 (module (func (export "f") (result f32) (f32.const +0x1.000001fffffffffffp-50))) 449 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 450 (module (func (export "f") (result f32) (f32.const -0x1.000001fffffffffffp-50))) 451 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 452 (module (func (export "f") (result f32) (f32.const +0x1.00000200000000000p-50))) 453 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 454 (module (func (export "f") (result f32) (f32.const -0x1.00000200000000000p-50))) 455 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 456 (module (func (export "f") (result f32) (f32.const +0x1.00000200000000001p-50))) 457 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 458 (module (func (export "f") (result f32) (f32.const -0x1.00000200000000001p-50))) 459 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 460 (module (func (export "f") (result f32) (f32.const +0x1.000002fffffffffffp-50))) 461 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 462 (module (func (export "f") (result f32) (f32.const -0x1.000002fffffffffffp-50))) 463 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 464 (module (func (export "f") (result f32) (f32.const +0x1.00000300000000000p-50))) 465 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 466 (module (func (export "f") (result f32) (f32.const -0x1.00000300000000000p-50))) 467 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 468 (module (func (export "f") (result f32) (f32.const +0x1.00000300000000001p-50))) 469 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 470 (module (func (export "f") (result f32) (f32.const -0x1.00000300000000001p-50))) 471 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 472 (module (func (export "f") (result f32) (f32.const +0x1.000003fffffffffffp-50))) 473 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 474 (module (func (export "f") (result f32) (f32.const -0x1.000003fffffffffffp-50))) 475 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 476 (module (func (export "f") (result f32) (f32.const +0x1.00000400000000000p-50))) 477 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 478 (module (func (export "f") (result f32) (f32.const -0x1.00000400000000000p-50))) 479 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 480 (module (func (export "f") (result f32) (f32.const +0x1.00000400000000001p-50))) 481 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 482 (module (func (export "f") (result f32) (f32.const -0x1.00000400000000001p-50))) 483 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 484 (module (func (export "f") (result f32) (f32.const +0x1.000004fffffffffffp-50))) 485 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 486 (module (func (export "f") (result f32) (f32.const -0x1.000004fffffffffffp-50))) 487 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 488 (module (func (export "f") (result f32) (f32.const +0x1.00000500000000000p-50))) 489 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 490 (module (func (export "f") (result f32) (f32.const -0x1.00000500000000000p-50))) 491 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 492 (module (func (export "f") (result f32) (f32.const +0x1.00000500000000001p-50))) 493 (assert_return (invoke "f") (f32.const +0x1.000006p-50)) 494 (module (func (export "f") (result f32) (f32.const -0x1.00000500000000001p-50))) 495 (assert_return (invoke "f") (f32.const -0x1.000006p-50)) 496 497 (module (func (export "f") (result f32) (f32.const +0x4000.004000000p-64))) 498 (assert_return (invoke "f") (f32.const +0x1.000000p-50)) 499 (module (func (export "f") (result f32) (f32.const -0x4000.004000000p-64))) 500 (assert_return (invoke "f") (f32.const -0x1.000000p-50)) 501 (module (func (export "f") (result f32) (f32.const +0x4000.004000001p-64))) 502 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 503 (module (func (export "f") (result f32) (f32.const -0x4000.004000001p-64))) 504 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 505 (module (func (export "f") (result f32) (f32.const +0x4000.007ffffffp-64))) 506 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 507 (module (func (export "f") (result f32) (f32.const -0x4000.007ffffffp-64))) 508 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 509 (module (func (export "f") (result f32) (f32.const +0x4000.008000000p-64))) 510 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 511 (module (func (export "f") (result f32) (f32.const -0x4000.008000000p-64))) 512 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 513 (module (func (export "f") (result f32) (f32.const +0x4000.008000001p-64))) 514 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 515 (module (func (export "f") (result f32) (f32.const -0x4000.008000001p-64))) 516 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 517 (module (func (export "f") (result f32) (f32.const +0x4000.00bffffffp-64))) 518 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 519 (module (func (export "f") (result f32) (f32.const -0x4000.00bffffffp-64))) 520 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 521 (module (func (export "f") (result f32) (f32.const +0x4000.00c000000p-64))) 522 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 523 (module (func (export "f") (result f32) (f32.const -0x4000.00c000000p-64))) 524 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 525 (module (func (export "f") (result f32) (f32.const +0x4000.00c000001p-64))) 526 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 527 (module (func (export "f") (result f32) (f32.const -0x4000.00c000001p-64))) 528 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 529 (module (func (export "f") (result f32) (f32.const +0x4000.00fffffffp-64))) 530 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 531 (module (func (export "f") (result f32) (f32.const -0x4000.00fffffffp-64))) 532 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 533 (module (func (export "f") (result f32) (f32.const +0x4000.010000001p-64))) 534 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 535 (module (func (export "f") (result f32) (f32.const -0x4000.010000001p-64))) 536 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 537 (module (func (export "f") (result f32) (f32.const +0x4000.013ffffffp-64))) 538 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 539 (module (func (export "f") (result f32) (f32.const -0x4000.013ffffffp-64))) 540 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 541 (module (func (export "f") (result f32) (f32.const +0x4000.014000001p-64))) 542 (assert_return (invoke "f") (f32.const +0x1.000006p-50)) 543 (module (func (export "f") (result f32) (f32.const -0x4000.014000001p-64))) 544 (assert_return (invoke "f") (f32.const -0x1.000006p-50)) 545 546 (module (func (export "f") (result f32) (f32.const +8.8817847263968443573e-16))) 547 (assert_return (invoke "f") (f32.const +0x1.000000p-50)) 548 (module (func (export "f") (result f32) (f32.const -8.8817847263968443573e-16))) 549 (assert_return (invoke "f") (f32.const -0x1.000000p-50)) 550 (module (func (export "f") (result f32) (f32.const +8.8817847263968443574e-16))) 551 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 552 (module (func (export "f") (result f32) (f32.const -8.8817847263968443574e-16))) 553 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 554 (module (func (export "f") (result f32) (f32.const +8.8817857851880284252e-16))) 555 (assert_return (invoke "f") (f32.const +0x1.000002p-50)) 556 (module (func (export "f") (result f32) (f32.const -8.8817857851880284252e-16))) 557 (assert_return (invoke "f") (f32.const -0x1.000002p-50)) 558 (module (func (export "f") (result f32) (f32.const +8.8817857851880284253e-16))) 559 (assert_return (invoke "f") (f32.const +0x1.000004p-50)) 560 (module (func (export "f") (result f32) (f32.const -8.8817857851880284253e-16))) 561 (assert_return (invoke "f") (f32.const -0x1.000004p-50)) 562 563 ;; f32, large exponent 564 (module (func (export "f") (result f32) (f32.const +0x1.00000100000000000p+50))) 565 (assert_return (invoke "f") (f32.const +0x1.000000p+50)) 566 (module (func (export "f") (result f32) (f32.const -0x1.00000100000000000p+50))) 567 (assert_return (invoke "f") (f32.const -0x1.000000p+50)) 568 (module (func (export "f") (result f32) (f32.const +0x1.00000100000000001p+50))) 569 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 570 (module (func (export "f") (result f32) (f32.const -0x1.00000100000000001p+50))) 571 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 572 (module (func (export "f") (result f32) (f32.const +0x1.000001fffffffffffp+50))) 573 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 574 (module (func (export "f") (result f32) (f32.const -0x1.000001fffffffffffp+50))) 575 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 576 (module (func (export "f") (result f32) (f32.const +0x1.00000200000000000p+50))) 577 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 578 (module (func (export "f") (result f32) (f32.const -0x1.00000200000000000p+50))) 579 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 580 (module (func (export "f") (result f32) (f32.const +0x1.00000200000000001p+50))) 581 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 582 (module (func (export "f") (result f32) (f32.const -0x1.00000200000000001p+50))) 583 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 584 (module (func (export "f") (result f32) (f32.const +0x1.000002fffffffffffp+50))) 585 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 586 (module (func (export "f") (result f32) (f32.const -0x1.000002fffffffffffp+50))) 587 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 588 (module (func (export "f") (result f32) (f32.const +0x1.00000300000000000p+50))) 589 (assert_return (invoke "f") (f32.const +0x1.000004p+50)) 590 (module (func (export "f") (result f32) (f32.const -0x1.00000300000000000p+50))) 591 (assert_return (invoke "f") (f32.const -0x1.000004p+50)) 592 (module (func (export "f") (result f32) (f32.const +0x1.00000300000000001p+50))) 593 (assert_return (invoke "f") (f32.const +0x1.000004p+50)) 594 (module (func (export "f") (result f32) (f32.const -0x1.00000300000000001p+50))) 595 (assert_return (invoke "f") (f32.const -0x1.000004p+50)) 596 (module (func (export "f") (result f32) (f32.const +0x1.000003fffffffffffp+50))) 597 (assert_return (invoke "f") (f32.const +0x1.000004p+50)) 598 (module (func (export "f") (result f32) (f32.const -0x1.000003fffffffffffp+50))) 599 (assert_return (invoke "f") (f32.const -0x1.000004p+50)) 600 (module (func (export "f") (result f32) (f32.const +0x1.00000400000000000p+50))) 601 (assert_return (invoke "f") (f32.const +0x1.000004p+50)) 602 (module (func (export "f") (result f32) (f32.const -0x1.00000400000000000p+50))) 603 (assert_return (invoke "f") (f32.const -0x1.000004p+50)) 604 (module (func (export "f") (result f32) (f32.const +0x1.00000400000000001p+50))) 605 (assert_return (invoke "f") (f32.const +0x1.000004p+50)) 606 (module (func (export "f") (result f32) (f32.const -0x1.00000400000000001p+50))) 607 (assert_return (invoke "f") (f32.const -0x1.000004p+50)) 608 (module (func (export "f") (result f32) (f32.const +0x1.000004fffffffffffp+50))) 609 (assert_return (invoke "f") (f32.const +0x1.000004p+50)) 610 (module (func (export "f") (result f32) (f32.const -0x1.000004fffffffffffp+50))) 611 (assert_return (invoke "f") (f32.const -0x1.000004p+50)) 612 (module (func (export "f") (result f32) (f32.const +0x1.00000500000000000p+50))) 613 (assert_return (invoke "f") (f32.const +0x1.000004p+50)) 614 (module (func (export "f") (result f32) (f32.const -0x1.00000500000000000p+50))) 615 (assert_return (invoke "f") (f32.const -0x1.000004p+50)) 616 (module (func (export "f") (result f32) (f32.const +0x1.00000500000000001p+50))) 617 (assert_return (invoke "f") (f32.const +0x1.000006p+50)) 618 (module (func (export "f") (result f32) (f32.const -0x1.00000500000000001p+50))) 619 (assert_return (invoke "f") (f32.const -0x1.000006p+50)) 620 621 (module (func (export "f") (result f32) (f32.const +0x4000004000000))) 622 (assert_return (invoke "f") (f32.const +0x1.000000p+50)) 623 (module (func (export "f") (result f32) (f32.const -0x4000004000000))) 624 (assert_return (invoke "f") (f32.const -0x1.000000p+50)) 625 (module (func (export "f") (result f32) (f32.const +0x4000004000001))) 626 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 627 (module (func (export "f") (result f32) (f32.const -0x4000004000001))) 628 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 629 (module (func (export "f") (result f32) (f32.const +0x4000007ffffff))) 630 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 631 (module (func (export "f") (result f32) (f32.const -0x4000007ffffff))) 632 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 633 (module (func (export "f") (result f32) (f32.const +0x4000008000000))) 634 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 635 (module (func (export "f") (result f32) (f32.const -0x4000008000000))) 636 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 637 (module (func (export "f") (result f32) (f32.const +0x4000008000001))) 638 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 639 (module (func (export "f") (result f32) (f32.const -0x4000008000001))) 640 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 641 (module (func (export "f") (result f32) (f32.const +0x400000bffffff))) 642 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 643 (module (func (export "f") (result f32) (f32.const -0x400000bffffff))) 644 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 645 (module (func (export "f") (result f32) (f32.const +0x400000c000000))) 646 (assert_return (invoke "f") (f32.const +0x1.000004p+50)) 647 (module (func (export "f") (result f32) (f32.const -0x400000c000000))) 648 (assert_return (invoke "f") (f32.const -0x1.000004p+50)) 649 650 (module (func (export "f") (result f32) (f32.const +1125899973951488))) 651 (assert_return (invoke "f") (f32.const +0x1.000000p+50)) 652 (module (func (export "f") (result f32) (f32.const -1125899973951488))) 653 (assert_return (invoke "f") (f32.const -0x1.000000p+50)) 654 (module (func (export "f") (result f32) (f32.const +1125899973951489))) 655 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 656 (module (func (export "f") (result f32) (f32.const -1125899973951489))) 657 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 658 (module (func (export "f") (result f32) (f32.const +1125900108169215))) 659 (assert_return (invoke "f") (f32.const +0x1.000002p+50)) 660 (module (func (export "f") (result f32) (f32.const -1125900108169215))) 661 (assert_return (invoke "f") (f32.const -0x1.000002p+50)) 662 (module (func (export "f") (result f32) (f32.const +1125900108169216))) 663 (assert_return (invoke "f") (f32.const +0x1.000004p+50)) 664 (module (func (export "f") (result f32) (f32.const -1125900108169216))) 665 (assert_return (invoke "f") (f32.const -0x1.000004p+50)) 666 667 ;; f32, subnormal 668 (module (func (export "f") (result f32) (f32.const +0x0.00000100000000000p-126))) 669 (assert_return (invoke "f") (f32.const +0x0.000000p-126)) 670 (module (func (export "f") (result f32) (f32.const -0x0.00000100000000000p-126))) 671 (assert_return (invoke "f") (f32.const -0x0.000000p-126)) 672 (module (func (export "f") (result f32) (f32.const +0x0.00000100000000001p-126))) 673 (assert_return (invoke "f") (f32.const +0x0.000002p-126)) 674 (module (func (export "f") (result f32) (f32.const -0x0.00000100000000001p-126))) 675 (assert_return (invoke "f") (f32.const -0x0.000002p-126)) 676 (module (func (export "f") (result f32) (f32.const +0x0.000001fffffffffffp-126))) 677 (assert_return (invoke "f") (f32.const +0x0.000002p-126)) 678 (module (func (export "f") (result f32) (f32.const -0x0.000001fffffffffffp-126))) 679 (assert_return (invoke "f") (f32.const -0x0.000002p-126)) 680 (module (func (export "f") (result f32) (f32.const +0x0.00000200000000000p-126))) 681 (assert_return (invoke "f") (f32.const +0x0.000002p-126)) 682 (module (func (export "f") (result f32) (f32.const -0x0.00000200000000000p-126))) 683 (assert_return (invoke "f") (f32.const -0x0.000002p-126)) 684 (module (func (export "f") (result f32) (f32.const +0x0.00000200000000001p-126))) 685 (assert_return (invoke "f") (f32.const +0x0.000002p-126)) 686 (module (func (export "f") (result f32) (f32.const -0x0.00000200000000001p-126))) 687 (assert_return (invoke "f") (f32.const -0x0.000002p-126)) 688 (module (func (export "f") (result f32) (f32.const +0x0.000002fffffffffffp-126))) 689 (assert_return (invoke "f") (f32.const +0x0.000002p-126)) 690 (module (func (export "f") (result f32) (f32.const -0x0.000002fffffffffffp-126))) 691 (assert_return (invoke "f") (f32.const -0x0.000002p-126)) 692 (module (func (export "f") (result f32) (f32.const +0x0.00000300000000000p-126))) 693 (assert_return (invoke "f") (f32.const +0x0.000004p-126)) 694 (module (func (export "f") (result f32) (f32.const -0x0.00000300000000000p-126))) 695 (assert_return (invoke "f") (f32.const -0x0.000004p-126)) 696 (module (func (export "f") (result f32) (f32.const +0x0.00000300000000001p-126))) 697 (assert_return (invoke "f") (f32.const +0x0.000004p-126)) 698 (module (func (export "f") (result f32) (f32.const -0x0.00000300000000001p-126))) 699 (assert_return (invoke "f") (f32.const -0x0.000004p-126)) 700 (module (func (export "f") (result f32) (f32.const +0x0.000003fffffffffffp-126))) 701 (assert_return (invoke "f") (f32.const +0x0.000004p-126)) 702 (module (func (export "f") (result f32) (f32.const -0x0.000003fffffffffffp-126))) 703 (assert_return (invoke "f") (f32.const -0x0.000004p-126)) 704 (module (func (export "f") (result f32) (f32.const +0x0.00000400000000000p-126))) 705 (assert_return (invoke "f") (f32.const +0x0.000004p-126)) 706 (module (func (export "f") (result f32) (f32.const -0x0.00000400000000000p-126))) 707 (assert_return (invoke "f") (f32.const -0x0.000004p-126)) 708 (module (func (export "f") (result f32) (f32.const +0x0.00000400000000001p-126))) 709 (assert_return (invoke "f") (f32.const +0x0.000004p-126)) 710 (module (func (export "f") (result f32) (f32.const -0x0.00000400000000001p-126))) 711 (assert_return (invoke "f") (f32.const -0x0.000004p-126)) 712 (module (func (export "f") (result f32) (f32.const +0x0.000004fffffffffffp-126))) 713 (assert_return (invoke "f") (f32.const +0x0.000004p-126)) 714 (module (func (export "f") (result f32) (f32.const -0x0.000004fffffffffffp-126))) 715 (assert_return (invoke "f") (f32.const -0x0.000004p-126)) 716 (module (func (export "f") (result f32) (f32.const +0x0.00000500000000000p-126))) 717 (assert_return (invoke "f") (f32.const +0x0.000004p-126)) 718 (module (func (export "f") (result f32) (f32.const -0x0.00000500000000000p-126))) 719 (assert_return (invoke "f") (f32.const -0x0.000004p-126)) 720 (module (func (export "f") (result f32) (f32.const +0x0.00000500000000001p-126))) 721 (assert_return (invoke "f") (f32.const +0x0.000006p-126)) 722 (module (func (export "f") (result f32) (f32.const -0x0.00000500000000001p-126))) 723 (assert_return (invoke "f") (f32.const -0x0.000006p-126)) 724 725 ;; f32, round down at limit to infinity 726 (module (func (export "f") (result f32) (f32.const +0x1.fffffe8p127))) 727 (assert_return (invoke "f") (f32.const +0x1.fffffep127)) 728 (module (func (export "f") (result f32) (f32.const -0x1.fffffe8p127))) 729 (assert_return (invoke "f") (f32.const -0x1.fffffep127)) 730 (module (func (export "f") (result f32) (f32.const +0x1.fffffefffffff8p127))) 731 (assert_return (invoke "f") (f32.const +0x1.fffffep127)) 732 (module (func (export "f") (result f32) (f32.const -0x1.fffffefffffff8p127))) 733 (assert_return (invoke "f") (f32.const -0x1.fffffep127)) 734 (module (func (export "f") (result f32) (f32.const +0x1.fffffefffffffffffp127))) 735 (assert_return (invoke "f") (f32.const +0x1.fffffep127)) 736 (module (func (export "f") (result f32) (f32.const -0x1.fffffefffffffffffp127))) 737 (assert_return (invoke "f") (f32.const -0x1.fffffep127)) 738 739 ;; f64, small exponent 740 (module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000000p-600))) 741 (assert_return (invoke "f") (f64.const +0x1.0000000000000p-600)) 742 (module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000000p-600))) 743 (assert_return (invoke "f") (f64.const -0x1.0000000000000p-600)) 744 (module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000001p-600))) 745 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 746 (module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000001p-600))) 747 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 748 (module (func (export "f") (result f64) (f64.const +0x1.0000000000000fffffffffffp-600))) 749 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 750 (module (func (export "f") (result f64) (f64.const -0x1.0000000000000fffffffffffp-600))) 751 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 752 (module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000000p-600))) 753 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 754 (module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000000p-600))) 755 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 756 (module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000001p-600))) 757 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 758 (module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000001p-600))) 759 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 760 (module (func (export "f") (result f64) (f64.const +0x1.00000000000017ffffffffffp-600))) 761 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 762 (module (func (export "f") (result f64) (f64.const -0x1.00000000000017ffffffffffp-600))) 763 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 764 (module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000000p-600))) 765 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 766 (module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000000p-600))) 767 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 768 (module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000001p-600))) 769 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 770 (module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000001p-600))) 771 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 772 (module (func (export "f") (result f64) (f64.const +0x1.0000000000001fffffffffffp-600))) 773 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 774 (module (func (export "f") (result f64) (f64.const -0x1.0000000000001fffffffffffp-600))) 775 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 776 (module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000000p-600))) 777 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 778 (module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000000p-600))) 779 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 780 (module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000001p-600))) 781 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 782 (module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000001p-600))) 783 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 784 (module (func (export "f") (result f64) (f64.const +0x1.00000000000027ffffffffffp-600))) 785 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 786 (module (func (export "f") (result f64) (f64.const -0x1.00000000000027ffffffffffp-600))) 787 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 788 (module (func (export "f") (result f64) (f64.const +0x1.000000000000280000000001p-600))) 789 (assert_return (invoke "f") (f64.const +0x1.0000000000003p-600)) 790 (module (func (export "f") (result f64) (f64.const -0x1.000000000000280000000001p-600))) 791 (assert_return (invoke "f") (f64.const -0x1.0000000000003p-600)) 792 793 (module (func (export "f") (result f64) (f64.const +0x8000000.000000400000000000p-627))) 794 (assert_return (invoke "f") (f64.const +0x1.0000000000000p-600)) 795 (module (func (export "f") (result f64) (f64.const -0x8000000.000000400000000000p-627))) 796 (assert_return (invoke "f") (f64.const -0x1.0000000000000p-600)) 797 (module (func (export "f") (result f64) (f64.const +0x8000000.000000400000000001p-627))) 798 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 799 (module (func (export "f") (result f64) (f64.const -0x8000000.000000400000000001p-627))) 800 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 801 (module (func (export "f") (result f64) (f64.const +0x8000000.0000007fffffffffffp-627))) 802 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 803 (module (func (export "f") (result f64) (f64.const -0x8000000.0000007fffffffffffp-627))) 804 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 805 (module (func (export "f") (result f64) (f64.const +0x8000000.000000800000000000p-627))) 806 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 807 (module (func (export "f") (result f64) (f64.const -0x8000000.000000800000000000p-627))) 808 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 809 (module (func (export "f") (result f64) (f64.const +0x8000000.000000800000000001p-627))) 810 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 811 (module (func (export "f") (result f64) (f64.const -0x8000000.000000800000000001p-627))) 812 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 813 (module (func (export "f") (result f64) (f64.const +0x8000000.000000bfffffffffffp-627))) 814 (assert_return (invoke "f") (f64.const +0x1.0000000000001p-600)) 815 (module (func (export "f") (result f64) (f64.const -0x8000000.000000bfffffffffffp-627))) 816 (assert_return (invoke "f") (f64.const -0x1.0000000000001p-600)) 817 (module (func (export "f") (result f64) (f64.const +0x8000000.000000c00000000000p-627))) 818 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 819 (module (func (export "f") (result f64) (f64.const -0x8000000.000000c00000000000p-627))) 820 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 821 (module (func (export "f") (result f64) (f64.const +0x8000000.000000c00000000001p-627))) 822 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 823 (module (func (export "f") (result f64) (f64.const -0x8000000.000000c00000000001p-627))) 824 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 825 (module (func (export "f") (result f64) (f64.const +0x8000000.000000ffffffffffffp-627))) 826 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 827 (module (func (export "f") (result f64) (f64.const -0x8000000.000000ffffffffffffp-627))) 828 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 829 (module (func (export "f") (result f64) (f64.const +0x8000000.000001000000000000p-627))) 830 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 831 (module (func (export "f") (result f64) (f64.const -0x8000000.000001000000000000p-627))) 832 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 833 (module (func (export "f") (result f64) (f64.const +0x8000000.000001000000000001p-627))) 834 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 835 (module (func (export "f") (result f64) (f64.const -0x8000000.000001000000000001p-627))) 836 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 837 (module (func (export "f") (result f64) (f64.const +0x8000000.0000013fffffffffffp-627))) 838 (assert_return (invoke "f") (f64.const +0x1.0000000000002p-600)) 839 (module (func (export "f") (result f64) (f64.const -0x8000000.0000013fffffffffffp-627))) 840 (assert_return (invoke "f") (f64.const -0x1.0000000000002p-600)) 841 (module (func (export "f") (result f64) (f64.const +0x8000000.000001400000000001p-627))) 842 (assert_return (invoke "f") (f64.const +0x1.0000000000003p-600)) 843 (module (func (export "f") (result f64) (f64.const -0x8000000.000001400000000001p-627))) 844 (assert_return (invoke "f") (f64.const -0x1.0000000000003p-600)) 845 846 (module (func (export "f") (result f64) (f64.const +5.3575430359313371995e+300))) 847 (assert_return (invoke "f") (f64.const +0x1.0000000000000p+999)) 848 (module (func (export "f") (result f64) (f64.const -5.3575430359313371995e+300))) 849 (assert_return (invoke "f") (f64.const -0x1.0000000000000p+999)) 850 (module (func (export "f") (result f64) (f64.const +5.3575430359313371996e+300))) 851 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+999)) 852 (module (func (export "f") (result f64) (f64.const -5.3575430359313371996e+300))) 853 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+999)) 854 (module (func (export "f") (result f64) (f64.const +5.3575430359313383891e+300))) 855 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+999)) 856 (module (func (export "f") (result f64) (f64.const -5.3575430359313383891e+300))) 857 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+999)) 858 (module (func (export "f") (result f64) (f64.const +5.3575430359313383892e+300))) 859 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+999)) 860 (module (func (export "f") (result f64) (f64.const -5.3575430359313383892e+300))) 861 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+999)) 862 863 ;; f64, large exponent 864 (module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000000p+600))) 865 (assert_return (invoke "f") (f64.const +0x1.0000000000000p+600)) 866 (module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000000p+600))) 867 (assert_return (invoke "f") (f64.const -0x1.0000000000000p+600)) 868 (module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000001p+600))) 869 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+600)) 870 (module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000001p+600))) 871 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+600)) 872 (module (func (export "f") (result f64) (f64.const +0x1.0000000000000fffffffffffp+600))) 873 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+600)) 874 (module (func (export "f") (result f64) (f64.const -0x1.0000000000000fffffffffffp+600))) 875 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+600)) 876 (module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000000p+600))) 877 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+600)) 878 (module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000000p+600))) 879 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+600)) 880 (module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000001p+600))) 881 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+600)) 882 (module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000001p+600))) 883 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+600)) 884 (module (func (export "f") (result f64) (f64.const +0x1.00000000000017ffffffffffp+600))) 885 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+600)) 886 (module (func (export "f") (result f64) (f64.const -0x1.00000000000017ffffffffffp+600))) 887 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+600)) 888 (module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000000p+600))) 889 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+600)) 890 (module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000000p+600))) 891 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+600)) 892 (module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000001p+600))) 893 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+600)) 894 (module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000001p+600))) 895 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+600)) 896 (module (func (export "f") (result f64) (f64.const +0x1.0000000000001fffffffffffp+600))) 897 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+600)) 898 (module (func (export "f") (result f64) (f64.const -0x1.0000000000001fffffffffffp+600))) 899 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+600)) 900 (module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000000p+600))) 901 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+600)) 902 (module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000000p+600))) 903 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+600)) 904 (module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000001p+600))) 905 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+600)) 906 (module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000001p+600))) 907 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+600)) 908 (module (func (export "f") (result f64) (f64.const +0x1.00000000000027ffffffffffp+600))) 909 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+600)) 910 (module (func (export "f") (result f64) (f64.const -0x1.00000000000027ffffffffffp+600))) 911 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+600)) 912 (module (func (export "f") (result f64) (f64.const +0x1.000000000000280000000000p+600))) 913 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+600)) 914 (module (func (export "f") (result f64) (f64.const -0x1.000000000000280000000000p+600))) 915 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+600)) 916 (module (func (export "f") (result f64) (f64.const +0x1.000000000000280000000001p+600))) 917 (assert_return (invoke "f") (f64.const +0x1.0000000000003p+600)) 918 (module (func (export "f") (result f64) (f64.const -0x1.000000000000280000000001p+600))) 919 (assert_return (invoke "f") (f64.const -0x1.0000000000003p+600)) 920 921 (module (func (export "f") (result f64) (f64.const +0x2000000000000100000000000))) 922 (assert_return (invoke "f") (f64.const +0x1.0000000000000p+97)) 923 (module (func (export "f") (result f64) (f64.const -0x2000000000000100000000000))) 924 (assert_return (invoke "f") (f64.const -0x1.0000000000000p+97)) 925 (module (func (export "f") (result f64) (f64.const +0x2000000000000100000000001))) 926 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+97)) 927 (module (func (export "f") (result f64) (f64.const -0x2000000000000100000000001))) 928 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+97)) 929 (module (func (export "f") (result f64) (f64.const +0x20000000000001fffffffffff))) 930 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+97)) 931 (module (func (export "f") (result f64) (f64.const -0x20000000000001fffffffffff))) 932 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+97)) 933 (module (func (export "f") (result f64) (f64.const +0x2000000000000200000000000))) 934 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+97)) 935 (module (func (export "f") (result f64) (f64.const -0x2000000000000200000000000))) 936 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+97)) 937 (module (func (export "f") (result f64) (f64.const +0x2000000000000200000000001))) 938 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+97)) 939 (module (func (export "f") (result f64) (f64.const -0x2000000000000200000000001))) 940 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+97)) 941 (module (func (export "f") (result f64) (f64.const +0x20000000000002fffffffffff))) 942 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+97)) 943 (module (func (export "f") (result f64) (f64.const -0x20000000000002fffffffffff))) 944 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+97)) 945 (module (func (export "f") (result f64) (f64.const +0x2000000000000300000000000))) 946 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+97)) 947 (module (func (export "f") (result f64) (f64.const -0x2000000000000300000000000))) 948 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+97)) 949 (module (func (export "f") (result f64) (f64.const +0x2000000000000300000000001))) 950 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+97)) 951 (module (func (export "f") (result f64) (f64.const -0x2000000000000300000000001))) 952 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+97)) 953 (module (func (export "f") (result f64) (f64.const +0x20000000000003fffffffffff))) 954 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+97)) 955 (module (func (export "f") (result f64) (f64.const -0x20000000000003fffffffffff))) 956 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+97)) 957 (module (func (export "f") (result f64) (f64.const +0x2000000000000400000000000))) 958 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+97)) 959 (module (func (export "f") (result f64) (f64.const -0x2000000000000400000000000))) 960 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+97)) 961 (module (func (export "f") (result f64) (f64.const +0x2000000000000400000000001))) 962 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+97)) 963 (module (func (export "f") (result f64) (f64.const -0x2000000000000400000000001))) 964 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+97)) 965 (module (func (export "f") (result f64) (f64.const +0x20000000000004fffffffffff))) 966 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+97)) 967 (module (func (export "f") (result f64) (f64.const -0x20000000000004fffffffffff))) 968 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+97)) 969 (module (func (export "f") (result f64) (f64.const +0x2000000000000500000000000))) 970 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+97)) 971 (module (func (export "f") (result f64) (f64.const -0x2000000000000500000000000))) 972 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+97)) 973 (module (func (export "f") (result f64) (f64.const +0x2000000000000500000000001))) 974 (assert_return (invoke "f") (f64.const +0x1.0000000000003p+97)) 975 (module (func (export "f") (result f64) (f64.const -0x2000000000000500000000001))) 976 (assert_return (invoke "f") (f64.const -0x1.0000000000003p+97)) 977 978 (module (func (export "f") (result f64) (f64.const +1152921504606847104))) 979 (assert_return (invoke "f") (f64.const +0x1.0000000000000p+60)) 980 (module (func (export "f") (result f64) (f64.const -1152921504606847104))) 981 (assert_return (invoke "f") (f64.const -0x1.0000000000000p+60)) 982 (module (func (export "f") (result f64) (f64.const +1152921504606847105))) 983 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+60)) 984 (module (func (export "f") (result f64) (f64.const -1152921504606847105))) 985 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+60)) 986 (module (func (export "f") (result f64) (f64.const +1152921504606847359))) 987 (assert_return (invoke "f") (f64.const +0x1.0000000000001p+60)) 988 (module (func (export "f") (result f64) (f64.const -1152921504606847359))) 989 (assert_return (invoke "f") (f64.const -0x1.0000000000001p+60)) 990 (module (func (export "f") (result f64) (f64.const +1152921504606847360))) 991 (assert_return (invoke "f") (f64.const +0x1.0000000000002p+60)) 992 (module (func (export "f") (result f64) (f64.const -1152921504606847360))) 993 (assert_return (invoke "f") (f64.const -0x1.0000000000002p+60)) 994 995 ;; f64, subnormal 996 (module (func (export "f") (result f64) (f64.const +0x0.000000000000080000000000p-1022))) 997 (assert_return (invoke "f") (f64.const +0x0.0000000000000p-1022)) 998 (module (func (export "f") (result f64) (f64.const -0x0.000000000000080000000000p-1022))) 999 (assert_return (invoke "f") (f64.const -0x0.0000000000000p-1022)) 1000 (module (func (export "f") (result f64) (f64.const +0x0.000000000000080000000001p-1022))) 1001 (assert_return (invoke "f") (f64.const +0x0.0000000000001p-1022)) 1002 (module (func (export "f") (result f64) (f64.const -0x0.000000000000080000000001p-1022))) 1003 (assert_return (invoke "f") (f64.const -0x0.0000000000001p-1022)) 1004 (module (func (export "f") (result f64) (f64.const +0x0.0000000000000fffffffffffp-1022))) 1005 (assert_return (invoke "f") (f64.const +0x0.0000000000001p-1022)) 1006 (module (func (export "f") (result f64) (f64.const -0x0.0000000000000fffffffffffp-1022))) 1007 (assert_return (invoke "f") (f64.const -0x0.0000000000001p-1022)) 1008 (module (func (export "f") (result f64) (f64.const +0x0.000000000000100000000000p-1022))) 1009 (assert_return (invoke "f") (f64.const +0x0.0000000000001p-1022)) 1010 (module (func (export "f") (result f64) (f64.const -0x0.000000000000100000000000p-1022))) 1011 (assert_return (invoke "f") (f64.const -0x0.0000000000001p-1022)) 1012 (module (func (export "f") (result f64) (f64.const +0x0.000000000000100000000001p-1022))) 1013 (assert_return (invoke "f") (f64.const +0x0.0000000000001p-1022)) 1014 (module (func (export "f") (result f64) (f64.const -0x0.000000000000100000000001p-1022))) 1015 (assert_return (invoke "f") (f64.const -0x0.0000000000001p-1022)) 1016 (module (func (export "f") (result f64) (f64.const +0x0.00000000000017ffffffffffp-1022))) 1017 (assert_return (invoke "f") (f64.const +0x0.0000000000001p-1022)) 1018 (module (func (export "f") (result f64) (f64.const -0x0.00000000000017ffffffffffp-1022))) 1019 (assert_return (invoke "f") (f64.const -0x0.0000000000001p-1022)) 1020 (module (func (export "f") (result f64) (f64.const +0x0.000000000000180000000000p-1022))) 1021 (assert_return (invoke "f") (f64.const +0x0.0000000000002p-1022)) 1022 (module (func (export "f") (result f64) (f64.const -0x0.000000000000180000000000p-1022))) 1023 (assert_return (invoke "f") (f64.const -0x0.0000000000002p-1022)) 1024 (module (func (export "f") (result f64) (f64.const +0x0.000000000000180000000001p-1022))) 1025 (assert_return (invoke "f") (f64.const +0x0.0000000000002p-1022)) 1026 (module (func (export "f") (result f64) (f64.const -0x0.000000000000180000000001p-1022))) 1027 (assert_return (invoke "f") (f64.const -0x0.0000000000002p-1022)) 1028 (module (func (export "f") (result f64) (f64.const +0x0.0000000000001fffffffffffp-1022))) 1029 (assert_return (invoke "f") (f64.const +0x0.0000000000002p-1022)) 1030 (module (func (export "f") (result f64) (f64.const -0x0.0000000000001fffffffffffp-1022))) 1031 (assert_return (invoke "f") (f64.const -0x0.0000000000002p-1022)) 1032 (module (func (export "f") (result f64) (f64.const +0x0.000000000000200000000000p-1022))) 1033 (assert_return (invoke "f") (f64.const +0x0.0000000000002p-1022)) 1034 (module (func (export "f") (result f64) (f64.const -0x0.000000000000200000000000p-1022))) 1035 (assert_return (invoke "f") (f64.const -0x0.0000000000002p-1022)) 1036 (module (func (export "f") (result f64) (f64.const +0x0.000000000000200000000001p-1022))) 1037 (assert_return (invoke "f") (f64.const +0x0.0000000000002p-1022)) 1038 (module (func (export "f") (result f64) (f64.const -0x0.000000000000200000000001p-1022))) 1039 (assert_return (invoke "f") (f64.const -0x0.0000000000002p-1022)) 1040 (module (func (export "f") (result f64) (f64.const +0x0.00000000000027ffffffffffp-1022))) 1041 (assert_return (invoke "f") (f64.const +0x0.0000000000002p-1022)) 1042 (module (func (export "f") (result f64) (f64.const -0x0.00000000000027ffffffffffp-1022))) 1043 (assert_return (invoke "f") (f64.const -0x0.0000000000002p-1022)) 1044 (module (func (export "f") (result f64) (f64.const +0x0.000000000000280000000000p-1022))) 1045 (assert_return (invoke "f") (f64.const +0x0.0000000000002p-1022)) 1046 (module (func (export "f") (result f64) (f64.const -0x0.000000000000280000000000p-1022))) 1047 (assert_return (invoke "f") (f64.const -0x0.0000000000002p-1022)) 1048 (module (func (export "f") (result f64) (f64.const +0x1.000000000000280000000001p-1022))) 1049 (assert_return (invoke "f") (f64.const +0x1.0000000000003p-1022)) 1050 (module (func (export "f") (result f64) (f64.const -0x1.000000000000280000000001p-1022))) 1051 (assert_return (invoke "f") (f64.const -0x1.0000000000003p-1022)) 1052 1053 ;; f64, round down at limit to infinity 1054 (module (func (export "f") (result f64) (f64.const +0x1.fffffffffffff4p1023))) 1055 (assert_return (invoke "f") (f64.const +0x1.fffffffffffffp1023)) 1056 (module (func (export "f") (result f64) (f64.const -0x1.fffffffffffff4p1023))) 1057 (assert_return (invoke "f") (f64.const -0x1.fffffffffffffp1023)) 1058 (module (func (export "f") (result f64) (f64.const +0x1.fffffffffffff7ffffffp1023))) 1059 (assert_return (invoke "f") (f64.const +0x1.fffffffffffffp1023)) 1060 (module (func (export "f") (result f64) (f64.const -0x1.fffffffffffff7ffffffp1023))) 1061 (assert_return (invoke "f") (f64.const -0x1.fffffffffffffp1023))