Changeset 272933 in webkit


Ignore:
Timestamp:
Feb 16, 2021 3:28:32 PM (17 months ago)
Author:
ysuzuki@apple.com
Message:

WebAssembly: implement non-trapping float to int conversion
https://bugs.webkit.org/show_bug.cgi?id=173471

Patch by Yusuke Suzuki <ysuzuki@apple.com> and Sergey Rubanov <Sergey Rubanov> on 2021-02-16
Reviewed by Tadeu Zagallo.

JSTests:

  • wasm/spec-tests/binary-leb128.wast.js:
  • wasm/spec-tests/conversions.wast.js:
  • wasm/wasm.json:

Source/JavaScriptCore:

This patch implements trunc-saturated opcodes in Wasm. This does not trap, and instead it generates
saturated-truncated integer results from floats.

  1. If the input is NaN, then return 0.
  2. If the input is higher than the maximum value, then return the maximum value (e.g. INT_32MAX).
  3. If the input is lower than the minimum value, then return the minimum value (e.g. INT_32MIN).

These wasm opcodes are defined as two-byte opcodes. Currently, we do not have a mechanism to define
this kind of opcodes automatically, so we manually define them. We will clean up in the future patch.

We rename ExtTableOpType to Ext1OpType since it is no longer limited to table opcodes.

  • generator/Wasm.rb:
  • llint/WebAssembly.asm:
  • wasm/WasmAirIRGenerator.cpp:

(JSC::Wasm::AirIRGenerator::truncSaturated):

  • wasm/WasmB3IRGenerator.cpp:

(JSC::Wasm::B3IRGenerator::truncSaturated):

  • wasm/WasmFunctionParser.h:

(JSC::Wasm::FunctionParser<Context>::truncSaturated):
(JSC::Wasm::FunctionParser<Context>::parseExpression):
(JSC::Wasm::FunctionParser<Context>::parseUnreachableExpression):

  • wasm/WasmLLIntGenerator.cpp:

(JSC::Wasm::LLIntGenerator::truncSaturated):

  • wasm/generateWasm.py:

(isNormal):

  • wasm/generateWasmOpsHeader.py:

(opcodeWithTypesMacroizer):
(saturatedTruncMacroizer):
(saturatedTruncMacroizer.modifier):
(Ext1OpType):
(ExtTableOpType): Deleted.

  • wasm/wasm.json:
Location:
trunk
Files:
14 edited

Legend:

