github.com/tetratelabs/wazero@v1.7.3-0.20240513003603-48f702e154b5/internal/integration_test/spectest/v1/testdata/i64.wast (about)

     1  ;; i64 operations
     2  
     3  (module
     4    (func (export "add") (param $x i64) (param $y i64) (result i64) (i64.add (local.get $x) (local.get $y)))
     5    (func (export "sub") (param $x i64) (param $y i64) (result i64) (i64.sub (local.get $x) (local.get $y)))
     6    (func (export "mul") (param $x i64) (param $y i64) (result i64) (i64.mul (local.get $x) (local.get $y)))
     7    (func (export "div_s") (param $x i64) (param $y i64) (result i64) (i64.div_s (local.get $x) (local.get $y)))
     8    (func (export "div_u") (param $x i64) (param $y i64) (result i64) (i64.div_u (local.get $x) (local.get $y)))
     9    (func (export "rem_s") (param $x i64) (param $y i64) (result i64) (i64.rem_s (local.get $x) (local.get $y)))
    10    (func (export "rem_u") (param $x i64) (param $y i64) (result i64) (i64.rem_u (local.get $x) (local.get $y)))
    11    (func (export "and") (param $x i64) (param $y i64) (result i64) (i64.and (local.get $x) (local.get $y)))
    12    (func (export "or") (param $x i64) (param $y i64) (result i64) (i64.or (local.get $x) (local.get $y)))
    13    (func (export "xor") (param $x i64) (param $y i64) (result i64) (i64.xor (local.get $x) (local.get $y)))
    14    (func (export "shl") (param $x i64) (param $y i64) (result i64) (i64.shl (local.get $x) (local.get $y)))
    15    (func (export "shr_s") (param $x i64) (param $y i64) (result i64) (i64.shr_s (local.get $x) (local.get $y)))
    16    (func (export "shr_u") (param $x i64) (param $y i64) (result i64) (i64.shr_u (local.get $x) (local.get $y)))
    17    (func (export "rotl") (param $x i64) (param $y i64) (result i64) (i64.rotl (local.get $x) (local.get $y)))
    18    (func (export "rotr") (param $x i64) (param $y i64) (result i64) (i64.rotr (local.get $x) (local.get $y)))
    19    (func (export "clz") (param $x i64) (result i64) (i64.clz (local.get $x)))
    20    (func (export "ctz") (param $x i64) (result i64) (i64.ctz (local.get $x)))
    21    (func (export "popcnt") (param $x i64) (result i64) (i64.popcnt (local.get $x)))
    22    (func (export "eqz") (param $x i64) (result i32) (i64.eqz (local.get $x)))
    23    (func (export "eq") (param $x i64) (param $y i64) (result i32) (i64.eq (local.get $x) (local.get $y)))
    24    (func (export "ne") (param $x i64) (param $y i64) (result i32) (i64.ne (local.get $x) (local.get $y)))
    25    (func (export "lt_s") (param $x i64) (param $y i64) (result i32) (i64.lt_s (local.get $x) (local.get $y)))
    26    (func (export "lt_u") (param $x i64) (param $y i64) (result i32) (i64.lt_u (local.get $x) (local.get $y)))
    27    (func (export "le_s") (param $x i64) (param $y i64) (result i32) (i64.le_s (local.get $x) (local.get $y)))
    28    (func (export "le_u") (param $x i64) (param $y i64) (result i32) (i64.le_u (local.get $x) (local.get $y)))
    29    (func (export "gt_s") (param $x i64) (param $y i64) (result i32) (i64.gt_s (local.get $x) (local.get $y)))
    30    (func (export "gt_u") (param $x i64) (param $y i64) (result i32) (i64.gt_u (local.get $x) (local.get $y)))
    31    (func (export "ge_s") (param $x i64) (param $y i64) (result i32) (i64.ge_s (local.get $x) (local.get $y)))
    32    (func (export "ge_u") (param $x i64) (param $y i64) (result i32) (i64.ge_u (local.get $x) (local.get $y)))
    33  )
    34  
    35  (assert_return (invoke "add" (i64.const 1) (i64.const 1)) (i64.const 2))
    36  (assert_return (invoke "add" (i64.const 1) (i64.const 0)) (i64.const 1))
    37  (assert_return (invoke "add" (i64.const -1) (i64.const -1)) (i64.const -2))
    38  (assert_return (invoke "add" (i64.const -1) (i64.const 1)) (i64.const 0))
    39  (assert_return (invoke "add" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0x8000000000000000))
    40  (assert_return (invoke "add" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0x7fffffffffffffff))
    41  (assert_return (invoke "add" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i64.const 0))
    42  (assert_return (invoke "add" (i64.const 0x3fffffff) (i64.const 1)) (i64.const 0x40000000))
    43  
    44  (assert_return (invoke "sub" (i64.const 1) (i64.const 1)) (i64.const 0))
    45  (assert_return (invoke "sub" (i64.const 1) (i64.const 0)) (i64.const 1))
    46  (assert_return (invoke "sub" (i64.const -1) (i64.const -1)) (i64.const 0))
    47  (assert_return (invoke "sub" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0x8000000000000000))
    48  (assert_return (invoke "sub" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0x7fffffffffffffff))
    49  (assert_return (invoke "sub" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i64.const 0))
    50  (assert_return (invoke "sub" (i64.const 0x3fffffff) (i64.const -1)) (i64.const 0x40000000))
    51  
    52  (assert_return (invoke "mul" (i64.const 1) (i64.const 1)) (i64.const 1))
    53  (assert_return (invoke "mul" (i64.const 1) (i64.const 0)) (i64.const 0))
    54  (assert_return (invoke "mul" (i64.const -1) (i64.const -1)) (i64.const 1))
    55  (assert_return (invoke "mul" (i64.const 0x1000000000000000) (i64.const 4096)) (i64.const 0))
    56  (assert_return (invoke "mul" (i64.const 0x8000000000000000) (i64.const 0)) (i64.const 0))
    57  (assert_return (invoke "mul" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0x8000000000000000))
    58  (assert_return (invoke "mul" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0x8000000000000001))
    59  (assert_return (invoke "mul" (i64.const 0x0123456789abcdef) (i64.const 0xfedcba9876543210)) (i64.const 0x2236d88fe5618cf0))
    60  (assert_return (invoke "mul" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i64.const 1))
    61  
    62  (assert_trap (invoke "div_s" (i64.const 1) (i64.const 0)) "integer divide by zero")
    63  (assert_trap (invoke "div_s" (i64.const 0) (i64.const 0)) "integer divide by zero")
    64  (assert_trap (invoke "div_s" (i64.const 0x8000000000000000) (i64.const -1)) "integer overflow")
    65  (assert_return (invoke "div_s" (i64.const 1) (i64.const 1)) (i64.const 1))
    66  (assert_return (invoke "div_s" (i64.const 0) (i64.const 1)) (i64.const 0))
    67  (assert_return (invoke "div_s" (i64.const 0) (i64.const -1)) (i64.const 0))
    68  (assert_return (invoke "div_s" (i64.const -1) (i64.const -1)) (i64.const 1))
    69  (assert_return (invoke "div_s" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0xc000000000000000))
    70  (assert_return (invoke "div_s" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const 0xffdf3b645a1cac09))
    71  (assert_return (invoke "div_s" (i64.const 5) (i64.const 2)) (i64.const 2))
    72  (assert_return (invoke "div_s" (i64.const -5) (i64.const 2)) (i64.const -2))
    73  (assert_return (invoke "div_s" (i64.const 5) (i64.const -2)) (i64.const -2))
    74  (assert_return (invoke "div_s" (i64.const -5) (i64.const -2)) (i64.const 2))
    75  (assert_return (invoke "div_s" (i64.const 7) (i64.const 3)) (i64.const 2))
    76  (assert_return (invoke "div_s" (i64.const -7) (i64.const 3)) (i64.const -2))
    77  (assert_return (invoke "div_s" (i64.const 7) (i64.const -3)) (i64.const -2))
    78  (assert_return (invoke "div_s" (i64.const -7) (i64.const -3)) (i64.const 2))
    79  (assert_return (invoke "div_s" (i64.const 11) (i64.const 5)) (i64.const 2))
    80  (assert_return (invoke "div_s" (i64.const 17) (i64.const 7)) (i64.const 2))
    81  
    82  (assert_trap (invoke "div_u" (i64.const 1) (i64.const 0)) "integer divide by zero")
    83  (assert_trap (invoke "div_u" (i64.const 0) (i64.const 0)) "integer divide by zero")
    84  (assert_return (invoke "div_u" (i64.const 1) (i64.const 1)) (i64.const 1))
    85  (assert_return (invoke "div_u" (i64.const 0) (i64.const 1)) (i64.const 0))
    86  (assert_return (invoke "div_u" (i64.const -1) (i64.const -1)) (i64.const 1))
    87  (assert_return (invoke "div_u" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0))
    88  (assert_return (invoke "div_u" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0x4000000000000000))
    89  (assert_return (invoke "div_u" (i64.const 0x8ff00ff00ff00ff0) (i64.const 0x100000001)) (i64.const 0x8ff00fef))
    90  (assert_return (invoke "div_u" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const 0x20c49ba5e353f7))
    91  (assert_return (invoke "div_u" (i64.const 5) (i64.const 2)) (i64.const 2))
    92  (assert_return (invoke "div_u" (i64.const -5) (i64.const 2)) (i64.const 0x7ffffffffffffffd))
    93  (assert_return (invoke "div_u" (i64.const 5) (i64.const -2)) (i64.const 0))
    94  (assert_return (invoke "div_u" (i64.const -5) (i64.const -2)) (i64.const 0))
    95  (assert_return (invoke "div_u" (i64.const 7) (i64.const 3)) (i64.const 2))
    96  (assert_return (invoke "div_u" (i64.const 11) (i64.const 5)) (i64.const 2))
    97  (assert_return (invoke "div_u" (i64.const 17) (i64.const 7)) (i64.const 2))
    98  
    99  (assert_trap (invoke "rem_s" (i64.const 1) (i64.const 0)) "integer divide by zero")
   100  (assert_trap (invoke "rem_s" (i64.const 0) (i64.const 0)) "integer divide by zero")
   101  (assert_return (invoke "rem_s" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0))
   102  (assert_return (invoke "rem_s" (i64.const 1) (i64.const 1)) (i64.const 0))
   103  (assert_return (invoke "rem_s" (i64.const 0) (i64.const 1)) (i64.const 0))
   104  (assert_return (invoke "rem_s" (i64.const 0) (i64.const -1)) (i64.const 0))
   105  (assert_return (invoke "rem_s" (i64.const -1) (i64.const -1)) (i64.const 0))
   106  (assert_return (invoke "rem_s" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0))
   107  (assert_return (invoke "rem_s" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0))
   108  (assert_return (invoke "rem_s" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const -807))
   109  (assert_return (invoke "rem_s" (i64.const 5) (i64.const 2)) (i64.const 1))
   110  (assert_return (invoke "rem_s" (i64.const -5) (i64.const 2)) (i64.const -1))
   111  (assert_return (invoke "rem_s" (i64.const 5) (i64.const -2)) (i64.const 1))
   112  (assert_return (invoke "rem_s" (i64.const -5) (i64.const -2)) (i64.const -1))
   113  (assert_return (invoke "rem_s" (i64.const 7) (i64.const 3)) (i64.const 1))
   114  (assert_return (invoke "rem_s" (i64.const -7) (i64.const 3)) (i64.const -1))
   115  (assert_return (invoke "rem_s" (i64.const 7) (i64.const -3)) (i64.const 1))
   116  (assert_return (invoke "rem_s" (i64.const -7) (i64.const -3)) (i64.const -1))
   117  (assert_return (invoke "rem_s" (i64.const 11) (i64.const 5)) (i64.const 1))
   118  (assert_return (invoke "rem_s" (i64.const 17) (i64.const 7)) (i64.const 3))
   119  
   120  (assert_trap (invoke "rem_u" (i64.const 1) (i64.const 0)) "integer divide by zero")
   121  (assert_trap (invoke "rem_u" (i64.const 0) (i64.const 0)) "integer divide by zero")
   122  (assert_return (invoke "rem_u" (i64.const 1) (i64.const 1)) (i64.const 0))
   123  (assert_return (invoke "rem_u" (i64.const 0) (i64.const 1)) (i64.const 0))
   124  (assert_return (invoke "rem_u" (i64.const -1) (i64.const -1)) (i64.const 0))
   125  (assert_return (invoke "rem_u" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0x8000000000000000))
   126  (assert_return (invoke "rem_u" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0))
   127  (assert_return (invoke "rem_u" (i64.const 0x8ff00ff00ff00ff0) (i64.const 0x100000001)) (i64.const 0x80000001))
   128  (assert_return (invoke "rem_u" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const 809))
   129  (assert_return (invoke "rem_u" (i64.const 5) (i64.const 2)) (i64.const 1))
   130  (assert_return (invoke "rem_u" (i64.const -5) (i64.const 2)) (i64.const 1))
   131  (assert_return (invoke "rem_u" (i64.const 5) (i64.const -2)) (i64.const 5))
   132  (assert_return (invoke "rem_u" (i64.const -5) (i64.const -2)) (i64.const -5))
   133  (assert_return (invoke "rem_u" (i64.const 7) (i64.const 3)) (i64.const 1))
   134  (assert_return (invoke "rem_u" (i64.const 11) (i64.const 5)) (i64.const 1))
   135  (assert_return (invoke "rem_u" (i64.const 17) (i64.const 7)) (i64.const 3))
   136  
   137  (assert_return (invoke "and" (i64.const 1) (i64.const 0)) (i64.const 0))
   138  (assert_return (invoke "and" (i64.const 0) (i64.const 1)) (i64.const 0))
   139  (assert_return (invoke "and" (i64.const 1) (i64.const 1)) (i64.const 1))
   140  (assert_return (invoke "and" (i64.const 0) (i64.const 0)) (i64.const 0))
   141  (assert_return (invoke "and" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i64.const 0))
   142  (assert_return (invoke "and" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0x7fffffffffffffff))
   143  (assert_return (invoke "and" (i64.const 0xf0f0ffff) (i64.const 0xfffff0f0)) (i64.const 0xf0f0f0f0))
   144  (assert_return (invoke "and" (i64.const 0xffffffffffffffff) (i64.const 0xffffffffffffffff)) (i64.const 0xffffffffffffffff))
   145  
   146  (assert_return (invoke "or" (i64.const 1) (i64.const 0)) (i64.const 1))
   147  (assert_return (invoke "or" (i64.const 0) (i64.const 1)) (i64.const 1))
   148  (assert_return (invoke "or" (i64.const 1) (i64.const 1)) (i64.const 1))
   149  (assert_return (invoke "or" (i64.const 0) (i64.const 0)) (i64.const 0))
   150  (assert_return (invoke "or" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i64.const -1))
   151  (assert_return (invoke "or" (i64.const 0x8000000000000000) (i64.const 0)) (i64.const 0x8000000000000000))
   152  (assert_return (invoke "or" (i64.const 0xf0f0ffff) (i64.const 0xfffff0f0)) (i64.const 0xffffffff))
   153  (assert_return (invoke "or" (i64.const 0xffffffffffffffff) (i64.const 0xffffffffffffffff)) (i64.const 0xffffffffffffffff))
   154  
   155  (assert_return (invoke "xor" (i64.const 1) (i64.const 0)) (i64.const 1))
   156  (assert_return (invoke "xor" (i64.const 0) (i64.const 1)) (i64.const 1))
   157  (assert_return (invoke "xor" (i64.const 1) (i64.const 1)) (i64.const 0))
   158  (assert_return (invoke "xor" (i64.const 0) (i64.const 0)) (i64.const 0))
   159  (assert_return (invoke "xor" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i64.const -1))
   160  (assert_return (invoke "xor" (i64.const 0x8000000000000000) (i64.const 0)) (i64.const 0x8000000000000000))
   161  (assert_return (invoke "xor" (i64.const -1) (i64.const 0x8000000000000000)) (i64.const 0x7fffffffffffffff))
   162  (assert_return (invoke "xor" (i64.const -1) (i64.const 0x7fffffffffffffff)) (i64.const 0x8000000000000000))
   163  (assert_return (invoke "xor" (i64.const 0xf0f0ffff) (i64.const 0xfffff0f0)) (i64.const 0x0f0f0f0f))
   164  (assert_return (invoke "xor" (i64.const 0xffffffffffffffff) (i64.const 0xffffffffffffffff)) (i64.const 0))
   165  
   166  (assert_return (invoke "shl" (i64.const 1) (i64.const 1)) (i64.const 2))
   167  (assert_return (invoke "shl" (i64.const 1) (i64.const 0)) (i64.const 1))
   168  (assert_return (invoke "shl" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0xfffffffffffffffe))
   169  (assert_return (invoke "shl" (i64.const 0xffffffffffffffff) (i64.const 1)) (i64.const 0xfffffffffffffffe))
   170  (assert_return (invoke "shl" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0))
   171  (assert_return (invoke "shl" (i64.const 0x4000000000000000) (i64.const 1)) (i64.const 0x8000000000000000))
   172  (assert_return (invoke "shl" (i64.const 1) (i64.const 63)) (i64.const 0x8000000000000000))
   173  (assert_return (invoke "shl" (i64.const 1) (i64.const 64)) (i64.const 1))
   174  (assert_return (invoke "shl" (i64.const 1) (i64.const 65)) (i64.const 2))
   175  (assert_return (invoke "shl" (i64.const 1) (i64.const -1)) (i64.const 0x8000000000000000))
   176  (assert_return (invoke "shl" (i64.const 1) (i64.const 0x7fffffffffffffff)) (i64.const 0x8000000000000000))
   177  
   178  (assert_return (invoke "shr_s" (i64.const 1) (i64.const 1)) (i64.const 0))
   179  (assert_return (invoke "shr_s" (i64.const 1) (i64.const 0)) (i64.const 1))
   180  (assert_return (invoke "shr_s" (i64.const -1) (i64.const 1)) (i64.const -1))
   181  (assert_return (invoke "shr_s" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0x3fffffffffffffff))
   182  (assert_return (invoke "shr_s" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0xc000000000000000))
   183  (assert_return (invoke "shr_s" (i64.const 0x4000000000000000) (i64.const 1)) (i64.const 0x2000000000000000))
   184  (assert_return (invoke "shr_s" (i64.const 1) (i64.const 64)) (i64.const 1))
   185  (assert_return (invoke "shr_s" (i64.const 1) (i64.const 65)) (i64.const 0))
   186  (assert_return (invoke "shr_s" (i64.const 1) (i64.const -1)) (i64.const 0))
   187  (assert_return (invoke "shr_s" (i64.const 1) (i64.const 0x7fffffffffffffff)) (i64.const 0))
   188  (assert_return (invoke "shr_s" (i64.const 1) (i64.const 0x8000000000000000)) (i64.const 1))
   189  (assert_return (invoke "shr_s" (i64.const 0x8000000000000000) (i64.const 63)) (i64.const -1))
   190  (assert_return (invoke "shr_s" (i64.const -1) (i64.const 64)) (i64.const -1))
   191  (assert_return (invoke "shr_s" (i64.const -1) (i64.const 65)) (i64.const -1))
   192  (assert_return (invoke "shr_s" (i64.const -1) (i64.const -1)) (i64.const -1))
   193  (assert_return (invoke "shr_s" (i64.const -1) (i64.const 0x7fffffffffffffff)) (i64.const -1))
   194  (assert_return (invoke "shr_s" (i64.const -1) (i64.const 0x8000000000000000)) (i64.const -1))
   195  
   196  (assert_return (invoke "shr_u" (i64.const 1) (i64.const 1)) (i64.const 0))
   197  (assert_return (invoke "shr_u" (i64.const 1) (i64.const 0)) (i64.const 1))
   198  (assert_return (invoke "shr_u" (i64.const -1) (i64.const 1)) (i64.const 0x7fffffffffffffff))
   199  (assert_return (invoke "shr_u" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0x3fffffffffffffff))
   200  (assert_return (invoke "shr_u" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0x4000000000000000))
   201  (assert_return (invoke "shr_u" (i64.const 0x4000000000000000) (i64.const 1)) (i64.const 0x2000000000000000))
   202  (assert_return (invoke "shr_u" (i64.const 1) (i64.const 64)) (i64.const 1))
   203  (assert_return (invoke "shr_u" (i64.const 1) (i64.const 65)) (i64.const 0))
   204  (assert_return (invoke "shr_u" (i64.const 1) (i64.const -1)) (i64.const 0))
   205  (assert_return (invoke "shr_u" (i64.const 1) (i64.const 0x7fffffffffffffff)) (i64.const 0))
   206  (assert_return (invoke "shr_u" (i64.const 1) (i64.const 0x8000000000000000)) (i64.const 1))
   207  (assert_return (invoke "shr_u" (i64.const 0x8000000000000000) (i64.const 63)) (i64.const 1))
   208  (assert_return (invoke "shr_u" (i64.const -1) (i64.const 64)) (i64.const -1))
   209  (assert_return (invoke "shr_u" (i64.const -1) (i64.const 65)) (i64.const 0x7fffffffffffffff))
   210  (assert_return (invoke "shr_u" (i64.const -1) (i64.const -1)) (i64.const 1))
   211  (assert_return (invoke "shr_u" (i64.const -1) (i64.const 0x7fffffffffffffff)) (i64.const 1))
   212  (assert_return (invoke "shr_u" (i64.const -1) (i64.const 0x8000000000000000)) (i64.const -1))
   213  
   214  (assert_return (invoke "rotl" (i64.const 1) (i64.const 1)) (i64.const 2))
   215  (assert_return (invoke "rotl" (i64.const 1) (i64.const 0)) (i64.const 1))
   216  (assert_return (invoke "rotl" (i64.const -1) (i64.const 1)) (i64.const -1))
   217  (assert_return (invoke "rotl" (i64.const 1) (i64.const 64)) (i64.const 1))
   218  (assert_return (invoke "rotl" (i64.const 0xabcd987602468ace) (i64.const 1)) (i64.const 0x579b30ec048d159d))
   219  (assert_return (invoke "rotl" (i64.const 0xfe000000dc000000) (i64.const 4)) (i64.const 0xe000000dc000000f))
   220  (assert_return (invoke "rotl" (i64.const 0xabcd1234ef567809) (i64.const 53)) (i64.const 0x013579a2469deacf))
   221  (assert_return (invoke "rotl" (i64.const 0xabd1234ef567809c) (i64.const 63)) (i64.const 0x55e891a77ab3c04e))
   222  (assert_return (invoke "rotl" (i64.const 0xabcd1234ef567809) (i64.const 0xf5)) (i64.const 0x013579a2469deacf))
   223  (assert_return (invoke "rotl" (i64.const 0xabcd7294ef567809) (i64.const 0xffffffffffffffed)) (i64.const 0xcf013579ae529dea))
   224  (assert_return (invoke "rotl" (i64.const 0xabd1234ef567809c) (i64.const 0x800000000000003f)) (i64.const 0x55e891a77ab3c04e))
   225  (assert_return (invoke "rotl" (i64.const 1) (i64.const 63)) (i64.const 0x8000000000000000))
   226  (assert_return (invoke "rotl" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 1))
   227  
   228  (assert_return (invoke "rotr" (i64.const 1) (i64.const 1)) (i64.const 0x8000000000000000))
   229  (assert_return (invoke "rotr" (i64.const 1) (i64.const 0)) (i64.const 1))
   230  (assert_return (invoke "rotr" (i64.const -1) (i64.const 1)) (i64.const -1))
   231  (assert_return (invoke "rotr" (i64.const 1) (i64.const 64)) (i64.const 1))
   232  (assert_return (invoke "rotr" (i64.const 0xabcd987602468ace) (i64.const 1)) (i64.const 0x55e6cc3b01234567))
   233  (assert_return (invoke "rotr" (i64.const 0xfe000000dc000000) (i64.const 4)) (i64.const 0x0fe000000dc00000))
   234  (assert_return (invoke "rotr" (i64.const 0xabcd1234ef567809) (i64.const 53)) (i64.const 0x6891a77ab3c04d5e))
   235  (assert_return (invoke "rotr" (i64.const 0xabd1234ef567809c) (i64.const 63)) (i64.const 0x57a2469deacf0139))
   236  (assert_return (invoke "rotr" (i64.const 0xabcd1234ef567809) (i64.const 0xf5)) (i64.const 0x6891a77ab3c04d5e))
   237  (assert_return (invoke "rotr" (i64.const 0xabcd7294ef567809) (i64.const 0xffffffffffffffed)) (i64.const 0x94a77ab3c04d5e6b))
   238  (assert_return (invoke "rotr" (i64.const 0xabd1234ef567809c) (i64.const 0x800000000000003f)) (i64.const 0x57a2469deacf0139))
   239  (assert_return (invoke "rotr" (i64.const 1) (i64.const 63)) (i64.const 2))
   240  (assert_return (invoke "rotr" (i64.const 0x8000000000000000) (i64.const 63)) (i64.const 1))
   241  
   242  (assert_return (invoke "clz" (i64.const 0xffffffffffffffff)) (i64.const 0))
   243  (assert_return (invoke "clz" (i64.const 0)) (i64.const 64))
   244  (assert_return (invoke "clz" (i64.const 0x00008000)) (i64.const 48))
   245  (assert_return (invoke "clz" (i64.const 0xff)) (i64.const 56))
   246  (assert_return (invoke "clz" (i64.const 0x8000000000000000)) (i64.const 0))
   247  (assert_return (invoke "clz" (i64.const 1)) (i64.const 63))
   248  (assert_return (invoke "clz" (i64.const 2)) (i64.const 62))
   249  (assert_return (invoke "clz" (i64.const 0x7fffffffffffffff)) (i64.const 1))
   250  
   251  (assert_return (invoke "ctz" (i64.const -1)) (i64.const 0))
   252  (assert_return (invoke "ctz" (i64.const 0)) (i64.const 64))
   253  (assert_return (invoke "ctz" (i64.const 0x00008000)) (i64.const 15))
   254  (assert_return (invoke "ctz" (i64.const 0x00010000)) (i64.const 16))
   255  (assert_return (invoke "ctz" (i64.const 0x8000000000000000)) (i64.const 63))
   256  (assert_return (invoke "ctz" (i64.const 0x7fffffffffffffff)) (i64.const 0))
   257  
   258  (assert_return (invoke "popcnt" (i64.const -1)) (i64.const 64))
   259  (assert_return (invoke "popcnt" (i64.const 0)) (i64.const 0))
   260  (assert_return (invoke "popcnt" (i64.const 0x00008000)) (i64.const 1))
   261  (assert_return (invoke "popcnt" (i64.const 0x8000800080008000)) (i64.const 4))
   262  (assert_return (invoke "popcnt" (i64.const 0x7fffffffffffffff)) (i64.const 63))
   263  (assert_return (invoke "popcnt" (i64.const 0xAAAAAAAA55555555)) (i64.const 32))
   264  (assert_return (invoke "popcnt" (i64.const 0x99999999AAAAAAAA)) (i64.const 32))
   265  (assert_return (invoke "popcnt" (i64.const 0xDEADBEEFDEADBEEF)) (i64.const 48))
   266  
   267  (assert_return (invoke "eqz" (i64.const 0)) (i32.const 1))
   268  (assert_return (invoke "eqz" (i64.const 1)) (i32.const 0))
   269  (assert_return (invoke "eqz" (i64.const 0x8000000000000000)) (i32.const 0))
   270  (assert_return (invoke "eqz" (i64.const 0x7fffffffffffffff)) (i32.const 0))
   271  (assert_return (invoke "eqz" (i64.const 0xffffffffffffffff)) (i32.const 0))
   272  
   273  (assert_return (invoke "eq" (i64.const 0) (i64.const 0)) (i32.const 1))
   274  (assert_return (invoke "eq" (i64.const 1) (i64.const 1)) (i32.const 1))
   275  (assert_return (invoke "eq" (i64.const -1) (i64.const 1)) (i32.const 0))
   276  (assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1))
   277  (assert_return (invoke "eq" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   278  (assert_return (invoke "eq" (i64.const -1) (i64.const -1)) (i32.const 1))
   279  (assert_return (invoke "eq" (i64.const 1) (i64.const 0)) (i32.const 0))
   280  (assert_return (invoke "eq" (i64.const 0) (i64.const 1)) (i32.const 0))
   281  (assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0))
   282  (assert_return (invoke "eq" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0))
   283  (assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0))
   284  (assert_return (invoke "eq" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0))
   285  (assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   286  (assert_return (invoke "eq" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0))
   287  
   288  (assert_return (invoke "ne" (i64.const 0) (i64.const 0)) (i32.const 0))
   289  (assert_return (invoke "ne" (i64.const 1) (i64.const 1)) (i32.const 0))
   290  (assert_return (invoke "ne" (i64.const -1) (i64.const 1)) (i32.const 1))
   291  (assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0))
   292  (assert_return (invoke "ne" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   293  (assert_return (invoke "ne" (i64.const -1) (i64.const -1)) (i32.const 0))
   294  (assert_return (invoke "ne" (i64.const 1) (i64.const 0)) (i32.const 1))
   295  (assert_return (invoke "ne" (i64.const 0) (i64.const 1)) (i32.const 1))
   296  (assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1))
   297  (assert_return (invoke "ne" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1))
   298  (assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1))
   299  (assert_return (invoke "ne" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1))
   300  (assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   301  (assert_return (invoke "ne" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1))
   302  
   303  (assert_return (invoke "lt_s" (i64.const 0) (i64.const 0)) (i32.const 0))
   304  (assert_return (invoke "lt_s" (i64.const 1) (i64.const 1)) (i32.const 0))
   305  (assert_return (invoke "lt_s" (i64.const -1) (i64.const 1)) (i32.const 1))
   306  (assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0))
   307  (assert_return (invoke "lt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   308  (assert_return (invoke "lt_s" (i64.const -1) (i64.const -1)) (i32.const 0))
   309  (assert_return (invoke "lt_s" (i64.const 1) (i64.const 0)) (i32.const 0))
   310  (assert_return (invoke "lt_s" (i64.const 0) (i64.const 1)) (i32.const 1))
   311  (assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1))
   312  (assert_return (invoke "lt_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0))
   313  (assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1))
   314  (assert_return (invoke "lt_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0))
   315  (assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   316  (assert_return (invoke "lt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0))
   317  
   318  (assert_return (invoke "lt_u" (i64.const 0) (i64.const 0)) (i32.const 0))
   319  (assert_return (invoke "lt_u" (i64.const 1) (i64.const 1)) (i32.const 0))
   320  (assert_return (invoke "lt_u" (i64.const -1) (i64.const 1)) (i32.const 0))
   321  (assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0))
   322  (assert_return (invoke "lt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   323  (assert_return (invoke "lt_u" (i64.const -1) (i64.const -1)) (i32.const 0))
   324  (assert_return (invoke "lt_u" (i64.const 1) (i64.const 0)) (i32.const 0))
   325  (assert_return (invoke "lt_u" (i64.const 0) (i64.const 1)) (i32.const 1))
   326  (assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0))
   327  (assert_return (invoke "lt_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1))
   328  (assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1))
   329  (assert_return (invoke "lt_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0))
   330  (assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   331  (assert_return (invoke "lt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1))
   332  
   333  (assert_return (invoke "le_s" (i64.const 0) (i64.const 0)) (i32.const 1))
   334  (assert_return (invoke "le_s" (i64.const 1) (i64.const 1)) (i32.const 1))
   335  (assert_return (invoke "le_s" (i64.const -1) (i64.const 1)) (i32.const 1))
   336  (assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1))
   337  (assert_return (invoke "le_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   338  (assert_return (invoke "le_s" (i64.const -1) (i64.const -1)) (i32.const 1))
   339  (assert_return (invoke "le_s" (i64.const 1) (i64.const 0)) (i32.const 0))
   340  (assert_return (invoke "le_s" (i64.const 0) (i64.const 1)) (i32.const 1))
   341  (assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1))
   342  (assert_return (invoke "le_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0))
   343  (assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1))
   344  (assert_return (invoke "le_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0))
   345  (assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   346  (assert_return (invoke "le_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0))
   347  
   348  (assert_return (invoke "le_u" (i64.const 0) (i64.const 0)) (i32.const 1))
   349  (assert_return (invoke "le_u" (i64.const 1) (i64.const 1)) (i32.const 1))
   350  (assert_return (invoke "le_u" (i64.const -1) (i64.const 1)) (i32.const 0))
   351  (assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1))
   352  (assert_return (invoke "le_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   353  (assert_return (invoke "le_u" (i64.const -1) (i64.const -1)) (i32.const 1))
   354  (assert_return (invoke "le_u" (i64.const 1) (i64.const 0)) (i32.const 0))
   355  (assert_return (invoke "le_u" (i64.const 0) (i64.const 1)) (i32.const 1))
   356  (assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0))
   357  (assert_return (invoke "le_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1))
   358  (assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1))
   359  (assert_return (invoke "le_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0))
   360  (assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   361  (assert_return (invoke "le_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1))
   362  
   363  (assert_return (invoke "gt_s" (i64.const 0) (i64.const 0)) (i32.const 0))
   364  (assert_return (invoke "gt_s" (i64.const 1) (i64.const 1)) (i32.const 0))
   365  (assert_return (invoke "gt_s" (i64.const -1) (i64.const 1)) (i32.const 0))
   366  (assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0))
   367  (assert_return (invoke "gt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   368  (assert_return (invoke "gt_s" (i64.const -1) (i64.const -1)) (i32.const 0))
   369  (assert_return (invoke "gt_s" (i64.const 1) (i64.const 0)) (i32.const 1))
   370  (assert_return (invoke "gt_s" (i64.const 0) (i64.const 1)) (i32.const 0))
   371  (assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0))
   372  (assert_return (invoke "gt_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1))
   373  (assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0))
   374  (assert_return (invoke "gt_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1))
   375  (assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   376  (assert_return (invoke "gt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1))
   377  
   378  (assert_return (invoke "gt_u" (i64.const 0) (i64.const 0)) (i32.const 0))
   379  (assert_return (invoke "gt_u" (i64.const 1) (i64.const 1)) (i32.const 0))
   380  (assert_return (invoke "gt_u" (i64.const -1) (i64.const 1)) (i32.const 1))
   381  (assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0))
   382  (assert_return (invoke "gt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   383  (assert_return (invoke "gt_u" (i64.const -1) (i64.const -1)) (i32.const 0))
   384  (assert_return (invoke "gt_u" (i64.const 1) (i64.const 0)) (i32.const 1))
   385  (assert_return (invoke "gt_u" (i64.const 0) (i64.const 1)) (i32.const 0))
   386  (assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1))
   387  (assert_return (invoke "gt_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0))
   388  (assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0))
   389  (assert_return (invoke "gt_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1))
   390  (assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   391  (assert_return (invoke "gt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0))
   392  
   393  (assert_return (invoke "ge_s" (i64.const 0) (i64.const 0)) (i32.const 1))
   394  (assert_return (invoke "ge_s" (i64.const 1) (i64.const 1)) (i32.const 1))
   395  (assert_return (invoke "ge_s" (i64.const -1) (i64.const 1)) (i32.const 0))
   396  (assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1))
   397  (assert_return (invoke "ge_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   398  (assert_return (invoke "ge_s" (i64.const -1) (i64.const -1)) (i32.const 1))
   399  (assert_return (invoke "ge_s" (i64.const 1) (i64.const 0)) (i32.const 1))
   400  (assert_return (invoke "ge_s" (i64.const 0) (i64.const 1)) (i32.const 0))
   401  (assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0))
   402  (assert_return (invoke "ge_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1))
   403  (assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0))
   404  (assert_return (invoke "ge_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1))
   405  (assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0))
   406  (assert_return (invoke "ge_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1))
   407  
   408  (assert_return (invoke "ge_u" (i64.const 0) (i64.const 0)) (i32.const 1))
   409  (assert_return (invoke "ge_u" (i64.const 1) (i64.const 1)) (i32.const 1))
   410  (assert_return (invoke "ge_u" (i64.const -1) (i64.const 1)) (i32.const 1))
   411  (assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1))
   412  (assert_return (invoke "ge_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   413  (assert_return (invoke "ge_u" (i64.const -1) (i64.const -1)) (i32.const 1))
   414  (assert_return (invoke "ge_u" (i64.const 1) (i64.const 0)) (i32.const 1))
   415  (assert_return (invoke "ge_u" (i64.const 0) (i64.const 1)) (i32.const 0))
   416  (assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1))
   417  (assert_return (invoke "ge_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0))
   418  (assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0))
   419  (assert_return (invoke "ge_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1))
   420  (assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1))
   421  (assert_return (invoke "ge_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0))
   422  
   423  
   424  ;; Type check
   425  
   426  (assert_invalid (module (func (result i64) (i64.add (i32.const 0) (f32.const 0)))) "type mismatch")
   427  (assert_invalid (module (func (result i64) (i64.and (i32.const 0) (f32.const 0)))) "type mismatch")
   428  (assert_invalid (module (func (result i64) (i64.div_s (i32.const 0) (f32.const 0)))) "type mismatch")
   429  (assert_invalid (module (func (result i64) (i64.div_u (i32.const 0) (f32.const 0)))) "type mismatch")
   430  (assert_invalid (module (func (result i64) (i64.mul (i32.const 0) (f32.const 0)))) "type mismatch")
   431  (assert_invalid (module (func (result i64) (i64.or (i32.const 0) (f32.const 0)))) "type mismatch")
   432  (assert_invalid (module (func (result i64) (i64.rem_s (i32.const 0) (f32.const 0)))) "type mismatch")
   433  (assert_invalid (module (func (result i64) (i64.rem_u (i32.const 0) (f32.const 0)))) "type mismatch")
   434  (assert_invalid (module (func (result i64) (i64.rotl (i32.const 0) (f32.const 0)))) "type mismatch")
   435  (assert_invalid (module (func (result i64) (i64.rotr (i32.const 0) (f32.const 0)))) "type mismatch")
   436  (assert_invalid (module (func (result i64) (i64.shl (i32.const 0) (f32.const 0)))) "type mismatch")
   437  (assert_invalid (module (func (result i64) (i64.shr_s (i32.const 0) (f32.const 0)))) "type mismatch")
   438  (assert_invalid (module (func (result i64) (i64.shr_u (i32.const 0) (f32.const 0)))) "type mismatch")
   439  (assert_invalid (module (func (result i64) (i64.sub (i32.const 0) (f32.const 0)))) "type mismatch")
   440  (assert_invalid (module (func (result i64) (i64.xor (i32.const 0) (f32.const 0)))) "type mismatch")
   441  (assert_invalid (module (func (result i64) (i64.eqz (i32.const 0)))) "type mismatch")
   442  (assert_invalid (module (func (result i64) (i64.clz (i32.const 0)))) "type mismatch")
   443  (assert_invalid (module (func (result i64) (i64.ctz (i32.const 0)))) "type mismatch")
   444  (assert_invalid (module (func (result i64) (i64.popcnt (i32.const 0)))) "type mismatch")
   445  (assert_invalid (module (func (result i64) (i64.eq (i32.const 0) (f32.const 0)))) "type mismatch")
   446  (assert_invalid (module (func (result i64) (i64.ge_s (i32.const 0) (f32.const 0)))) "type mismatch")
   447  (assert_invalid (module (func (result i64) (i64.ge_u (i32.const 0) (f32.const 0)))) "type mismatch")
   448  (assert_invalid (module (func (result i64) (i64.gt_s (i32.const 0) (f32.const 0)))) "type mismatch")
   449  (assert_invalid (module (func (result i64) (i64.gt_u (i32.const 0) (f32.const 0)))) "type mismatch")
   450  (assert_invalid (module (func (result i64) (i64.le_s (i32.const 0) (f32.const 0)))) "type mismatch")
   451  (assert_invalid (module (func (result i64) (i64.le_u (i32.const 0) (f32.const 0)))) "type mismatch")
   452  (assert_invalid (module (func (result i64) (i64.lt_s (i32.const 0) (f32.const 0)))) "type mismatch")
   453  (assert_invalid (module (func (result i64) (i64.lt_u (i32.const 0) (f32.const 0)))) "type mismatch")
   454  (assert_invalid (module (func (result i64) (i64.ne (i32.const 0) (f32.const 0)))) "type mismatch")