Unmodified
Added
Removed
  • trunk/JSTests/ChangeLog

    r272883 r272933  
     12021-02-16  Yusuke Suzuki  <ysuzuki@apple.com> and Sergey Rubanov <chi187@gmail.com>
     2
     3        WebAssembly: implement non-trapping float to int conversion
     4        https://bugs.webkit.org/show_bug.cgi?id=173471
     5
     6        Reviewed by Tadeu Zagallo.
     7
     8        * wasm/spec-tests/binary-leb128.wast.js:
     9        * wasm/spec-tests/conversions.wast.js:
     10        * wasm/wasm.json:
     11
    1122021-02-15  Caio Lima  <ticaiolima@gmail.com>
    213
  • trunk/JSTests/wasm/spec-tests/binary-leb128.wast.js

    r269998 r272933  
    246246
    247247// binary-leb128.wast:966
    248 // https://bugs.webkit.org/show_bug.cgi?id=173471
    249 // FIXME: Implement non-trapping float to int conversions.
     248// This format is not supported in wasm reference types.
    250249// let $26 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x1b\x01\x19\x00\x00\xfc\x80\x00\x00\xfc\x81\x80\x00\x00\xfc\x86\x80\x80\x00\x00\xfc\x87\x80\x80\x80\x00\x00\x0b");
    251250
  • trunk/JSTests/wasm/spec-tests/conversions.wast.js

    r269831 r272933  
    11
    22// conversions.wast:1
    3 // https://bugs.webkit.org/show_bug.cgi?id=173471
    4 // FIXME: Implement non-trapping float to int conversions.
    5 // let $1 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\xbd\x80\x80\x80\x00\x0c\x60\x01\x7f\x01\x7e\x60\x01\x7e\x01\x7f\x60\x01\x7d\x01\x7f\x60\x01\x7c\x01\x7f\x60\x01\x7d\x01\x7e\x60\x01\x7c\x01\x7e\x60\x01\x7f\x01\x7d\x60\x01\x7e\x01\x7d\x60\x01\x7f\x01\x7c\x60\x01\x7e\x01\x7c\x60\x01\x7d\x01\x7c\x60\x01\x7c\x01\x7d\x03\xa2\x80\x80\x80\x00\x21\x00\x00\x01\x02\x02\x03\x03\x04\x04\x05\x05\x02\x02\x03\x03\x04\x04\x05\x05\x06\x07\x08\x09\x06\x07\x08\x09\x0a\x0b\x06\x09\x02\x05\x07\x91\x85\x80\x80\x00\x21\x10\x69\x36\x34\x2e\x65\x78\x74\x65\x6e\x64\x5f\x69\x33\x32\x5f\x73\x00\x00\x10\x69\x36\x34\x2e\x65\x78\x74\x65\x6e\x64\x5f\x69\x33\x32\x5f\x75\x00\x01\x0c\x69\x33\x32\x2e\x77\x72\x61\x70\x5f\x69\x36\x34\x00\x02\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x73\x00\x03\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x75\x00\x04\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x73\x00\x05\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x75\x00\x06\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x73\x00\x07\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x75\x00\x08\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x73\x00\x09\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x75\x00\x0a\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x0b\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x0c\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x0d\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x0e\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x0f\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x10\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x11\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x12\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x73\x00\x13\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x73\x00\x14\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x73\x00\x15\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x73\x00\x16\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x75\x00\x17\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x75\x00\x18\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x75\x00\x19\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x75\x00\x1a\x0f\x66\x36\x34\x2e\x70\x72\x6f\x6d\x6f\x74\x65\x5f\x66\x33\x32\x00\x1b\x0e\x66\x33\x32\x2e\x64\x65\x6d\x6f\x74\x65\x5f\x66\x36\x34\x00\x1c\x13\x66\x33\x32\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x69\x33\x32\x00\x1d\x13\x66\x36\x34\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x69\x36\x34\x00\x1e\x13\x69\x33\x32\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x66\x33\x32\x00\x1f\x13\x69\x36\x34\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x66\x36\x34\x00\x20\x0a\xd3\x82\x80\x80\x00\x21\x85\x80\x80\x80\x00\x00\x20\x00\xac\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xad\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xa7\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xa8\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xa9\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xaa\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xab\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xae\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xaf\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb0\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb1\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x00\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x01\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x02\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x03\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x04\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x05\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x06\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x07\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb2\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb4\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb7\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb9\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb3\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb5\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb8\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xba\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbb\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb6\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbe\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbf\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbc\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbd\x0b");
    6 let $1 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\xbd\x80\x80\x80\x00\x0c\x60\x01\x7f\x01\x7e\x60\x01\x7e\x01\x7f\x60\x01\x7d\x01\x7f\x60\x01\x7c\x01\x7f\x60\x01\x7d\x01\x7e\x60\x01\x7c\x01\x7e\x60\x01\x7f\x01\x7d\x60\x01\x7e\x01\x7d\x60\x01\x7f\x01\x7c\x60\x01\x7e\x01\x7c\x60\x01\x7d\x01\x7c\x60\x01\x7c\x01\x7d\x03\x9a\x80\x80\x80\x00\x19\x00\x00\x01\x02\x02\x03\x03\x04\x04\x05\x05\x06\x07\x08\x09\x06\x07\x08\x09\x0a\x0b\x06\x09\x02\x05\x07\xe1\x83\x80\x80\x00\x19\x10\x69\x36\x34\x2e\x65\x78\x74\x65\x6e\x64\x5f\x69\x33\x32\x5f\x73\x00\x00\x10\x69\x36\x34\x2e\x65\x78\x74\x65\x6e\x64\x5f\x69\x33\x32\x5f\x75\x00\x01\x0c\x69\x33\x32\x2e\x77\x72\x61\x70\x5f\x69\x36\x34\x00\x02\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x73\x00\x03\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x75\x00\x04\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x73\x00\x05\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x75\x00\x06\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x73\x00\x07\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x75\x00\x08\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x73\x00\x09\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x75\x00\x0a\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x73\x00\x0b\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x73\x00\x0c\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x73\x00\x0d\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x73\x00\x0e\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x75\x00\x0f\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x75\x00\x10\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x75\x00\x11\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x75\x00\x12\x0f\x66\x36\x34\x2e\x70\x72\x6f\x6d\x6f\x74\x65\x5f\x66\x33\x32\x00\x13\x0e\x66\x33\x32\x2e\x64\x65\x6d\x6f\x74\x65\x5f\x66\x36\x34\x00\x14\x13\x66\x33\x32\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x69\x33\x32\x00\x15\x13\x66\x36\x34\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x69\x36\x34\x00\x16\x13\x69\x33\x32\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x66\x33\x32\x00\x17\x13\x69\x36\x34\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x66\x36\x34\x00\x18\x0a\xfb\x81\x80\x80\x00\x19\x85\x80\x80\x80\x00\x00\x20\x00\xac\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xad\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xa7\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xa8\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xa9\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xaa\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xab\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xae\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xaf\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb0\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb1\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb2\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb4\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb7\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb9\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb3\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb5\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb8\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xba\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbb\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb6\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbe\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbf\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbc\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbd\x0b");
     3let $1 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\xbd\x80\x80\x80\x00\x0c\x60\x01\x7f\x01\x7e\x60\x01\x7e\x01\x7f\x60\x01\x7d\x01\x7f\x60\x01\x7c\x01\x7f\x60\x01\x7d\x01\x7e\x60\x01\x7c\x01\x7e\x60\x01\x7f\x01\x7d\x60\x01\x7e\x01\x7d\x60\x01\x7f\x01\x7c\x60\x01\x7e\x01\x7c\x60\x01\x7d\x01\x7c\x60\x01\x7c\x01\x7d\x03\xa2\x80\x80\x80\x00\x21\x00\x00\x01\x02\x02\x03\x03\x04\x04\x05\x05\x02\x02\x03\x03\x04\x04\x05\x05\x06\x07\x08\x09\x06\x07\x08\x09\x0a\x0b\x06\x09\x02\x05\x07\x91\x85\x80\x80\x00\x21\x10\x69\x36\x34\x2e\x65\x78\x74\x65\x6e\x64\x5f\x69\x33\x32\x5f\x73\x00\x00\x10\x69\x36\x34\x2e\x65\x78\x74\x65\x6e\x64\x5f\x69\x33\x32\x5f\x75\x00\x01\x0c\x69\x33\x32\x2e\x77\x72\x61\x70\x5f\x69\x36\x34\x00\x02\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x73\x00\x03\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x75\x00\x04\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x73\x00\x05\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x75\x00\x06\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x73\x00\x07\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x33\x32\x5f\x75\x00\x08\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x73\x00\x09\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x66\x36\x34\x5f\x75\x00\x0a\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x0b\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x0c\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x0d\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x0e\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x0f\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x10\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x11\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x12\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x73\x00\x13\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x73\x00\x14\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x73\x00\x15\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x73\x00\x16\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x75\x00\x17\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x75\x00\x18\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x33\x32\x5f\x75\x00\x19\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x69\x36\x34\x5f\x75\x00\x1a\x0f\x66\x36\x34\x2e\x70\x72\x6f\x6d\x6f\x74\x65\x5f\x66\x33\x32\x00\x1b\x0e\x66\x33\x32\x2e\x64\x65\x6d\x6f\x74\x65\x5f\x66\x36\x34\x00\x1c\x13\x66\x33\x32\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x69\x33\x32\x00\x1d\x13\x66\x36\x34\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x69\x36\x34\x00\x1e\x13\x69\x33\x32\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x66\x33\x32\x00\x1f\x13\x69\x36\x34\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x66\x36\x34\x00\x20\x0a\xd3\x82\x80\x80\x00\x21\x85\x80\x80\x80\x00\x00\x20\x00\xac\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xad\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xa7\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xa8\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xa9\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xaa\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xab\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xae\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xaf\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb0\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb1\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x00\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x01\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x02\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x03\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x04\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x05\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x06\x0b\x86\x80\x80\x80\x00\x00\x20\x00\xfc\x07\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb2\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb4\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb7\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb9\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb3\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb5\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb8\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xba\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbb\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xb6\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbe\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbf\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbc\x0b\x85\x80\x80\x80\x00\x00\x20\x00\xbd\x0b");
    74
    85// conversions.wast:37
     
    649646
    650647// conversions.wast:265
    651 // https://bugs.webkit.org/show_bug.cgi?id=173471
    652 // FIXME: Implement non-trapping float to int conversions.
    653 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [0.]), 0)
     648run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [0.]), 0)
    654649
    655650// conversions.wast:266
    656 // https://bugs.webkit.org/show_bug.cgi?id=173471
    657 // FIXME: Implement non-trapping float to int conversions.
    658 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-0.]), 0)
     651run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-0.]), 0)
    659652
    660653// conversions.wast:267
    661 // https://bugs.webkit.org/show_bug.cgi?id=173471
    662 // FIXME: Implement non-trapping float to int conversions.
    663 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [1.40129846432e-45]), 0)
     654run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [1.40129846432e-45]), 0)
    664655
    665656// conversions.wast:268
    666 // https://bugs.webkit.org/show_bug.cgi?id=173471
    667 // FIXME: Implement non-trapping float to int conversions.
    668 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.40129846432e-45]), 0)
     657run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.40129846432e-45]), 0)
    669658
    670659// conversions.wast:269
    671 // https://bugs.webkit.org/show_bug.cgi?id=173471
    672 // FIXME: Implement non-trapping float to int conversions.
    673 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [1.]), 1)
     660run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [1.]), 1)
    674661
    675662// conversions.wast:270
    676 // https://bugs.webkit.org/show_bug.cgi?id=173471
    677 // FIXME: Implement non-trapping float to int conversions.
    678 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [1.10000002384]), 1)
     663run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [1.10000002384]), 1)
    679664
    680665// conversions.wast:271
    681 // https://bugs.webkit.org/show_bug.cgi?id=173471
    682 // FIXME: Implement non-trapping float to int conversions.
    683 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [1.5]), 1)
     666run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [1.5]), 1)
    684667
    685668// conversions.wast:272
    686 // https://bugs.webkit.org/show_bug.cgi?id=173471
    687 // FIXME: Implement non-trapping float to int conversions.
    688 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.]), -1)
     669run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.]), -1)
    689670
    690671// conversions.wast:273
    691 // https://bugs.webkit.org/show_bug.cgi?id=173471
    692 // FIXME: Implement non-trapping float to int conversions.
    693 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.10000002384]), -1)
     672run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.10000002384]), -1)
    694673
    695674// conversions.wast:274
    696 // https://bugs.webkit.org/show_bug.cgi?id=173471
    697 // FIXME: Implement non-trapping float to int conversions.
    698 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.5]), -1)
     675run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.5]), -1)
    699676
    700677// conversions.wast:275
    701 // https://bugs.webkit.org/show_bug.cgi?id=173471
    702 // FIXME: Implement non-trapping float to int conversions.
    703 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x33\x33\xf3\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.89999997616]), -1)
     678run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x33\x33\xf3\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-1.89999997616]), -1)
    704679
    705680// conversions.wast:276
    706 // https://bugs.webkit.org/show_bug.cgi?id=173471
    707 // FIXME: Implement non-trapping float to int conversions.
    708 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\xc0\x10\x00\x01\x41\x7e\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-2.]), -2)
     681run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\xc0\x10\x00\x01\x41\x7e\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-2.]), -2)
    709682
    710683// conversions.wast:277
    711 // https://bugs.webkit.org/show_bug.cgi?id=173471
    712 // FIXME: Implement non-trapping float to int conversions.
    713 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\xff\x4e\x10\x00\x01\x41\x80\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [2147483520.]), 2_147_483_520)
     684run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\xff\x4e\x10\x00\x01\x41\x80\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [2147483520.]), 2_147_483_520)
    714685
    715686// conversions.wast:278
    716 // https://bugs.webkit.org/show_bug.cgi?id=173471
    717 // FIXME: Implement non-trapping float to int conversions.
    718 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\xcf\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-2147483648.]), -2_147_483_648)
     687run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\xcf\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-2147483648.]), -2_147_483_648)
    719688
    720689// conversions.wast:279
    721 // https://bugs.webkit.org/show_bug.cgi?id=173471
    722 // FIXME: Implement non-trapping float to int conversions.
    723 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x4f\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [2147483648.]), 2_147_483_647)
     690run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x4f\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [2147483648.]), 2_147_483_647)
    724691
    725692// conversions.wast:280
    726 // https://bugs.webkit.org/show_bug.cgi?id=173471
    727 // FIXME: Implement non-trapping float to int conversions.
    728 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\xcf\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-2147483904.]), -2_147_483_648)
     693run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\xcf\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-2147483904.]), -2_147_483_648)
    729694
    730695// conversions.wast:281
    731 // https://bugs.webkit.org/show_bug.cgi?id=173471
    732 // FIXME: Implement non-trapping float to int conversions.
    733 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x7f\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [Infinity]), 2_147_483_647)
     696run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x7f\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [Infinity]), 2_147_483_647)
    734697
    735698// conversions.wast:282
    736 // https://bugs.webkit.org/show_bug.cgi?id=173471
    737 // FIXME: Implement non-trapping float to int conversions.
    738 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xff\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-Infinity]), -2_147_483_648)
     699run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xff\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [-Infinity]), -2_147_483_648)
    739700
    740701// conversions.wast:283
    741 // https://bugs.webkit.org/show_bug.cgi?id=173471
    742 // FIXME: Implement non-trapping float to int conversions.
    743 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [NaN]), 0)
     702run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [NaN]), 0)
    744703
    745704// conversions.wast:284
    746 // https://bugs.webkit.org/show_bug.cgi?id=173471
    747 // FIXME: Implement non-trapping float to int conversions.
    748 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [NaN]), 0)
     705run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [NaN]), 0)
    749706
    750707// conversions.wast:285
    751 // https://bugs.webkit.org/show_bug.cgi?id=173471
    752 // FIXME: Implement non-trapping float to int conversions.
    753 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [NaN]), 0)
     708run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [NaN]), 0)
    754709
    755710// conversions.wast:286
    756 // https://bugs.webkit.org/show_bug.cgi?id=173471
    757 // FIXME: Implement non-trapping float to int conversions.
    758 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [NaN]), 0)
     711run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_s", [NaN]), 0)
    759712
    760713// conversions.wast:288
    761 // https://bugs.webkit.org/show_bug.cgi?id=173471
    762 // FIXME: Implement non-trapping float to int conversions.
    763 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [0.]), 0)
     714run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [0.]), 0)
    764715
    765716// conversions.wast:289
    766 // https://bugs.webkit.org/show_bug.cgi?id=173471
    767 // FIXME: Implement non-trapping float to int conversions.
    768 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-0.]), 0)
     717run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-0.]), 0)
    769718
    770719// conversions.wast:290
    771 // https://bugs.webkit.org/show_bug.cgi?id=173471
    772 // FIXME: Implement non-trapping float to int conversions.
    773 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.40129846432e-45]), 0)
     720run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.40129846432e-45]), 0)
    774721
    775722// conversions.wast:291
    776 // https://bugs.webkit.org/show_bug.cgi?id=173471
    777 // FIXME: Implement non-trapping float to int conversions.
    778 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-1.40129846432e-45]), 0)
     723run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-1.40129846432e-45]), 0)
    779724
    780725// conversions.wast:292
    781 // https://bugs.webkit.org/show_bug.cgi?id=173471
    782 // FIXME: Implement non-trapping float to int conversions.
    783 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.]), 1)
     726run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.]), 1)
    784727
    785728// conversions.wast:293
    786 // https://bugs.webkit.org/show_bug.cgi?id=173471
    787 // FIXME: Implement non-trapping float to int conversions.
    788 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.10000002384]), 1)
     729run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.10000002384]), 1)
    789730
    790731// conversions.wast:294
    791 // https://bugs.webkit.org/show_bug.cgi?id=173471
    792 // FIXME: Implement non-trapping float to int conversions.
    793 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.5]), 1)
     732run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.5]), 1)
    794733
    795734// conversions.wast:295
    796 // https://bugs.webkit.org/show_bug.cgi?id=173471
    797 // FIXME: Implement non-trapping float to int conversions.
    798 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x33\x33\xf3\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.89999997616]), 1)
     735run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x33\x33\xf3\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [1.89999997616]), 1)
    799736
    800737// conversions.wast:296
    801 // https://bugs.webkit.org/show_bug.cgi?id=173471
    802 // FIXME: Implement non-trapping float to int conversions.
    803 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x40\x10\x00\x01\x41\x02\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [2.]), 2)
     738run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x40\x10\x00\x01\x41\x02\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [2.]), 2)
    804739
    805740// conversions.wast:297
    806 // https://bugs.webkit.org/show_bug.cgi?id=173471
    807 // FIXME: Implement non-trapping float to int conversions.
    808 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x4f\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [2147483648.]), -2_147_483_648)
     741run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x4f\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [2147483648.]), -2_147_483_648)
    809742
    810743// conversions.wast:298
    811 // https://bugs.webkit.org/show_bug.cgi?id=173471
    812 // FIXME: Implement non-trapping float to int conversions.
    813 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9d\x80\x80\x80\x00\x01\x97\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\x7f\x4f\x10\x00\x01\x41\x80\x7e\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [4294967040.]), -256)
     744run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9d\x80\x80\x80\x00\x01\x97\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\x7f\x4f\x10\x00\x01\x41\x80\x7e\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [4294967040.]), -256)
    814745
    815746// conversions.wast:299
    816 // https://bugs.webkit.org/show_bug.cgi?id=173471
    817 // FIXME: Implement non-trapping float to int conversions.
    818 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x66\x66\x66\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-0.899999976158]), 0)
     747run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x66\x66\x66\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-0.899999976158]), 0)
    819748
    820749// conversions.wast:300
    821 // https://bugs.webkit.org/show_bug.cgi?id=173471
    822 // FIXME: Implement non-trapping float to int conversions.
    823 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\x7f\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-0.999999940395]), 0)
     750run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\x7f\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-0.999999940395]), 0)
    824751
    825752// conversions.wast:301
    826 // https://bugs.webkit.org/show_bug.cgi?id=173471
    827 // FIXME: Implement non-trapping float to int conversions.
    828 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x4f\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [4294967296.]), -1)
     753run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x4f\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [4294967296.]), -1)
    829754
    830755// conversions.wast:302
    831 // https://bugs.webkit.org/show_bug.cgi?id=173471
    832 // FIXME: Implement non-trapping float to int conversions.
    833 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-1.]), 0)
     756run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-1.]), 0)
    834757
    835758// conversions.wast:303
    836 // https://bugs.webkit.org/show_bug.cgi?id=173471
    837 // FIXME: Implement non-trapping float to int conversions.
    838 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x7f\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [Infinity]), -1)
     759run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x7f\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [Infinity]), -1)
    839760
    840761// conversions.wast:304
    841 // https://bugs.webkit.org/show_bug.cgi?id=173471
    842 // FIXME: Implement non-trapping float to int conversions.
    843 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-Infinity]), 0)
     762run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [-Infinity]), 0)
    844763
    845764// conversions.wast:305
    846 // https://bugs.webkit.org/show_bug.cgi?id=173471
    847 // FIXME: Implement non-trapping float to int conversions.
    848 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [NaN]), 0)
     765run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [NaN]), 0)
    849766
    850767// conversions.wast:306
    851 // https://bugs.webkit.org/show_bug.cgi?id=173471
    852 // FIXME: Implement non-trapping float to int conversions.
    853 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [NaN]), 0)
     768run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [NaN]), 0)
    854769
    855770// conversions.wast:307
    856 // https://bugs.webkit.org/show_bug.cgi?id=173471
    857 // FIXME: Implement non-trapping float to int conversions.
    858 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [NaN]), 0)
     771run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [NaN]), 0)
    859772
    860773// conversions.wast:308
    861 // https://bugs.webkit.org/show_bug.cgi?id=173471
    862 // FIXME: Implement non-trapping float to int conversions.
    863 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [NaN]), 0)
     774run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f32_u", [NaN]), 0)
    864775
    865776// conversions.wast:310
    866 // https://bugs.webkit.org/show_bug.cgi?id=173471
    867 // FIXME: Implement non-trapping float to int conversions.
    868 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [0.]), 0)
     777run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [0.]), 0)
    869778
    870779// conversions.wast:311
    871 // https://bugs.webkit.org/show_bug.cgi?id=173471
    872 // FIXME: Implement non-trapping float to int conversions.
    873 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-0.]), 0)
     780run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-0.]), 0)
    874781
    875782// conversions.wast:312
    876 // https://bugs.webkit.org/show_bug.cgi?id=173471
    877 // FIXME: Implement non-trapping float to int conversions.
    878 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [4.94065645841e-324]), 0)
     783run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [4.94065645841e-324]), 0)
    879784
    880785// conversions.wast:313
    881 // https://bugs.webkit.org/show_bug.cgi?id=173471
    882 // FIXME: Implement non-trapping float to int conversions.
    883 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-4.94065645841e-324]), 0)
     786run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-4.94065645841e-324]), 0)
    884787
    885788// conversions.wast:314
    886 // https://bugs.webkit.org/show_bug.cgi?id=173471
    887 // FIXME: Implement non-trapping float to int conversions.
    888 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [1.]), 1)
     789run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [1.]), 1)
    889790
    890791// conversions.wast:315
    891 // https://bugs.webkit.org/show_bug.cgi?id=173471
    892 // FIXME: Implement non-trapping float to int conversions.
    893 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [1.1]), 1)
     792run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [1.1]), 1)
    894793
    895794// conversions.wast:316
    896 // https://bugs.webkit.org/show_bug.cgi?id=173471
    897 // FIXME: Implement non-trapping float to int conversions.
    898 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [1.5]), 1)
     795run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [1.5]), 1)
    899796
    900797// conversions.wast:317
    901 // https://bugs.webkit.org/show_bug.cgi?id=173471
    902 // FIXME: Implement non-trapping float to int conversions.
    903 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-1.]), -1)
     798run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-1.]), -1)
    904799
    905800// conversions.wast:318
    906 // https://bugs.webkit.org/show_bug.cgi?id=173471
    907 // FIXME: Implement non-trapping float to int conversions.
    908 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-1.1]), -1)
     801run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-1.1]), -1)
    909802
    910803// conversions.wast:319
    911 // https://bugs.webkit.org/show_bug.cgi?id=173471
    912 // FIXME: Implement non-trapping float to int conversions.
    913 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-1.5]), -1)
     804run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-1.5]), -1)
    914805
    915806// conversions.wast:320
    916 // https://bugs.webkit.org/show_bug.cgi?id=173471
    917 // FIXME: Implement non-trapping float to int conversions.
    918 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x66\x66\x66\x66\x66\x66\xfe\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-1.9]), -1)
     807run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x66\x66\x66\x66\x66\x66\xfe\xbf\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-1.9]), -1)
    919808
    920809// conversions.wast:321
    921 // https://bugs.webkit.org/show_bug.cgi?id=173471
    922 // FIXME: Implement non-trapping float to int conversions.
    923 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\xc0\x10\x00\x01\x41\x7e\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-2.]), -2)
     810run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\xc0\x10\x00\x01\x41\x7e\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-2.]), -2)
    924811
    925812// conversions.wast:322
    926 // https://bugs.webkit.org/show_bug.cgi?id=173471
    927 // FIXME: Implement non-trapping float to int conversions.
    928 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\xc0\xff\xff\xff\xdf\x41\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [2147483647.]), 2_147_483_647)
     813run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\xc0\xff\xff\xff\xdf\x41\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [2147483647.]), 2_147_483_647)
    929814
    930815// conversions.wast:323
    931 // https://bugs.webkit.org/show_bug.cgi?id=173471
    932 // FIXME: Implement non-trapping float to int conversions.
    933 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xc1\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-2147483648.]), -2_147_483_648)
     816run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xc1\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-2147483648.]), -2_147_483_648)
    934817
    935818// conversions.wast:324
    936 // https://bugs.webkit.org/show_bug.cgi?id=173471
    937 // FIXME: Implement non-trapping float to int conversions.
    938 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x41\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [2147483648.]), 2_147_483_647)
     819run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x41\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [2147483648.]), 2_147_483_647)
    939820
    940821// conversions.wast:325
    941 // https://bugs.webkit.org/show_bug.cgi?id=173471
    942 // FIXME: Implement non-trapping float to int conversions.
    943 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x20\x00\x00\x00\xe0\xc1\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-2147483649.]), -2_147_483_648)
     822run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x20\x00\x00\x00\xe0\xc1\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-2147483649.]), -2_147_483_648)
    944823
    945824// conversions.wast:326
    946 // https://bugs.webkit.org/show_bug.cgi?id=173471
    947 // FIXME: Implement non-trapping float to int conversions.
    948 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [Infinity]), 2_147_483_647)
     825run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x01\x41\xff\xff\xff\xff\x07\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [Infinity]), 2_147_483_647)
    949826
    950827// conversions.wast:327
    951 // https://bugs.webkit.org/show_bug.cgi?id=173471
    952 // FIXME: Implement non-trapping float to int conversions.
    953 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-Infinity]), -2_147_483_648)
     828run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [-Infinity]), -2_147_483_648)
    954829
    955830// conversions.wast:328
    956 // https://bugs.webkit.org/show_bug.cgi?id=173471
    957 // FIXME: Implement non-trapping float to int conversions.
    958 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [NaN]), 0)
     831run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [NaN]), 0)
    959832
    960833// conversions.wast:329
    961 // https://bugs.webkit.org/show_bug.cgi?id=173471
    962 // FIXME: Implement non-trapping float to int conversions.
    963 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [NaN]), 0)
     834run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [NaN]), 0)
    964835
    965836// conversions.wast:330
    966 // https://bugs.webkit.org/show_bug.cgi?id=173471
    967 // FIXME: Implement non-trapping float to int conversions.
    968 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [NaN]), 0)
     837run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [NaN]), 0)
    969838
    970839// conversions.wast:331
    971 // https://bugs.webkit.org/show_bug.cgi?id=173471
    972 // FIXME: Implement non-trapping float to int conversions.
    973 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [NaN]), 0)
     840run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_s", [NaN]), 0)
    974841
    975842// conversions.wast:333
    976 // https://bugs.webkit.org/show_bug.cgi?id=173471
    977 // FIXME: Implement non-trapping float to int conversions.
    978 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [0.]), 0)
     843run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [0.]), 0)
    979844
    980845// conversions.wast:334
    981 // https://bugs.webkit.org/show_bug.cgi?id=173471
    982 // FIXME: Implement non-trapping float to int conversions.
    983 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-0.]), 0)
     846run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-0.]), 0)
    984847
    985848// conversions.wast:335
    986 // https://bugs.webkit.org/show_bug.cgi?id=173471
    987 // FIXME: Implement non-trapping float to int conversions.
    988 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [4.94065645841e-324]), 0)
     849run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [4.94065645841e-324]), 0)
    989850
    990851// conversions.wast:336
    991 // https://bugs.webkit.org/show_bug.cgi?id=173471
    992 // FIXME: Implement non-trapping float to int conversions.
    993 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-4.94065645841e-324]), 0)
     852run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-4.94065645841e-324]), 0)
    994853
    995854// conversions.wast:337
    996 // https://bugs.webkit.org/show_bug.cgi?id=173471
    997 // FIXME: Implement non-trapping float to int conversions.
    998 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1.]), 1)
     855run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1.]), 1)
    999856
    1000857// conversions.wast:338
    1001 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1002 // FIXME: Implement non-trapping float to int conversions.
    1003 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1.1]), 1)
     858run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1.1]), 1)
    1004859
    1005860// conversions.wast:339
    1006 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1007 // FIXME: Implement non-trapping float to int conversions.
    1008 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1.5]), 1)
     861run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1.5]), 1)
    1009862
    1010863// conversions.wast:340
    1011 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1012 // FIXME: Implement non-trapping float to int conversions.
    1013 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x66\x66\x66\x66\x66\x66\xfe\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1.9]), 1)
     864run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x66\x66\x66\x66\x66\x66\xfe\x3f\x10\x00\x01\x41\x01\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1.9]), 1)
    1014865
    1015866// conversions.wast:341
    1016 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1017 // FIXME: Implement non-trapping float to int conversions.
    1018 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x10\x00\x01\x41\x02\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [2.]), 2)
     867run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x10\x00\x01\x41\x02\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [2.]), 2)
    1019868
    1020869// conversions.wast:342
    1021 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1022 // FIXME: Implement non-trapping float to int conversions.
    1023 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x41\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [2147483648.]), -2_147_483_648)
     870run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x41\x10\x00\x01\x41\x80\x80\x80\x80\x78\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [2147483648.]), -2_147_483_648)
    1024871
    1025872// conversions.wast:343
    1026 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1027 // FIXME: Implement non-trapping float to int conversions.
    1028 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\xe0\xff\xff\xff\xef\x41\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [4294967295.]), -1)
     873run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\xe0\xff\xff\xff\xef\x41\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [4294967295.]), -1)
    1029874
    1030875// conversions.wast:344
    1031 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1032 // FIXME: Implement non-trapping float to int conversions.
    1033 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xcd\xcc\xcc\xcc\xcc\xcc\xec\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-0.9]), 0)
     876run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xcd\xcc\xcc\xcc\xcc\xcc\xec\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-0.9]), 0)
    1034877
    1035878// conversions.wast:345
    1036 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1037 // FIXME: Implement non-trapping float to int conversions.
    1038 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-1.]), 0)
     879run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-1.]), 0)
    1039880
    1040881// conversions.wast:346
    1041 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1042 // FIXME: Implement non-trapping float to int conversions.
    1043 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa3\x80\x80\x80\x00\x01\x9d\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x84\xd7\x97\x41\x10\x00\x01\x41\x80\xc2\xd7\x2f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [100000000.]), 100_000_000)
     882run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa3\x80\x80\x80\x00\x01\x9d\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x84\xd7\x97\x41\x10\x00\x01\x41\x80\xc2\xd7\x2f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [100000000.]), 100_000_000)
    1044883
    1045884// conversions.wast:347
    1046 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1047 // FIXME: Implement non-trapping float to int conversions.
    1048 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x41\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [4294967296.]), -1)
     885run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x41\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [4294967296.]), -1)
    1049886
    1050887// conversions.wast:348
    1051 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1052 // FIXME: Implement non-trapping float to int conversions.
    1053 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-1.]), 0)
     888run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-1.]), 0)
    1054889
    1055890// conversions.wast:349
    1056 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1057 // FIXME: Implement non-trapping float to int conversions.
    1058 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x80\xe0\x37\x79\xc3\x41\x43\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1e+16]), -1)
     891run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x80\xe0\x37\x79\xc3\x41\x43\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1e+16]), -1)
    1059892
    1060893// conversions.wast:350
    1061 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1062 // FIXME: Implement non-trapping float to int conversions.
    1063 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xea\x8c\xa0\x39\x59\x3e\x29\x46\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1e+30]), -1)
     894run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xea\x8c\xa0\x39\x59\x3e\x29\x46\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [1e+30]), -1)
    1064895
    1065896// conversions.wast:351
    1066 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1067 // FIXME: Implement non-trapping float to int conversions.
    1068 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x43\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [9.22337203685e+18]), -1)
     897run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x43\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [9.22337203685e+18]), -1)
    1069898
    1070899// conversions.wast:352
    1071 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1072 // FIXME: Implement non-trapping float to int conversions.
    1073 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [Infinity]), -1)
     900run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x01\x41\x7f\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [Infinity]), -1)
    1074901
    1075902// conversions.wast:353
    1076 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1077 // FIXME: Implement non-trapping float to int conversions.
    1078 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-Infinity]), 0)
     903run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [-Infinity]), 0)
    1079904
    1080905// conversions.wast:354
    1081 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1082 // FIXME: Implement non-trapping float to int conversions.
    1083 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [NaN]), 0)
     906run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [NaN]), 0)
    1084907
    1085908// conversions.wast:355
    1086 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1087 // FIXME: Implement non-trapping float to int conversions.
    1088 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [NaN]), 0)
     909run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [NaN]), 0)
    1089910
    1090911// conversions.wast:356
    1091 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1092 // FIXME: Implement non-trapping float to int conversions.
    1093 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [NaN]), 0)
     912run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [NaN]), 0)
    1094913
    1095914// conversions.wast:357
    1096 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1097 // FIXME: Implement non-trapping float to int conversions.
    1098 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [NaN]), 0)
     915run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7f\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\xff\x10\x00\x01\x41\x00\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i32.trunc_sat_f64_u", [NaN]), 0)
    1099916
    1100917// conversions.wast:359
    1101 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1102 // FIXME: Implement non-trapping float to int conversions.
    1103 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [0.]), int64("0"))
     918run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [0.]), int64("0"))
    1104919
    1105920// conversions.wast:360
    1106 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1107 // FIXME: Implement non-trapping float to int conversions.
    1108 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-0.]), int64("0"))
     921run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-0.]), int64("0"))
    1109922
    1110923// conversions.wast:361
    1111 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1112 // FIXME: Implement non-trapping float to int conversions.
    1113 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [1.40129846432e-45]), int64("0"))
     924run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [1.40129846432e-45]), int64("0"))
    1114925
    1115926// conversions.wast:362
    1116 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1117 // FIXME: Implement non-trapping float to int conversions.
    1118 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.40129846432e-45]), int64("0"))
     927run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.40129846432e-45]), int64("0"))
    1119928
    1120929// conversions.wast:363
    1121 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1122 // FIXME: Implement non-trapping float to int conversions.
    1123 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [1.]), int64("1"))
     930run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [1.]), int64("1"))
    1124931
    1125932// conversions.wast:364
    1126 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1127 // FIXME: Implement non-trapping float to int conversions.
    1128 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [1.10000002384]), int64("1"))
     933run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [1.10000002384]), int64("1"))
    1129934
    1130935// conversions.wast:365
    1131 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1132 // FIXME: Implement non-trapping float to int conversions.
    1133 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [1.5]), int64("1"))
     936run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [1.5]), int64("1"))
    1134937
    1135938// conversions.wast:366
    1136 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1137 // FIXME: Implement non-trapping float to int conversions.
    1138 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.]), int64("-1"))
     939run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.]), int64("-1"))
    1139940
    1140941// conversions.wast:367
    1141 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1142 // FIXME: Implement non-trapping float to int conversions.
    1143 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.10000002384]), int64("-1"))
     942run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.10000002384]), int64("-1"))
    1144943
    1145944// conversions.wast:368
    1146 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1147 // FIXME: Implement non-trapping float to int conversions.
    1148 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.5]), int64("-1"))
     945run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.5]), int64("-1"))
    1149946
    1150947// conversions.wast:369
    1151 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1152 // FIXME: Implement non-trapping float to int conversions.
    1153 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x33\x33\xf3\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.89999997616]), int64("-1"))
     948run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x33\x33\xf3\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-1.89999997616]), int64("-1"))
    1154949
    1155950// conversions.wast:370
    1156 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1157 // FIXME: Implement non-trapping float to int conversions.
    1158 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\xc0\x10\x00\x01\x42\x7e\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-2.]), int64("-2"))
     951run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\xc0\x10\x00\x01\x42\x7e\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-2.]), int64("-2"))
    1159952
    1160953// conversions.wast:371
    1161 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1162 // FIXME: Implement non-trapping float to int conversions.
    1163 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x4f\x10\x00\x01\x42\x80\x80\x80\x80\x10\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [4294967296.]), int64("4_294_967_296"))
     954run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x4f\x10\x00\x01\x42\x80\x80\x80\x80\x10\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [4294967296.]), int64("4_294_967_296"))
    1164955
    1165956// conversions.wast:372
    1166 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1167 // FIXME: Implement non-trapping float to int conversions.
    1168 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xcf\x10\x00\x01\x42\x80\x80\x80\x80\x70\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-4294967296.]), int64("-4_294_967_296"))
     957run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xcf\x10\x00\x01\x42\x80\x80\x80\x80\x70\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-4294967296.]), int64("-4_294_967_296"))
    1169958
    1170959// conversions.wast:373
    1171 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1172 // FIXME: Implement non-trapping float to int conversions.
    1173 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\xff\x5e\x10\x00\x01\x42\x80\x80\x80\x80\x80\xf0\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [9.2233714871e+18]), int64("9_223_371_487_098_961_920"))
     960run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\xff\x5e\x10\x00\x01\x42\x80\x80\x80\x80\x80\xf0\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [9.2233714871e+18]), int64("9_223_371_487_098_961_920"))
    1174961
    1175962// conversions.wast:374
    1176 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1177 // FIXME: Implement non-trapping float to int conversions.
    1178 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\xdf\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-9.22337203685e+18]), int64("-9_223_372_036_854_775_808"))
     963run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\xdf\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-9.22337203685e+18]), int64("-9_223_372_036_854_775_808"))
    1179964
    1180965// conversions.wast:375
    1181 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1182 // FIXME: Implement non-trapping float to int conversions.
    1183 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x5f\x10\x00\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [9.22337203685e+18]), int64("9_223_372_036_854_775_807"))
     966run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x5f\x10\x00\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [9.22337203685e+18]), int64("9_223_372_036_854_775_807"))
    1184967
    1185968// conversions.wast:376
    1186 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1187 // FIXME: Implement non-trapping float to int conversions.
    1188 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\xdf\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-9.22337313637e+18]), int64("-9_223_372_036_854_775_808"))
     969run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\xdf\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-9.22337313637e+18]), int64("-9_223_372_036_854_775_808"))
    1189970
    1190971// conversions.wast:377
    1191 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1192 // FIXME: Implement non-trapping float to int conversions.
    1193 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x7f\x10\x00\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [Infinity]), int64("9_223_372_036_854_775_807"))
     972run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x7f\x10\x00\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [Infinity]), int64("9_223_372_036_854_775_807"))
    1194973
    1195974// conversions.wast:378
    1196 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1197 // FIXME: Implement non-trapping float to int conversions.
    1198 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xff\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-Infinity]), int64("-9_223_372_036_854_775_808"))
     975run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa5\x80\x80\x80\x00\x01\x9f\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xff\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [-Infinity]), int64("-9_223_372_036_854_775_808"))
    1199976
    1200977// conversions.wast:379
    1201 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1202 // FIXME: Implement non-trapping float to int conversions.
    1203 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [NaN]), int64("0"))
     978run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [NaN]), int64("0"))
    1204979
    1205980// conversions.wast:380
    1206 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1207 // FIXME: Implement non-trapping float to int conversions.
    1208 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [NaN]), int64("0"))
     981run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [NaN]), int64("0"))
    1209982
    1210983// conversions.wast:381
    1211 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1212 // FIXME: Implement non-trapping float to int conversions.
    1213 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [NaN]), int64("0"))
     984run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [NaN]), int64("0"))
    1214985
    1215986// conversions.wast:382
    1216 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1217 // FIXME: Implement non-trapping float to int conversions.
    1218 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [NaN]), int64("0"))
     987run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_s", [NaN]), int64("0"))
    1219988
    1220989// conversions.wast:384
    1221 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1222 // FIXME: Implement non-trapping float to int conversions.
    1223 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [0.]), int64("0"))
     990run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [0.]), int64("0"))
    1224991
    1225992// conversions.wast:385
    1226 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1227 // FIXME: Implement non-trapping float to int conversions.
    1228 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-0.]), int64("0"))
     993run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-0.]), int64("0"))
    1229994
    1230995// conversions.wast:386
    1231 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1232 // FIXME: Implement non-trapping float to int conversions.
    1233 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.40129846432e-45]), int64("0"))
     996run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.40129846432e-45]), int64("0"))
    1234997
    1235998// conversions.wast:387
    1236 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1237 // FIXME: Implement non-trapping float to int conversions.
    1238 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-1.40129846432e-45]), int64("0"))
     999run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x01\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-1.40129846432e-45]), int64("0"))
    12391000
    12401001// conversions.wast:388
    1241 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1242 // FIXME: Implement non-trapping float to int conversions.
    1243 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.]), int64("1"))
     1002run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.]), int64("1"))
    12441003
    12451004// conversions.wast:389
    1246 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1247 // FIXME: Implement non-trapping float to int conversions.
    1248 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.10000002384]), int64("1"))
     1005run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.10000002384]), int64("1"))
    12491006
    12501007// conversions.wast:390
    1251 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1252 // FIXME: Implement non-trapping float to int conversions.
    1253 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.5]), int64("1"))
     1008run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.5]), int64("1"))
    12541009
    12551010// conversions.wast:391
    1256 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1257 // FIXME: Implement non-trapping float to int conversions.
    1258 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x4f\x10\x00\x01\x42\x80\x80\x80\x80\x10\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [4294967296.]), int64("4_294_967_296"))
     1011run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x4f\x10\x00\x01\x42\x80\x80\x80\x80\x10\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [4294967296.]), int64("4_294_967_296"))
    12591012
    12601013// conversions.wast:392
    1261 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1262 // FIXME: Implement non-trapping float to int conversions.
    1263 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa1\x80\x80\x80\x00\x01\x9b\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\x7f\x5f\x10\x00\x01\x42\x80\x80\x80\x80\x80\x60\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.84467429742e+19]), int64("-1_099_511_627_776"))
     1014run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa1\x80\x80\x80\x00\x01\x9b\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\x7f\x5f\x10\x00\x01\x42\x80\x80\x80\x80\x80\x60\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.84467429742e+19]), int64("-1_099_511_627_776"))
    12641015
    12651016// conversions.wast:393
    1266 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1267 // FIXME: Implement non-trapping float to int conversions.
    1268 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x66\x66\x66\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-0.899999976158]), int64("0"))
     1017run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x66\x66\x66\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-0.899999976158]), int64("0"))
    12691018
    12701019// conversions.wast:394
    1271 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1272 // FIXME: Implement non-trapping float to int conversions.
    1273 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\x7f\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-0.999999940395]), int64("0"))
     1020run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\xff\xff\x7f\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-0.999999940395]), int64("0"))
    12741021
    12751022// conversions.wast:395
    1276 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1277 // FIXME: Implement non-trapping float to int conversions.
    1278 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x5f\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.84467440737e+19]), int64("-1"))
     1023run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x5f\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [1.84467440737e+19]), int64("-1"))
    12791024
    12801025// conversions.wast:396
    1281 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1282 // FIXME: Implement non-trapping float to int conversions.
    1283 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-1.]), int64("0"))
     1026run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-1.]), int64("0"))
    12841027
    12851028// conversions.wast:397
    1286 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1287 // FIXME: Implement non-trapping float to int conversions.
    1288 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x7f\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [Infinity]), int64("-1"))
     1029run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\x7f\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [Infinity]), int64("-1"))
    12891030
    12901031// conversions.wast:398
    1291 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1292 // FIXME: Implement non-trapping float to int conversions.
    1293 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-Infinity]), int64("0"))
     1032run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\x80\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [-Infinity]), int64("0"))
    12941033
    12951034// conversions.wast:399
    1296 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1297 // FIXME: Implement non-trapping float to int conversions.
    1298 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [NaN]), int64("0"))
     1035run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [NaN]), int64("0"))
    12991036
    13001037// conversions.wast:400
    1301 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1302 // FIXME: Implement non-trapping float to int conversions.
    1303 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [NaN]), int64("0"))
     1038run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [NaN]), int64("0"))
    13041039
    13051040// conversions.wast:401
    1306 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1307 // FIXME: Implement non-trapping float to int conversions.
    1308 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [NaN]), int64("0"))
     1041run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [NaN]), int64("0"))
    13091042
    13101043// conversions.wast:402
    1311 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1312 // FIXME: Implement non-trapping float to int conversions.
    1313 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [NaN]), int64("0"))
     1044run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7d\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x33\x32\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\x9c\x80\x80\x80\x00\x01\x96\x80\x80\x80\x00\x00\x02\x40\x43\x00\x00\xa0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f32_u", [NaN]), int64("0"))
    13141045
    13151046// conversions.wast:404
    1316 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1317 // FIXME: Implement non-trapping float to int conversions.
    1318 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [0.]), int64("0"))
     1047run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [0.]), int64("0"))
    13191048
    13201049// conversions.wast:405
    1321 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1322 // FIXME: Implement non-trapping float to int conversions.
    1323 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-0.]), int64("0"))
     1050run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-0.]), int64("0"))
    13241051
    13251052// conversions.wast:406
    1326 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1327 // FIXME: Implement non-trapping float to int conversions.
    1328 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [4.94065645841e-324]), int64("0"))
     1053run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [4.94065645841e-324]), int64("0"))
    13291054
    13301055// conversions.wast:407
    1331 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1332 // FIXME: Implement non-trapping float to int conversions.
    1333 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-4.94065645841e-324]), int64("0"))
     1056run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-4.94065645841e-324]), int64("0"))
    13341057
    13351058// conversions.wast:408
    1336 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1337 // FIXME: Implement non-trapping float to int conversions.
    1338 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [1.]), int64("1"))
     1059run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [1.]), int64("1"))
    13391060
    13401061// conversions.wast:409
    1341 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1342 // FIXME: Implement non-trapping float to int conversions.
    1343 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [1.1]), int64("1"))
     1062run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [1.1]), int64("1"))
    13441063
    13451064// conversions.wast:410
    1346 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1347 // FIXME: Implement non-trapping float to int conversions.
    1348 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [1.5]), int64("1"))
     1065run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [1.5]), int64("1"))
    13491066
    13501067// conversions.wast:411
    1351 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1352 // FIXME: Implement non-trapping float to int conversions.
    1353 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-1.]), int64("-1"))
     1068run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-1.]), int64("-1"))
    13541069
    13551070// conversions.wast:412
    1356 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1357 // FIXME: Implement non-trapping float to int conversions.
    1358 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-1.1]), int64("-1"))
     1071run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-1.1]), int64("-1"))
    13591072
    13601073// conversions.wast:413
    1361 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1362 // FIXME: Implement non-trapping float to int conversions.
    1363 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-1.5]), int64("-1"))
     1074run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-1.5]), int64("-1"))
    13641075
    13651076// conversions.wast:414
    1366 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1367 // FIXME: Implement non-trapping float to int conversions.
    1368 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x66\x66\x66\x66\x66\x66\xfe\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-1.9]), int64("-1"))
     1077run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x66\x66\x66\x66\x66\x66\xfe\xbf\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-1.9]), int64("-1"))
    13691078
    13701079// conversions.wast:415
    1371 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1372 // FIXME: Implement non-trapping float to int conversions.
    1373 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\xc0\x10\x00\x01\x42\x7e\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-2.]), int64("-2"))
     1080run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\xc0\x10\x00\x01\x42\x7e\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-2.]), int64("-2"))
    13741081
    13751082// conversions.wast:416
    1376 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1377 // FIXME: Implement non-trapping float to int conversions.
    1378 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x41\x10\x00\x01\x42\x80\x80\x80\x80\x10\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [4294967296.]), int64("4_294_967_296"))
     1083run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x41\x10\x00\x01\x42\x80\x80\x80\x80\x10\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [4294967296.]), int64("4_294_967_296"))
    13791084
    13801085// conversions.wast:417
    1381 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1382 // FIXME: Implement non-trapping float to int conversions.
    1383 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xc1\x10\x00\x01\x42\x80\x80\x80\x80\x70\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-4294967296.]), int64("-4_294_967_296"))
     1086run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xc1\x10\x00\x01\x42\x80\x80\x80\x80\x70\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-4294967296.]), int64("-4_294_967_296"))
    13841087
    13851088// conversions.wast:418
    1386 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1387 // FIXME: Implement non-trapping float to int conversions.
    1388 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xdf\x43\x10\x00\x01\x42\x80\xf8\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [9.22337203685e+18]), int64("9_223_372_036_854_774_784"))
     1089run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xdf\x43\x10\x00\x01\x42\x80\xf8\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [9.22337203685e+18]), int64("9_223_372_036_854_774_784"))
    13891090
    13901091// conversions.wast:419
    1391 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1392 // FIXME: Implement non-trapping float to int conversions.
    1393 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xc3\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-9.22337203685e+18]), int64("-9_223_372_036_854_775_808"))
     1092run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xc3\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-9.22337203685e+18]), int64("-9_223_372_036_854_775_808"))
    13941093
    13951094// conversions.wast:420
    1396 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1397 // FIXME: Implement non-trapping float to int conversions.
    1398 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x43\x10\x00\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [9.22337203685e+18]), int64("9_223_372_036_854_775_807"))
     1095run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x43\x10\x00\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [9.22337203685e+18]), int64("9_223_372_036_854_775_807"))
    13991096
    14001097// conversions.wast:421
    1401 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1402 // FIXME: Implement non-trapping float to int conversions.
    1403 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\xe0\xc3\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-9.22337203685e+18]), int64("-9_223_372_036_854_775_808"))
     1098run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\xe0\xc3\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-9.22337203685e+18]), int64("-9_223_372_036_854_775_808"))
    14041099
    14051100// conversions.wast:422
    1406 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1407 // FIXME: Implement non-trapping float to int conversions.
    1408 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [Infinity]), int64("9_223_372_036_854_775_807"))
     1101run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [Infinity]), int64("9_223_372_036_854_775_807"))
    14091102
    14101103// conversions.wast:423
    1411 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1412 // FIXME: Implement non-trapping float to int conversions.
    1413 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-Infinity]), int64("-9_223_372_036_854_775_808"))
     1104run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [-Infinity]), int64("-9_223_372_036_854_775_808"))
    14141105
    14151106// conversions.wast:424
    1416 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1417 // FIXME: Implement non-trapping float to int conversions.
    1418 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [NaN]), int64("0"))
     1107run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [NaN]), int64("0"))
    14191108
    14201109// conversions.wast:425
    1421 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1422 // FIXME: Implement non-trapping float to int conversions.
    1423 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [NaN]), int64("0"))
     1110run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [NaN]), int64("0"))
    14241111
    14251112// conversions.wast:426
    1426 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1427 // FIXME: Implement non-trapping float to int conversions.
    1428 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [NaN]), int64("0"))
     1113run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [NaN]), int64("0"))
    14291114
    14301115// conversions.wast:427
    1431 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1432 // FIXME: Implement non-trapping float to int conversions.
    1433 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [NaN]), int64("0"))
     1116run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x73\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_s", [NaN]), int64("0"))
    14341117
    14351118// conversions.wast:429
    1436 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1437 // FIXME: Implement non-trapping float to int conversions.
    1438 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [0.]), int64("0"))
     1119run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [0.]), int64("0"))
    14391120
    14401121// conversions.wast:430
    1441 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1442 // FIXME: Implement non-trapping float to int conversions.
    1443 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-0.]), int64("0"))
     1122run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-0.]), int64("0"))
    14441123
    14451124// conversions.wast:431
    1446 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1447 // FIXME: Implement non-trapping float to int conversions.
    1448 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [4.94065645841e-324]), int64("0"))
     1125run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [4.94065645841e-324]), int64("0"))
    14491126
    14501127// conversions.wast:432
    1451 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1452 // FIXME: Implement non-trapping float to int conversions.
    1453 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-4.94065645841e-324]), int64("0"))
     1128run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-4.94065645841e-324]), int64("0"))
    14541129
    14551130// conversions.wast:433
    1456 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1457 // FIXME: Implement non-trapping float to int conversions.
    1458 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.]), int64("1"))
     1131run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.]), int64("1"))
    14591132
    14601133// conversions.wast:434
    1461 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1462 // FIXME: Implement non-trapping float to int conversions.
    1463 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.1]), int64("1"))
     1134run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.1]), int64("1"))
    14641135
    14651136// conversions.wast:435
    1466 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1467 // FIXME: Implement non-trapping float to int conversions.
    1468 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.5]), int64("1"))
     1137run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x00\x01\x42\x01\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.5]), int64("1"))
    14691138
    14701139// conversions.wast:436
    1471 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1472 // FIXME: Implement non-trapping float to int conversions.
    1473 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\xe0\xff\xff\xff\xef\x41\x10\x00\x01\x42\xff\xff\xff\xff\x0f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [4294967295.]), int64("4_294_967_295"))
     1140run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\xe0\xff\xff\xff\xef\x41\x10\x00\x01\x42\xff\xff\xff\xff\x0f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [4294967295.]), int64("4_294_967_295"))
    14741141
    14751142// conversions.wast:437
    1476 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1477 // FIXME: Implement non-trapping float to int conversions.
    1478 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x41\x10\x00\x01\x42\x80\x80\x80\x80\x10\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [4294967296.]), int64("4_294_967_296"))
     1143run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa4\x80\x80\x80\x00\x01\x9e\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x41\x10\x00\x01\x42\x80\x80\x80\x80\x10\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [4294967296.]), int64("4_294_967_296"))
    14791144
    14801145// conversions.wast:438
    1481 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1482 // FIXME: Implement non-trapping float to int conversions.
    1483 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa1\x80\x80\x80\x00\x01\x9b\x80\x80\x80\x00\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x43\x10\x00\x01\x42\x80\x70\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.84467440737e+19]), int64("-2_048"))
     1146run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa1\x80\x80\x80\x00\x01\x9b\x80\x80\x80\x00\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x43\x10\x00\x01\x42\x80\x70\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.84467440737e+19]), int64("-2_048"))
    14841147
    14851148// conversions.wast:439
    1486 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1487 // FIXME: Implement non-trapping float to int conversions.
    1488 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xcd\xcc\xcc\xcc\xcc\xcc\xec\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-0.9]), int64("0"))
     1149run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xcd\xcc\xcc\xcc\xcc\xcc\xec\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-0.9]), int64("0"))
    14891150
    14901151// conversions.wast:440
    1491 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1492 // FIXME: Implement non-trapping float to int conversions.
    1493 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-1.]), int64("0"))
     1152run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-1.]), int64("0"))
    14941153
    14951154// conversions.wast:441
    1496 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1497 // FIXME: Implement non-trapping float to int conversions.
    1498 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa3\x80\x80\x80\x00\x01\x9d\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x84\xd7\x97\x41\x10\x00\x01\x42\x80\xc2\xd7\x2f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [100000000.]), int64("100_000_000"))
     1155run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa3\x80\x80\x80\x00\x01\x9d\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x84\xd7\x97\x41\x10\x00\x01\x42\x80\xc2\xd7\x2f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [100000000.]), int64("100_000_000"))
    14991156
    15001157// conversions.wast:442
    1501 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1502 // FIXME: Implement non-trapping float to int conversions.
    1503 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa7\x80\x80\x80\x00\x01\xa1\x80\x80\x80\x00\x00\x02\x40\x44\x00\x80\xe0\x37\x79\xc3\x41\x43\x10\x00\x01\x42\x80\x80\x84\xfe\xa6\xde\xe1\x11\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1e+16]), int64("10_000_000_000_000_000"))
     1158run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa7\x80\x80\x80\x00\x01\xa1\x80\x80\x80\x00\x00\x02\x40\x44\x00\x80\xe0\x37\x79\xc3\x41\x43\x10\x00\x01\x42\x80\x80\x84\xfe\xa6\xde\xe1\x11\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1e+16]), int64("10_000_000_000_000_000"))
    15041159
    15051160// conversions.wast:443
    1506 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1507 // FIXME: Implement non-trapping float to int conversions.
    1508 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x43\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [9.22337203685e+18]), int64("-9_223_372_036_854_775_808"))
     1161run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa9\x80\x80\x80\x00\x01\xa3\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x43\x10\x00\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [9.22337203685e+18]), int64("-9_223_372_036_854_775_808"))
    15091162
    15101163// conversions.wast:444
    1511 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1512 // FIXME: Implement non-trapping float to int conversions.
    1513 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x43\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.84467440737e+19]), int64("-1"))
     1164run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x43\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [1.84467440737e+19]), int64("-1"))
    15141165
    15151166// conversions.wast:445
    1516 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1517 // FIXME: Implement non-trapping float to int conversions.
    1518 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-1.]), int64("0"))
     1167run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-1.]), int64("0"))
    15191168
    15201169// conversions.wast:446
    1521 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1522 // FIXME: Implement non-trapping float to int conversions.
    1523 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [Infinity]), int64("-1"))
     1170run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x01\x42\x7f\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [Infinity]), int64("-1"))
    15241171
    15251172// conversions.wast:447
    1526 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1527 // FIXME: Implement non-trapping float to int conversions.
    1528 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-Infinity]), int64("0"))
     1173run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [-Infinity]), int64("0"))
    15291174
    15301175// conversions.wast:448
    1531 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1532 // FIXME: Implement non-trapping float to int conversions.
    1533 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [NaN]), int64("0"))
     1176run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [NaN]), int64("0"))
    15341177
    15351178// conversions.wast:449
    1536 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1537 // FIXME: Implement non-trapping float to int conversions.
    1538 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [NaN]), int64("0"))
     1179run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [NaN]), int64("0"))
    15391180
    15401181// conversions.wast:450
    1541 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1542 // FIXME: Implement non-trapping float to int conversions.
    1543 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [NaN]), int64("0"))
     1182run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [NaN]), int64("0"))
    15441183
    15451184// conversions.wast:451
    1546 // https://bugs.webkit.org/show_bug.cgi?id=173471
    1547 // FIXME: Implement non-trapping float to int conversions.
    1548 // run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [NaN]), int64("0"))
     1185run(() => call(instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x89\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7c\x01\x7e\x02\x9a\x80\x80\x80\x00\x01\x02\x24\x31\x13\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x61\x74\x5f\x66\x36\x34\x5f\x75\x00\x01\x03\x82\x80\x80\x80\x00\x01\x00\x07\x87\x80\x80\x80\x00\x01\x03\x72\x75\x6e\x00\x01\x0a\xa0\x80\x80\x80\x00\x01\x9a\x80\x80\x80\x00\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\xff\x10\x00\x01\x42\x00\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b", exports("$1", $1)),  "run", []));  // assert_return(() => call($1, "i64.trunc_sat_f64_u", [NaN]), int64("0"))
    15491186
    15501187// conversions.wast:454
  • trunk/JSTests/wasm/wasm.json

    r270948 r272933  
    239239        "i64.extend32_s":      { "category": "conversion", "value": 196, "return": ["i64"],                          "parameter": ["i64"],                        "immediate": [], "b3op": "SExt32(Trunc(@0))"         },
    240240
     241        "i32.trunc_sat_f32_s": { "category": "conversion", "value": 252, "return": ["i32"], "parameter": ["f32"], "immediate": [], "extendedOp": 0 },
     242        "i32.trunc_sat_f32_u": { "category": "conversion", "value": 252, "return": ["i32"], "parameter": ["f32"], "immediate": [], "extendedOp": 1 },
     243        "i32.trunc_sat_f64_s": { "category": "conversion", "value": 252, "return": ["i32"], "parameter": ["f64"], "immediate": [], "extendedOp": 2 },
     244        "i32.trunc_sat_f64_u": { "category": "conversion", "value": 252, "return": ["i32"], "parameter": ["f64"], "immediate": [], "extendedOp": 3 },
     245        "i64.trunc_sat_f32_s": { "category": "conversion", "value": 252, "return": ["i64"], "parameter": ["f32"], "immediate": [], "extendedOp": 4 },
     246        "i64.trunc_sat_f32_u": { "category": "conversion", "value": 252, "return": ["i64"], "parameter": ["f32"], "immediate": [], "extendedOp": 5 },
     247        "i64.trunc_sat_f64_s": { "category": "conversion", "value": 252, "return": ["i64"], "parameter": ["f64"], "immediate": [], "extendedOp": 6 },
     248        "i64.trunc_sat_f64_u": { "category": "conversion", "value": 252, "return": ["i64"], "parameter": ["f64"], "immediate": [], "extendedOp": 7 },
     249
    241250        "memory.atomic.notify":       { "category": "atomic",     "value": 254, "return": ["i32"],      "parameter": ["addr", "i32"],          "immediate": [{"name": "flags",          "type": "varuint32"}, {"name": "offset",   "type": "varuint32"}], "extendedOp":  0 },
    242251        "memory.atomic.wait32":       { "category": "atomic",     "value": 254, "return": ["i32"],      "parameter": ["addr", "i32", "i64"],   "immediate": [{"name": "flags",          "type": "varuint32"}, {"name": "offset",   "type": "varuint32"}], "extendedOp":  1 },
  • trunk/Source/JavaScriptCore/ChangeLog

    r272922 r272933  
     12021-02-16  Yusuke Suzuki  <ysuzuki@apple.com> and Sergey Rubanov <chi187@gmail.com>
     2
     3        WebAssembly: implement non-trapping float to int conversion
     4        https://bugs.webkit.org/show_bug.cgi?id=173471
     5
     6        Reviewed by Tadeu Zagallo.
     7
     8        This patch implements trunc-saturated opcodes in Wasm. This does not trap, and instead it generates
     9        saturated-truncated integer results from floats.
     10
     11            1. If the input is NaN, then return 0.
     12            2. If the input is higher than the maximum value, then return the maximum value (e.g. INT_32MAX).
     13            3. If the input is lower than the minimum value, then return the minimum value (e.g. INT_32MIN).
     14
     15        These wasm opcodes are defined as two-byte opcodes. Currently, we do not have a mechanism to define
     16        this kind of opcodes automatically, so we manually define them. We will clean up in the future patch.
     17
     18        We rename ExtTableOpType to Ext1OpType since it is no longer limited to table opcodes.
     19
     20        * generator/Wasm.rb:
     21        * llint/WebAssembly.asm:
     22        * wasm/WasmAirIRGenerator.cpp:
     23        (JSC::Wasm::AirIRGenerator::truncSaturated):
     24        * wasm/WasmB3IRGenerator.cpp:
     25        (JSC::Wasm::B3IRGenerator::truncSaturated):
     26        * wasm/WasmFunctionParser.h:
     27        (JSC::Wasm::FunctionParser<Context>::truncSaturated):
     28        (JSC::Wasm::FunctionParser<Context>::parseExpression):
     29        (JSC::Wasm::FunctionParser<Context>::parseUnreachableExpression):
     30        * wasm/WasmLLIntGenerator.cpp:
     31        (JSC::Wasm::LLIntGenerator::truncSaturated):
     32        * wasm/generateWasm.py:
     33        (isNormal):
     34        * wasm/generateWasmOpsHeader.py:
     35        (opcodeWithTypesMacroizer):
     36        (saturatedTruncMacroizer):
     37        (saturatedTruncMacroizer.modifier):
     38        (Ext1OpType):
     39        (ExtTableOpType): Deleted.
     40        * wasm/wasm.json:
     41
    1422021-02-16  Yusuke Suzuki  <ysuzuki@apple.com>
    243
  • trunk/Source/JavaScriptCore/generator/Wasm.rb

    r252800 r272933  
    4040
    4141    def self.generate_llint_generator(section)
    42         opcodes = section.opcodes.select { |op| ["arithmetic", "comparison", "conversion"].include? op.extras["category"] }
     42        opcodes = section.opcodes.select { |op|
     43            if op.extras.has_key?("extendedOp")
     44                false
     45            else
     46                ["arithmetic", "comparison", "conversion"].include? op.extras["category"]
     47            end
     48        }
    4349        methods = opcodes.map do |op|
    4450            case op.args.size
  • trunk/Source/JavaScriptCore/llint/WebAssembly.asm

    r272823 r272933  
    13001300
    13011301wasmOp(i64_trunc_s_f32, WasmI64TruncSF32, macro (ctx)
    1302     mloadd(ctx, m_operand, ft0)
     1302    mloadf(ctx, m_operand, ft0)
    13031303
    13041304    move 0xdf000000, t0 # INT64_MIN
     
    13701370    throwException(OutOfBoundsTrunc)
    13711371end)
     1372
     1373wasmOp(i32_trunc_sat_f32_s, WasmI32TruncSatF32S, macro (ctx)
     1374    mloadf(ctx, m_operand, ft0)
     1375
     1376    move 0xcf000000, t0 # INT32_MIN (Note that INT32_MIN - 1.0 in float is the same as INT32_MIN in float).
     1377    fi2f t0, ft1
     1378    bfltun ft0, ft1, .outOfBoundsTruncSatMinOrNaN
     1379
     1380    move 0x4f000000, t0 # -INT32_MIN
     1381    fi2f t0, ft1
     1382    bfgtequn ft0, ft1, .outOfBoundsTruncSatMax
     1383
     1384    truncatef2is ft0, t0
     1385    returni(ctx, t0)
     1386
     1387.outOfBoundsTruncSatMinOrNaN:
     1388    bfeq ft0, ft0, .outOfBoundsTruncSatMin
     1389    move 0, t0
     1390    returni(ctx, t0)
     1391
     1392.outOfBoundsTruncSatMax:
     1393    move (constexpr INT32_MAX), t0
     1394    returni(ctx, t0)
     1395
     1396.outOfBoundsTruncSatMin:
     1397    move (constexpr INT32_MIN), t0
     1398    returni(ctx, t0)
     1399end)
     1400
     1401wasmOp(i32_trunc_sat_f64_s, WasmI32TruncSatF64S, macro (ctx)
     1402    mloadd(ctx, m_operand, ft0)
     1403
     1404    move 0xc1e0000000200000, t0 # INT32_MIN - 1.0
     1405    fq2d t0, ft1
     1406    bdltequn ft0, ft1, .outOfBoundsTruncSatMinOrNaN
     1407
     1408    move 0x41e0000000000000, t0 # -INT32_MIN
     1409    fq2d t0, ft1
     1410    bdgtequn ft0, ft1, .outOfBoundsTruncSatMax
     1411
     1412    truncated2is ft0, t0
     1413    returni(ctx, t0)
     1414
     1415.outOfBoundsTruncSatMinOrNaN:
     1416    bdeq ft0, ft0, .outOfBoundsTruncSatMin
     1417    move 0, t0
     1418    returni(ctx, t0)
     1419
     1420.outOfBoundsTruncSatMax:
     1421    move (constexpr INT32_MAX), t0
     1422    returni(ctx, t0)
     1423
     1424.outOfBoundsTruncSatMin:
     1425    move (constexpr INT32_MIN), t0
     1426    returni(ctx, t0)
     1427end)
     1428
     1429wasmOp(i32_trunc_sat_f32_u, WasmI32TruncSatF32U, macro (ctx)
     1430    mloadf(ctx, m_operand, ft0)
     1431
     1432    move 0xbf800000, t0 # -1.0
     1433    fi2f t0, ft1
     1434    bfltequn ft0, ft1, .outOfBoundsTruncSatMin
     1435
     1436    move 0x4f800000, t0 # INT32_MIN * -2.0
     1437    fi2f t0, ft1
     1438    bfgtequn ft0, ft1, .outOfBoundsTruncSatMax
     1439
     1440    truncatef2i ft0, t0
     1441    returni(ctx, t0)
     1442
     1443.outOfBoundsTruncSatMin:
     1444    move 0, t0
     1445    returni(ctx, t0)
     1446
     1447.outOfBoundsTruncSatMax:
     1448    move (constexpr UINT32_MAX), t0
     1449    returni(ctx, t0)
     1450end)
     1451
     1452wasmOp(i32_trunc_sat_f64_u, WasmI32TruncSatF64U, macro (ctx)
     1453    mloadd(ctx, m_operand, ft0)
     1454
     1455    move 0xbff0000000000000, t0 # -1.0
     1456    fq2d t0, ft1
     1457    bdltequn ft0, ft1, .outOfBoundsTruncSatMin
     1458
     1459    move 0x41f0000000000000, t0 # INT32_MIN * -2.0
     1460    fq2d t0, ft1
     1461    bdgtequn ft0, ft1, .outOfBoundsTruncSatMax
     1462
     1463    truncated2i ft0, t0
     1464    returni(ctx, t0)
     1465
     1466.outOfBoundsTruncSatMin:
     1467    move 0, t0
     1468    returni(ctx, t0)
     1469
     1470.outOfBoundsTruncSatMax:
     1471    move (constexpr UINT32_MAX), t0
     1472    returni(ctx, t0)
     1473end)
     1474
     1475wasmOp(i64_trunc_sat_f32_s, WasmI64TruncSatF32S, macro (ctx)
     1476    mloadf(ctx, m_operand, ft0)
     1477
     1478    move 0xdf000000, t0 # INT64_MIN
     1479    fi2f t0, ft1
     1480    bfltun ft0, ft1, .outOfBoundsTruncSatMinOrNaN
     1481
     1482    move 0x5f000000, t0 # -INT64_MIN
     1483    fi2f t0, ft1
     1484    bfgtequn ft0, ft1, .outOfBoundsTruncSatMax
     1485
     1486    truncatef2qs ft0, t0
     1487    returnq(ctx, t0)
     1488
     1489.outOfBoundsTruncSatMinOrNaN:
     1490    bfeq ft0, ft0, .outOfBoundsTruncSatMin
     1491    move 0, t0
     1492    returnq(ctx, t0)
     1493
     1494.outOfBoundsTruncSatMax:
     1495    move (constexpr INT64_MAX), t0
     1496    returnq(ctx, t0)
     1497
     1498.outOfBoundsTruncSatMin:
     1499    move (constexpr INT64_MIN), t0
     1500    returnq(ctx, t0)
     1501end)
     1502
     1503wasmOp(i64_trunc_sat_f64_s, WasmI64TruncSatF64S, macro (ctx)
     1504    mloadd(ctx, m_operand, ft0)
     1505
     1506    move 0xc3e0000000000000, t0 # INT64_MIN
     1507    fq2d t0, ft1
     1508    bdltun ft0, ft1, .outOfBoundsTruncSatMinOrNaN
     1509
     1510    move 0x43e0000000000000, t0 # -INT64_MIN
     1511    fq2d t0, ft1
     1512    bdgtequn ft0, ft1, .outOfBoundsTruncSatMax
     1513
     1514    truncated2qs ft0, t0
     1515    returnq(ctx, t0)
     1516
     1517.outOfBoundsTruncSatMinOrNaN:
     1518    bdeq ft0, ft0, .outOfBoundsTruncSatMin
     1519    move 0, t0
     1520    returnq(ctx, t0)
     1521
     1522.outOfBoundsTruncSatMax:
     1523    move (constexpr INT64_MAX), t0
     1524    returnq(ctx, t0)
     1525
     1526.outOfBoundsTruncSatMin:
     1527    move (constexpr INT64_MIN), t0
     1528    returnq(ctx, t0)
     1529end)
     1530
     1531wasmOp(i64_trunc_sat_f32_u, WasmI64TruncSatF32U, macro (ctx)
     1532    mloadf(ctx, m_operand, ft0)
     1533
     1534    move 0xbf800000, t0 # -1.0
     1535    fi2f t0, ft1
     1536    bfltequn ft0, ft1, .outOfBoundsTruncSatMin
     1537
     1538    move 0x5f800000, t0 # INT64_MIN * -2.0
     1539    fi2f t0, ft1
     1540    bfgtequn ft0, ft1, .outOfBoundsTruncSatMax
     1541
     1542    truncatef2q ft0, t0
     1543    returnq(ctx, t0)
     1544
     1545.outOfBoundsTruncSatMin:
     1546    move 0, t0
     1547    returnq(ctx, t0)
     1548
     1549.outOfBoundsTruncSatMax:
     1550    move (constexpr UINT64_MAX), t0
     1551    returnq(ctx, t0)
     1552end)
     1553
     1554wasmOp(i64_trunc_sat_f64_u, WasmI64TruncSatF64U, macro (ctx)
     1555    mloadd(ctx, m_operand, ft0)
     1556
     1557    move 0xbff0000000000000, t0 # -1.0
     1558    fq2d t0, ft1
     1559    bdltequn ft0, ft1, .outOfBoundsTruncSatMin
     1560
     1561    move 0x43f0000000000000, t0 # INT64_MIN * -2.0
     1562    fq2d t0, ft1
     1563    bdgtequn ft0, ft1, .outOfBoundsTruncSatMax
     1564
     1565    truncated2q ft0, t0
     1566    returnq(ctx, t0)
     1567
     1568.outOfBoundsTruncSatMin:
     1569    move 0, t0
     1570    returnq(ctx, t0)
     1571
     1572.outOfBoundsTruncSatMax:
     1573    move (constexpr UINT64_MAX), t0
     1574    returnq(ctx, t0)
     1575end)
     1576
    13721577
    13731578wasmOp(f32_convert_u_i64, WasmF32ConvertUI64, macro (ctx)
  • trunk/Source/JavaScriptCore/wasm/WasmAirIRGenerator.cpp

    r271775 r272933  
    295295    PartialResult WARN_UNUSED_RETURN atomicNotify(ExtAtomicOpType, ExpressionType pointer, ExpressionType value, ExpressionType& result, uint32_t offset);
    296296    PartialResult WARN_UNUSED_RETURN atomicFence(ExtAtomicOpType, uint8_t flags);
     297
     298    // Saturated truncation.
     299    PartialResult WARN_UNUSED_RETURN truncSaturated(Ext1OpType, ExpressionType operand, ExpressionType& result, Type returnType, Type operandType);
    297300
    298301    // Basic operators
     
    25762579}
    25772580
     2581auto AirIRGenerator::truncSaturated(Ext1OpType op, ExpressionType arg, ExpressionType& result, Type returnType, Type operandType) -> PartialResult
     2582{
     2583    TypedTmp maxFloat;
     2584    TypedTmp minFloat;
     2585    TypedTmp signBitConstant;
     2586    bool requiresMacroScratchRegisters = false;
     2587    switch (op) {
     2588    case Ext1OpType::I32TruncSatF32S:
     2589        maxFloat = addConstant(Type::F32, bitwise_cast<uint32_t>(-static_cast<float>(std::numeric_limits<int32_t>::min())));
     2590        minFloat = addConstant(Type::F32, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<int32_t>::min())));
     2591        break;
     2592    case Ext1OpType::I32TruncSatF32U:
     2593        maxFloat = addConstant(Type::F32, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<int32_t>::min()) * static_cast<float>(-2.0)));
     2594        minFloat = addConstant(Type::F32, bitwise_cast<uint32_t>(static_cast<float>(-1.0)));
     2595        break;
     2596    case Ext1OpType::I32TruncSatF64S:
     2597        maxFloat = addConstant(Type::F64, bitwise_cast<uint64_t>(-static_cast<double>(std::numeric_limits<int32_t>::min())));
     2598        minFloat = addConstant(Type::F64, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<int32_t>::min()) - 1.0));
     2599        break;
     2600    case Ext1OpType::I32TruncSatF64U:
     2601        maxFloat = addConstant(Type::F64, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<int32_t>::min()) * -2.0));
     2602        minFloat = addConstant(Type::F64, bitwise_cast<uint64_t>(-1.0));
     2603        break;
     2604    case Ext1OpType::I64TruncSatF32S:
     2605        maxFloat = addConstant(Type::F32, bitwise_cast<uint32_t>(-static_cast<float>(std::numeric_limits<int64_t>::min())));
     2606        minFloat = addConstant(Type::F32, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<int64_t>::min())));
     2607        break;
     2608    case Ext1OpType::I64TruncSatF32U:
     2609        maxFloat = addConstant(Type::F32, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<int64_t>::min()) * static_cast<float>(-2.0)));
     2610        minFloat = addConstant(Type::F32, bitwise_cast<uint32_t>(static_cast<float>(-1.0)));
     2611        if (isX86())
     2612            signBitConstant = addConstant(Type::F32, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<uint64_t>::max() - std::numeric_limits<int64_t>::max())));
     2613        requiresMacroScratchRegisters = true;
     2614        break;
     2615    case Ext1OpType::I64TruncSatF64S:
     2616        maxFloat = addConstant(Type::F64, bitwise_cast<uint64_t>(-static_cast<double>(std::numeric_limits<int64_t>::min())));
     2617        minFloat = addConstant(Type::F64, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<int64_t>::min())));
     2618        break;
     2619    case Ext1OpType::I64TruncSatF64U:
     2620        maxFloat = addConstant(Type::F64, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<int64_t>::min()) * -2.0));
     2621        minFloat = addConstant(Type::F64, bitwise_cast<uint64_t>(-1.0));
     2622        if (isX86())
     2623            signBitConstant = addConstant(Type::F64, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<uint64_t>::max() - std::numeric_limits<int64_t>::max())));
     2624        requiresMacroScratchRegisters = true;
     2625        break;
     2626    default:
     2627        RELEASE_ASSERT_NOT_REACHED();
     2628        break;
     2629    }
     2630
     2631    uint64_t minResult = 0;
     2632    uint64_t maxResult = 0;
     2633    switch (op) {
     2634    case Ext1OpType::I32TruncSatF32S:
     2635    case Ext1OpType::I32TruncSatF64S:
     2636        maxResult = bitwise_cast<uint32_t>(INT32_MAX);
     2637        minResult = bitwise_cast<uint32_t>(INT32_MIN);
     2638        break;
     2639    case Ext1OpType::I32TruncSatF32U:
     2640    case Ext1OpType::I32TruncSatF64U:
     2641        maxResult = bitwise_cast<uint32_t>(UINT32_MAX);
     2642        minResult = bitwise_cast<uint32_t>(0U);
     2643        break;
     2644    case Ext1OpType::I64TruncSatF32S:
     2645    case Ext1OpType::I64TruncSatF64S:
     2646        maxResult = bitwise_cast<uint64_t>(INT64_MAX);
     2647        minResult = bitwise_cast<uint64_t>(INT64_MIN);
     2648        break;
     2649    case Ext1OpType::I64TruncSatF32U:
     2650    case Ext1OpType::I64TruncSatF64U:
     2651        maxResult = bitwise_cast<uint64_t>(UINT64_MAX);
     2652        minResult = bitwise_cast<uint64_t>(0ULL);
     2653        break;
     2654    default:
     2655        RELEASE_ASSERT_NOT_REACHED();
     2656        break;
     2657    }
     2658
     2659    result = tmpForType(returnType);
     2660
     2661    BasicBlock* minCase = m_code.addBlock();
     2662    BasicBlock* maxCheckCase = m_code.addBlock();
     2663    BasicBlock* maxCase = m_code.addBlock();
     2664    BasicBlock* inBoundsCase = m_code.addBlock();
     2665    BasicBlock* continuation = m_code.addBlock();
     2666
     2667    auto branchOp = operandType == Type::F32 ? BranchFloat : BranchDouble;
     2668    append(m_currentBlock, branchOp, Arg::doubleCond(MacroAssembler::DoubleLessThanOrEqualOrUnordered), arg, minFloat);
     2669    m_currentBlock->setSuccessors(minCase, maxCheckCase);
     2670
     2671    append(maxCheckCase, branchOp, Arg::doubleCond(MacroAssembler::DoubleGreaterThanOrEqualOrUnordered), arg, maxFloat);
     2672    maxCheckCase->setSuccessors(maxCase, inBoundsCase);
     2673
     2674    if (!minResult) {
     2675        append(minCase, Move, Arg::bigImm(minResult), result);
     2676        append(minCase, Jump);
     2677        minCase->setSuccessors(continuation);
     2678    } else {
     2679        BasicBlock* minMaterializeCase = m_code.addBlock();
     2680        BasicBlock* nanCase = m_code.addBlock();
     2681        append(minCase, branchOp, Arg::doubleCond(MacroAssembler::DoubleEqualAndOrdered), arg, arg);
     2682        minCase->setSuccessors(minMaterializeCase, nanCase);
     2683
     2684        append(minMaterializeCase, Move, Arg::bigImm(minResult), result);
     2685        append(minMaterializeCase, Jump);
     2686        minMaterializeCase->setSuccessors(continuation);
     2687
     2688        append(nanCase, Move, Arg::bigImm(0), result);
     2689        append(nanCase, Jump);
     2690        nanCase->setSuccessors(continuation);
     2691    }
     2692
     2693    append(maxCase, Move, Arg::bigImm(maxResult), result);
     2694    append(maxCase, Jump);
     2695    maxCase->setSuccessors(continuation);
     2696
     2697    Vector<ConstrainedTmp, 2> args;
     2698    auto* patchpoint = addPatchpoint(toB3Type(returnType));
     2699    patchpoint->effects = B3::Effects::none();
     2700    args.append(arg);
     2701    if (requiresMacroScratchRegisters) {
     2702        patchpoint->clobber(RegisterSet::macroScratchRegisters());
     2703        if (isX86()) {
     2704            args.append(signBitConstant);
     2705            patchpoint->numFPScratchRegisters = 1;
     2706        }
     2707    }
     2708
     2709    patchpoint->effects = B3::Effects::none();
     2710    patchpoint->setGenerator([=] (CCallHelpers& jit, const B3::StackmapGenerationParams& params) {
     2711        switch (op) {
     2712        case Ext1OpType::I32TruncSatF32S:
     2713            jit.truncateFloatToInt32(params[1].fpr(), params[0].gpr());
     2714            break;
     2715        case Ext1OpType::I32TruncSatF32U:
     2716            jit.truncateFloatToUint32(params[1].fpr(), params[0].gpr());
     2717            break;
     2718        case Ext1OpType::I32TruncSatF64S:
     2719            jit.truncateDoubleToInt32(params[1].fpr(), params[0].gpr());
     2720            break;
     2721        case Ext1OpType::I32TruncSatF64U:
     2722            jit.truncateDoubleToUint32(params[1].fpr(), params[0].gpr());
     2723            break;
     2724        case Ext1OpType::I64TruncSatF32S:
     2725            jit.truncateFloatToInt64(params[1].fpr(), params[0].gpr());
     2726            break;
     2727        case Ext1OpType::I64TruncSatF32U: {
     2728            AllowMacroScratchRegisterUsage allowScratch(jit);
     2729            ASSERT(requiresMacroScratchRegisters);
     2730            FPRReg scratch = InvalidFPRReg;
     2731            FPRReg constant = InvalidFPRReg;
     2732            if (isX86()) {
     2733                scratch = params.fpScratch(0);
     2734                constant = params[2].fpr();
     2735            }
     2736            jit.truncateFloatToUint64(params[1].fpr(), params[0].gpr(), scratch, constant);
     2737            break;
     2738        }
     2739        case Ext1OpType::I64TruncSatF64S:
     2740            jit.truncateDoubleToInt64(params[1].fpr(), params[0].gpr());
     2741            break;
     2742        case Ext1OpType::I64TruncSatF64U: {
     2743            AllowMacroScratchRegisterUsage allowScratch(jit);
     2744            ASSERT(requiresMacroScratchRegisters);
     2745            FPRReg scratch = InvalidFPRReg;
     2746            FPRReg constant = InvalidFPRReg;
     2747            if (isX86()) {
     2748                scratch = params.fpScratch(0);
     2749                constant = params[2].fpr();
     2750            }
     2751            jit.truncateDoubleToUint64(params[1].fpr(), params[0].gpr(), scratch, constant);
     2752            break;
     2753        }
     2754        default:
     2755            RELEASE_ASSERT_NOT_REACHED();
     2756            break;
     2757        }
     2758    });
     2759
     2760    emitPatchpoint(inBoundsCase, patchpoint, Vector<TypedTmp, 8> { result }, WTFMove(args));
     2761    append(inBoundsCase, Jump);
     2762    inBoundsCase->setSuccessors(continuation);
     2763
     2764    m_currentBlock = continuation;
     2765
     2766    return { };
     2767}
     2768
    25782769auto AirIRGenerator::addSelect(ExpressionType condition, ExpressionType nonZero, ExpressionType zero, ExpressionType& result) -> PartialResult
    25792770{
  • trunk/Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp

    r271775 r272933  
    256256    PartialResult WARN_UNUSED_RETURN atomicFence(ExtAtomicOpType, uint8_t flags);
    257257
     258    // Saturated truncation.
     259    PartialResult WARN_UNUSED_RETURN truncSaturated(Ext1OpType, ExpressionType operand, ExpressionType& result, Type returnType, Type operandType);
     260
    258261    // Basic operators
    259262    template<OpType>
     
    17591762}
    17601763
     1764auto B3IRGenerator::truncSaturated(Ext1OpType op, ExpressionType arg, ExpressionType& result, Type returnType, Type) -> PartialResult
     1765{
     1766    Value* maxFloat = nullptr;
     1767    Value* minFloat = nullptr;
     1768    Value* signBitConstant = nullptr;
     1769    bool requiresMacroScratchRegisters = false;
     1770    switch (op) {
     1771    case Ext1OpType::I32TruncSatF32S:
     1772        maxFloat = constant(Float, bitwise_cast<uint32_t>(-static_cast<float>(std::numeric_limits<int32_t>::min())));
     1773        minFloat = constant(Float, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<int32_t>::min())));
     1774        break;
     1775    case Ext1OpType::I32TruncSatF32U:
     1776        maxFloat = constant(Float, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<int32_t>::min()) * static_cast<float>(-2.0)));
     1777        minFloat = constant(Float, bitwise_cast<uint32_t>(static_cast<float>(-1.0)));
     1778        break;
     1779    case Ext1OpType::I32TruncSatF64S:
     1780        maxFloat = constant(Double, bitwise_cast<uint64_t>(-static_cast<double>(std::numeric_limits<int32_t>::min())));
     1781        minFloat = constant(Double, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<int32_t>::min()) - 1.0));
     1782        break;
     1783    case Ext1OpType::I32TruncSatF64U:
     1784        maxFloat = constant(Double, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<int32_t>::min()) * -2.0));
     1785        minFloat = constant(Double, bitwise_cast<uint64_t>(-1.0));
     1786        break;
     1787    case Ext1OpType::I64TruncSatF32S:
     1788        maxFloat = constant(Float, bitwise_cast<uint32_t>(-static_cast<float>(std::numeric_limits<int64_t>::min())));
     1789        minFloat = constant(Float, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<int64_t>::min())));
     1790        break;
     1791    case Ext1OpType::I64TruncSatF32U:
     1792        maxFloat = constant(Float, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<int64_t>::min()) * static_cast<float>(-2.0)));
     1793        minFloat = constant(Float, bitwise_cast<uint32_t>(static_cast<float>(-1.0)));
     1794        // Since x86 doesn't have an instruction to convert floating points to unsigned integers, we at least try to do the smart thing if
     1795        // the numbers would be positive anyway as a signed integer. Since we cannot materialize constants into fprs we have b3 do it
     1796        // so we can pool them if needed.
     1797        if (isX86())
     1798            signBitConstant = constant(Float, bitwise_cast<uint32_t>(static_cast<float>(std::numeric_limits<uint64_t>::max() - std::numeric_limits<int64_t>::max())));
     1799        requiresMacroScratchRegisters = true;
     1800        break;
     1801    case Ext1OpType::I64TruncSatF64S:
     1802        maxFloat = constant(Double, bitwise_cast<uint64_t>(-static_cast<double>(std::numeric_limits<int64_t>::min())));
     1803        minFloat = constant(Double, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<int64_t>::min())));
     1804        break;
     1805    case Ext1OpType::I64TruncSatF64U:
     1806        maxFloat = constant(Double, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<int64_t>::min()) * -2.0));
     1807        minFloat = constant(Double, bitwise_cast<uint64_t>(-1.0));
     1808        // Since x86 doesn't have an instruction to convert floating points to unsigned integers, we at least try to do the smart thing if
     1809        // the numbers are would be positive anyway as a signed integer. Since we cannot materialize constants into fprs we have b3 do it
     1810        // so we can pool them if needed.
     1811        if (isX86())
     1812            signBitConstant = constant(Double, bitwise_cast<uint64_t>(static_cast<double>(std::numeric_limits<uint64_t>::max() - std::numeric_limits<int64_t>::max())));
     1813        requiresMacroScratchRegisters = true;
     1814        break;
     1815    default:
     1816        RELEASE_ASSERT_NOT_REACHED();
     1817        break;
     1818    }
     1819
     1820    PatchpointValue* patchpoint = m_currentBlock->appendNew<PatchpointValue>(m_proc, toB3Type(returnType), origin());
     1821    patchpoint->append(arg, ValueRep::SomeRegister);
     1822    if (requiresMacroScratchRegisters) {
     1823        if (isX86()) {
     1824            ASSERT(signBitConstant);
     1825            patchpoint->append(signBitConstant, ValueRep::SomeRegister);
     1826            patchpoint->numFPScratchRegisters = 1;
     1827        }
     1828        patchpoint->clobber(RegisterSet::macroScratchRegisters());
     1829    }
     1830    patchpoint->setGenerator([=] (CCallHelpers& jit, const StackmapGenerationParams& params) {
     1831        switch (op) {
     1832        case Ext1OpType::I32TruncSatF32S:
     1833            jit.truncateFloatToInt32(params[1].fpr(), params[0].gpr());
     1834            break;
     1835        case Ext1OpType::I32TruncSatF32U:
     1836            jit.truncateFloatToUint32(params[1].fpr(), params[0].gpr());
     1837            break;
     1838        case Ext1OpType::I32TruncSatF64S:
     1839            jit.truncateDoubleToInt32(params[1].fpr(), params[0].gpr());
     1840            break;
     1841        case Ext1OpType::I32TruncSatF64U:
     1842            jit.truncateDoubleToUint32(params[1].fpr(), params[0].gpr());
     1843            break;
     1844        case Ext1OpType::I64TruncSatF32S:
     1845            jit.truncateFloatToInt64(params[1].fpr(), params[0].gpr());
     1846            break;
     1847        case Ext1OpType::I64TruncSatF32U: {
     1848            AllowMacroScratchRegisterUsage allowScratch(jit);
     1849            ASSERT(requiresMacroScratchRegisters);
     1850            FPRReg scratch = InvalidFPRReg;
     1851            FPRReg constant = InvalidFPRReg;
     1852            if (isX86()) {
     1853                scratch = params.fpScratch(0);
     1854                constant = params[2].fpr();
     1855            }
     1856            jit.truncateFloatToUint64(params[1].fpr(), params[0].gpr(), scratch, constant);
     1857            break;
     1858        }
     1859        case Ext1OpType::I64TruncSatF64S:
     1860            jit.truncateDoubleToInt64(params[1].fpr(), params[0].gpr());
     1861            break;
     1862        case Ext1OpType::I64TruncSatF64U: {
     1863            AllowMacroScratchRegisterUsage allowScratch(jit);
     1864            ASSERT(requiresMacroScratchRegisters);
     1865            FPRReg scratch = InvalidFPRReg;
     1866            FPRReg constant = InvalidFPRReg;
     1867            if (isX86()) {
     1868                scratch = params.fpScratch(0);
     1869                constant = params[2].fpr();
     1870            }
     1871            jit.truncateDoubleToUint64(params[1].fpr(), params[0].gpr(), scratch, constant);
     1872            break;
     1873        }
     1874        default:
     1875            RELEASE_ASSERT_NOT_REACHED();
     1876            break;
     1877        }
     1878    });
     1879    patchpoint->effects = Effects::none();
     1880
     1881    Value* maxResult = nullptr;
     1882    Value* minResult = nullptr;
     1883    Value* zero = nullptr;
     1884    bool requiresNaNCheck = false;
     1885    switch (op) {
     1886    case Ext1OpType::I32TruncSatF32S:
     1887    case Ext1OpType::I32TruncSatF64S:
     1888        maxResult = constant(Int32, bitwise_cast<uint32_t>(INT32_MAX));
     1889        minResult = constant(Int32, bitwise_cast<uint32_t>(INT32_MIN));
     1890        zero = constant(Int32, 0);
     1891        requiresNaNCheck = true;
     1892        break;
     1893    case Ext1OpType::I32TruncSatF32U:
     1894    case Ext1OpType::I32TruncSatF64U:
     1895        maxResult = constant(Int32, bitwise_cast<uint32_t>(UINT32_MAX));
     1896        minResult = constant(Int32, bitwise_cast<uint32_t>(0U));
     1897        break;
     1898    case Ext1OpType::I64TruncSatF32S:
     1899    case Ext1OpType::I64TruncSatF64S:
     1900        maxResult = constant(Int64, bitwise_cast<uint64_t>(INT64_MAX));
     1901        minResult = constant(Int64, bitwise_cast<uint64_t>(INT64_MIN));
     1902        zero = constant(Int64, 0);
     1903        requiresNaNCheck = true;
     1904        break;
     1905    case Ext1OpType::I64TruncSatF32U:
     1906    case Ext1OpType::I64TruncSatF64U:
     1907        maxResult = constant(Int64, bitwise_cast<uint64_t>(UINT64_MAX));
     1908        minResult = constant(Int64, bitwise_cast<uint64_t>(0ULL));
     1909        break;
     1910    default:
     1911        RELEASE_ASSERT_NOT_REACHED();
     1912        break;
     1913    }
     1914
     1915    result = m_currentBlock->appendNew<Value>(m_proc, B3::Select, origin(),
     1916        m_currentBlock->appendNew<Value>(m_proc, GreaterThan, origin(), arg, minFloat),
     1917        m_currentBlock->appendNew<Value>(m_proc, B3::Select, origin(),
     1918            m_currentBlock->appendNew<Value>(m_proc, LessThan, origin(), arg, maxFloat),
     1919            patchpoint, maxResult),
     1920        requiresNaNCheck ? m_currentBlock->appendNew<Value>(m_proc, B3::Select, origin(), m_currentBlock->appendNew<Value>(m_proc, Equal, origin(), arg, arg), minResult, zero) : minResult);
     1921
     1922    return { };
     1923}
     1924
    17611925auto B3IRGenerator::addSelect(ExpressionType condition, ExpressionType nonZero, ExpressionType zero, ExpressionType& result) -> PartialResult
    17621926{
  • trunk/Source/JavaScriptCore/wasm/WasmFunctionParser.h

    r271145 r272933  
    128128    PartialResult WARN_UNUSED_RETURN load(Type memoryType);
    129129
     130    PartialResult WARN_UNUSED_RETURN truncSaturated(Ext1OpType, Type returnType, Type operandType);
     131
    130132    PartialResult WARN_UNUSED_RETURN atomicLoad(ExtAtomicOpType, Type memoryType);
    131133    PartialResult WARN_UNUSED_RETURN atomicStore(ExtAtomicOpType, Type memoryType);
     
    358360
    359361    WASM_TRY_ADD_TO_CONTEXT(store(static_cast<StoreOpType>(m_currentOpcode), pointer, value, offset));
     362    return { };
     363}
     364
     365template<typename Context>
     366auto FunctionParser<Context>::truncSaturated(Ext1OpType op, Type returnType, Type operandType) -> PartialResult
     367{
     368    TypedExpression value;
     369    WASM_TRY_POP_EXPRESSION_STACK_INTO(value, "unary");
     370
     371    WASM_VALIDATOR_FAIL_IF(value.type() != operandType, "trunc-saturated value type mismatch");
     372
     373    ExpressionType result;
     374    WASM_TRY_ADD_TO_CONTEXT(truncSaturated(op, value, result, returnType, operandType));
     375    m_expressionStack.constructAndAppend(returnType, result);
    360376    return { };
    361377}
     
    824840    }
    825841
    826     case ExtTable: {
    827         WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     842    case Ext1: {
    828843        uint8_t extOp;
    829         WASM_PARSER_FAIL_IF(!parseUInt8(extOp), "can't parse table extended opcode");
    830 
    831         switch (static_cast<ExtTableOpType>(extOp)) {
    832         case ExtTableOpType::TableInit: {
     844        WASM_PARSER_FAIL_IF(!parseUInt8(extOp), "can't parse 0xfc extended opcode");
     845
     846        Ext1OpType op = static_cast<Ext1OpType>(extOp);
     847        switch (op) {
     848        case Ext1OpType::TableInit: {
     849            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     850
    833851            TableInitImmediates immediates;
    834852            WASM_FAIL_IF_HELPER_FAILS(parseTableInitImmediates(immediates));
     
    848866            break;
    849867        }
    850         case ExtTableOpType::ElemDrop: {
     868        case Ext1OpType::ElemDrop: {
     869            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     870
    851871            unsigned elementIndex;
    852872            WASM_FAIL_IF_HELPER_FAILS(parseElementIndex(elementIndex));
     
    855875            break;
    856876        }
    857         case ExtTableOpType::TableSize: {
     877        case Ext1OpType::TableSize: {
     878            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     879
    858880            unsigned tableIndex;
    859881            WASM_FAIL_IF_HELPER_FAILS(parseTableIndex(tableIndex));
     
    864886            break;
    865887        }
    866         case ExtTableOpType::TableGrow: {
     888        case Ext1OpType::TableGrow: {
     889            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     890
    867891            unsigned tableIndex;
    868892            WASM_FAIL_IF_HELPER_FAILS(parseTableIndex(tableIndex));
     
    881905            break;
    882906        }
    883         case ExtTableOpType::TableFill: {
     907        case Ext1OpType::TableFill: {
     908            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     909
    884910            unsigned tableIndex;
    885911            WASM_FAIL_IF_HELPER_FAILS(parseTableIndex(tableIndex));
     
    897923            break;
    898924        }
    899         case ExtTableOpType::TableCopy: {
     925        case Ext1OpType::TableCopy: {
     926            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     927
    900928            TableCopyImmediates immediates;
    901929            WASM_FAIL_IF_HELPER_FAILS(parseTableCopyImmediates(immediates));
     
    919947            break;
    920948        }
    921         case ExtTableOpType::MemoryFill: {
     949        case Ext1OpType::MemoryFill: {
     950            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     951
    922952            WASM_FAIL_IF_HELPER_FAILS(parseMemoryFillImmediate());
    923953
     
    939969            break;
    940970        }
    941         case ExtTableOpType::MemoryCopy: {
     971        case Ext1OpType::MemoryCopy: {
     972            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     973
    942974            WASM_FAIL_IF_HELPER_FAILS(parseMemoryCopyImmediates());
    943975
     
    959991            break;
    960992        }
    961         case ExtTableOpType::MemoryInit: {
     993        case Ext1OpType::MemoryInit: {
     994            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     995
    962996            MemoryInitImmediates immediates;
    963997            WASM_FAIL_IF_HELPER_FAILS(parseMemoryInitImmediates(immediates));
     
    9771011            break;
    9781012        }
    979         case ExtTableOpType::DataDrop: {
     1013        case Ext1OpType::DataDrop: {
     1014            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     1015
    9801016            unsigned dataSegmentIndex;
    9811017            WASM_FAIL_IF_HELPER_FAILS(parseDataSegmentIndex(dataSegmentIndex));
     
    9841020            break;
    9851021        }
     1022
     1023#define CREATE_CASE(name, id, b3op, inc, operandType, returnType) case Ext1OpType::name: return truncSaturated(op, returnType, operandType);
     1024        FOR_EACH_WASM_TRUNC_SATURATED_OP(CREATE_CASE)
     1025#undef CREATE_CASE
     1026
    9861027        default:
    987             WASM_PARSER_FAIL_IF(true, "invalid extended table op ", extOp);
     1028            WASM_PARSER_FAIL_IF(true, "invalid 0xfc extended op ", extOp);
    9881029            break;
    9891030        }
     
    15411582    }
    15421583
    1543     case ExtTable: {
    1544         WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
     1584    case Ext1: {
    15451585        uint8_t extOp;
    1546         WASM_PARSER_FAIL_IF(!parseUInt8(extOp), "can't parse table extended opcode");
    1547 
    1548         switch (static_cast<ExtTableOpType>(extOp)) {
    1549         case ExtTableOpType::TableInit: {
     1586        WASM_PARSER_FAIL_IF(!parseUInt8(extOp), "can't parse extended 0xfc opcode");
     1587
     1588        switch (static_cast<Ext1OpType>(extOp)) {
     1589        case Ext1OpType::TableInit: {
     1590            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
    15501591            TableInitImmediates immediates;
    15511592            WASM_FAIL_IF_HELPER_FAILS(parseTableInitImmediates(immediates));
    15521593            return { };
    15531594        }
    1554         case ExtTableOpType::ElemDrop: {
     1595        case Ext1OpType::ElemDrop: {
     1596            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
    15551597            unsigned elementIndex;
    15561598            WASM_FAIL_IF_HELPER_FAILS(parseElementIndex(elementIndex));
    15571599            return { };
    15581600        }
    1559         case ExtTableOpType::TableSize:
    1560         case ExtTableOpType::TableGrow:
    1561         case ExtTableOpType::TableFill: {
     1601        case Ext1OpType::TableSize:
     1602        case Ext1OpType::TableGrow:
     1603        case Ext1OpType::TableFill: {
     1604            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
    15621605            unsigned tableIndex;
    15631606            WASM_FAIL_IF_HELPER_FAILS(parseTableIndex(tableIndex));
    15641607            return { };
    15651608        }
    1566         case ExtTableOpType::TableCopy: {
     1609        case Ext1OpType::TableCopy: {
     1610            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
    15671611            TableCopyImmediates immediates;
    15681612            WASM_FAIL_IF_HELPER_FAILS(parseTableCopyImmediates(immediates));
    15691613            return { };
    15701614        }
    1571         case ExtTableOpType::MemoryFill: {
     1615        case Ext1OpType::MemoryFill: {
     1616            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
    15721617            WASM_FAIL_IF_HELPER_FAILS(parseMemoryFillImmediate());
    15731618            return { };
    15741619        }
    1575         case ExtTableOpType::MemoryCopy: {
     1620        case Ext1OpType::MemoryCopy: {
     1621            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
    15761622            WASM_FAIL_IF_HELPER_FAILS(parseMemoryCopyImmediates());
    15771623            return { };
    15781624        }
    1579         case ExtTableOpType::MemoryInit: {
     1625        case Ext1OpType::MemoryInit: {
     1626            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
    15801627            MemoryInitImmediates immediates;
    15811628            WASM_FAIL_IF_HELPER_FAILS(parseMemoryInitImmediates(immediates));
    15821629            return { };
    15831630        }
    1584         case ExtTableOpType::DataDrop: {
     1631        case Ext1OpType::DataDrop: {
     1632            WASM_PARSER_FAIL_IF(!Options::useWebAssemblyReferences(), "references are not enabled");
    15851633            unsigned dataSegmentIndex;
    15861634            WASM_FAIL_IF_HELPER_FAILS(parseDataSegmentIndex(dataSegmentIndex));
    15871635            return { };
    15881636        }
     1637#define CREATE_EXT1_CASE(name, ...) case Ext1OpType::name:
     1638        FOR_EACH_WASM_TRUNC_SATURATED_OP(CREATE_EXT1_CASE)
     1639            return { };
     1640#undef CREATE_EXT1_CASE
    15891641        default:
    1590             WASM_PARSER_FAIL_IF(true, "invalid extended table op ", extOp);
     1642            WASM_PARSER_FAIL_IF(true, "invalid extended 0xfc op ", extOp);
    15911643            break;
    15921644        }
  • trunk/Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp

    r270948 r272933  
    226226    PartialResult WARN_UNUSED_RETURN atomicFence(ExtAtomicOpType, uint8_t flags);
    227227
     228    // Saturated truncation.
     229    PartialResult WARN_UNUSED_RETURN truncSaturated(Ext1OpType, ExpressionType operand, ExpressionType& result, Type, Type);
     230
    228231    // Basic operators
    229232    template<OpType>
     
    15161519}
    15171520
     1521auto LLIntGenerator::truncSaturated(Ext1OpType op, ExpressionType operand, ExpressionType& result, Type, Type) -> PartialResult
     1522{
     1523    result = push();
     1524    switch (op) {
     1525    case Ext1OpType::I32TruncSatF32S:
     1526        WasmI32TruncSatF32S::emit(this, result, operand);
     1527        break;
     1528    case Ext1OpType::I32TruncSatF32U:
     1529        WasmI32TruncSatF32U::emit(this, result, operand);
     1530        break;
     1531    case Ext1OpType::I32TruncSatF64S:
     1532        WasmI32TruncSatF64S::emit(this, result, operand);
     1533        break;
     1534    case Ext1OpType::I32TruncSatF64U:
     1535        WasmI32TruncSatF64U::emit(this, result, operand);
     1536        break;
     1537    case Ext1OpType::I64TruncSatF32S:
     1538        WasmI64TruncSatF32S::emit(this, result, operand);
     1539        break;
     1540    case Ext1OpType::I64TruncSatF32U:
     1541        WasmI64TruncSatF32U::emit(this, result, operand);
     1542        break;
     1543    case Ext1OpType::I64TruncSatF64S:
     1544        WasmI64TruncSatF64S::emit(this, result, operand);
     1545        break;
     1546    case Ext1OpType::I64TruncSatF64U:
     1547        WasmI64TruncSatF64U::emit(this, result, operand);
     1548        break;
     1549    default:
     1550        RELEASE_ASSERT_NOT_REACHED();
     1551        break;
     1552    }
     1553    return { };
     1554}
     1555
    15181556void LLIntGenerator::linkSwitchTargets(Label& label, unsigned location)
    15191557{
  • trunk/Source/JavaScriptCore/wasm/generateWasm.py

    r270208 r272933  
    8383
    8484def isNormal(op):
     85    if "extendedOp" in op:
     86        return False
    8587    return op["category"] == "arithmetic" or op["category"] == "comparison" or op["category"] == "conversion"
    8688
  • trunk/Source/JavaScriptCore/wasm/generateWasmOpsHeader.py

    r271775 r272933  
    8080    return opcodeMacroizer(filter, modifier=modifier)
    8181
    82 
    8382def memoryLoadMacroizer():
    8483    def modifier(op):
     
    9392
    9493
     94def saturatedTruncMacroizer():
     95    def modifier(op):
     96        return [cppType(type) for type in op["parameter"] + op["return"]]
     97    return opcodeMacroizer(lambda op: (op["category"] == "conversion" and op["value"] == 0xfc), modifier=modifier, opcodeField="extendedOp")
     98
     99
    95100def atomicMemoryLoadMacroizer():
    96101    def modifier(op):
     
    112117
    113118defines = ["#define FOR_EACH_WASM_SPECIAL_OP(macro)"]
    114 defines.extend([op for op in opcodeMacroizer(lambda op: not (isUnary(op) or isBinary(op) or op["category"] == "control" or op["category"] == "memory" or op["category"] == "exttable"or isAtomic(op)))])
     119defines.extend([op for op in opcodeMacroizer(lambda op: not (isUnary(op) or isBinary(op) or op["category"] == "control" or op["category"] == "memory" or op["value"] == 0xfc or isAtomic(op)))])
    115120defines.append("\n\n#define FOR_EACH_WASM_CONTROL_FLOW_OP(macro)")
    116121defines.extend([op for op in opcodeMacroizer(lambda op: op["category"] == "control")])
     
    127132defines.append("\n\n#define FOR_EACH_WASM_MEMORY_STORE_OP(macro)")
    128133defines.extend([op for op in memoryStoreMacroizer()])
    129 defines.append("\n\n#define FOR_EACH_WASM_EXT_TABLE_OP(macro)")
     134defines.append("\n\n#define FOR_EACH_WASM_TABLE_OP(macro)")
    130135defines.extend([op for op in opcodeMacroizer(lambda op: (op["category"] == "exttable"), opcodeField="extendedOp")])
     136defines.append("\n\n#define FOR_EACH_WASM_TRUNC_SATURATED_OP(macro)")
     137defines.extend([op for op in saturatedTruncMacroizer()])
    131138defines.append("\n\n#define FOR_EACH_WASM_EXT_ATOMIC_LOAD_OP(macro)")
    132139defines.extend([op for op in atomicMemoryLoadMacroizer()])
     
    274281    FOR_EACH_WASM_MEMORY_LOAD_OP(macro) \\
    275282    FOR_EACH_WASM_MEMORY_STORE_OP(macro) \\
    276     macro(ExtTable,  0xFC, Oops, 0) \\
     283    macro(Ext1,  0xFC, Oops, 0) \\
    277284    macro(ExtAtomic, 0xFE, Oops, 0)
    278285
     
    307314};
    308315
    309 enum class ExtTableOpType : uint8_t {
    310     FOR_EACH_WASM_EXT_TABLE_OP(CREATE_ENUM_VALUE)
     316enum class Ext1OpType : uint8_t {
     317    FOR_EACH_WASM_TABLE_OP(CREATE_ENUM_VALUE)
     318    FOR_EACH_WASM_TRUNC_SATURATED_OP(CREATE_ENUM_VALUE)
    311319};
    312320
  • trunk/Source/JavaScriptCore/wasm/wasm.json

    r270948 r272933  
    239239        "i64.extend32_s":      { "category": "conversion", "value": 196, "return": ["i64"],                          "parameter": ["i64"],                        "immediate": [], "b3op": "SExt32(Trunc(@0))"         },
    240240
     241        "i32.trunc_sat_f32_s": { "category": "conversion", "value": 252, "return": ["i32"], "parameter": ["f32"], "immediate": [], "extendedOp": 0 },
     242        "i32.trunc_sat_f32_u": { "category": "conversion", "value": 252, "return": ["i32"], "parameter": ["f32"], "immediate": [], "extendedOp": 1 },
     243        "i32.trunc_sat_f64_s": { "category": "conversion", "value": 252, "return": ["i32"], "parameter": ["f64"], "immediate": [], "extendedOp": 2 },
     244        "i32.trunc_sat_f64_u": { "category": "conversion", "value": 252, "return": ["i32"], "parameter": ["f64"], "immediate": [], "extendedOp": 3 },
     245        "i64.trunc_sat_f32_s": { "category": "conversion", "value": 252, "return": ["i64"], "parameter": ["f32"], "immediate": [], "extendedOp": 4 },
     246        "i64.trunc_sat_f32_u": { "category": "conversion", "value": 252, "return": ["i64"], "parameter": ["f32"], "immediate": [], "extendedOp": 5 },
     247        "i64.trunc_sat_f64_s": { "category": "conversion", "value": 252, "return": ["i64"], "parameter": ["f64"], "immediate": [], "extendedOp": 6 },
     248        "i64.trunc_sat_f64_u": { "category": "conversion", "value": 252, "return": ["i64"], "parameter": ["f64"], "immediate": [], "extendedOp": 7 },
     249
    241250        "memory.atomic.notify":       { "category": "atomic",     "value": 254, "return": ["i32"],      "parameter": ["addr", "i32"],          "immediate": [{"name": "flags",          "type": "varuint32"}, {"name": "offset",   "type": "varuint32"}], "extendedOp":  0 },
    242251        "memory.atomic.wait32":       { "category": "atomic",     "value": 254, "return": ["i32"],      "parameter": ["addr", "i32", "i64"],   "immediate": [{"name": "flags",          "type": "varuint32"}, {"name": "offset",   "type": "varuint32"}], "extendedOp":  1 },
Note: See TracChangeset for help on using the changeset viewer.