wa-lang.org/wazero@v1.0.2/internal/integration_test/spectest/v2/testdata/simd_i32x4_cmp.wast (about)

     1  
     2  ;; Test all the i32x4 comparison operators on major boundary values and all special values.
     3  
     4  (module
     5    (func (export "eq") (param $x v128) (param $y v128) (result v128) (i32x4.eq (local.get $x) (local.get $y)))
     6    (func (export "ne") (param $x v128) (param $y v128) (result v128) (i32x4.ne (local.get $x) (local.get $y)))
     7    (func (export "lt_s") (param $x v128) (param $y v128) (result v128) (i32x4.lt_s (local.get $x) (local.get $y)))
     8    (func (export "lt_u") (param $x v128) (param $y v128) (result v128) (i32x4.lt_u (local.get $x) (local.get $y)))
     9    (func (export "le_s") (param $x v128) (param $y v128) (result v128) (i32x4.le_s (local.get $x) (local.get $y)))
    10    (func (export "le_u") (param $x v128) (param $y v128) (result v128) (i32x4.le_u (local.get $x) (local.get $y)))
    11    (func (export "gt_s") (param $x v128) (param $y v128) (result v128) (i32x4.gt_s (local.get $x) (local.get $y)))
    12    (func (export "gt_u") (param $x v128) (param $y v128) (result v128) (i32x4.gt_u (local.get $x) (local.get $y)))
    13    (func (export "ge_s") (param $x v128) (param $y v128) (result v128) (i32x4.ge_s (local.get $x) (local.get $y)))
    14    (func (export "ge_u") (param $x v128) (param $y v128) (result v128) (i32x4.ge_u (local.get $x) (local.get $y)))
    15  )
    16  
    17  
    18  ;; eq
    19  
    20  ;; i32x4.eq  (i32x4) (i32x4)
    21  
    22  ;; hex vs hex
    23  (assert_return (invoke "eq" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
    24                              (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
    25                              (v128.const i32x4 -1 -1 -1 -1))
    26  (assert_return (invoke "eq" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
    27                              (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
    28                              (v128.const i32x4 -1 -1 -1 -1))
    29  (assert_return (invoke "eq" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
    30                              (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
    31                              (v128.const i32x4 -1 -1 -1 -1))
    32  (assert_return (invoke "eq" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
    33                              (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
    34                              (v128.const i32x4 -1 -1 -1 -1))
    35  (assert_return (invoke "eq" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
    36                              (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
    37                              (v128.const i32x4 -1 -1 -1 -1))
    38  (assert_return (invoke "eq" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
    39                              (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
    40                              (v128.const i32x4 -1 -1 -1 -1))
    41  (assert_return (invoke "eq" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
    42                              (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
    43                              (v128.const i32x4 -1 -1 -1 -1))
    44  
    45  ;; hex vs dec
    46  (assert_return (invoke "eq" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
    47                              (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
    48                              (v128.const i32x4 -1 -1 -1 -1))
    49  (assert_return (invoke "eq" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
    50                              (v128.const i32x4 -1 -1 -1 -1))
    51                              (v128.const i32x4 -1 -1 -1 -1))
    52  (assert_return (invoke "eq" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
    53                              (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
    54                              (v128.const i32x4 -1 -1 -1 -1))
    55  (assert_return (invoke "eq" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
    56                              (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
    57                              (v128.const i32x4 -1 -1 -1 -1))
    58  (assert_return (invoke "eq" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
    59                              (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
    60                              (v128.const i32x4 -1 -1 -1 -1))
    61  
    62  ;; dec vs dec
    63  (assert_return (invoke "eq" (v128.const i32x4 -1 -1 -1 -1)
    64                              (v128.const i32x4 -1 -1 -1 -1))
    65                              (v128.const i32x4 -1 -1 -1 -1))
    66  (assert_return (invoke "eq" (v128.const i32x4 0 0 0 0)
    67                              (v128.const i32x4 0 0 0 0))
    68                              (v128.const i32x4 -1 -1 -1 -1))
    69  (assert_return (invoke "eq" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
    70                              (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
    71                              (v128.const i32x4 -1 -1 -1 -1))
    72  (assert_return (invoke "eq" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
    73                              (v128.const i32x4 -1 -1 -1 -1))
    74                              (v128.const i32x4 -1 -1 -1 -1))
    75  (assert_return (invoke "eq" (v128.const i32x4 4294967295 4294967295 0 0)
    76                              (v128.const i32x4 4294967295 4294967295 0 0))
    77                              (v128.const i32x4 -1 -1 -1 -1))
    78  (assert_return (invoke "eq" (v128.const i32x4 0 0 4294967295 4294967295)
    79                              (v128.const i32x4 0 0 4294967295 4294967295))
    80                              (v128.const i32x4 -1 -1 -1 -1))
    81  (assert_return (invoke "eq" (v128.const i32x4 -2147483647 4294967295 0 -1)
    82                              (v128.const i32x4 2147483649 -1 0 -1))
    83                              (v128.const i32x4 -1 -1 -1 -1))
    84  
    85  ;; hex vs float
    86  (assert_return (invoke "eq" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
    87                              (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
    88                              (v128.const i32x4 -1 -1 -1 -1))
    89  (assert_return (invoke "eq" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
    90                              (v128.const f32x4 1.0 127.0 128.0 255.0))
    91                              (v128.const i32x4 -1 -1 -1 -1))
    92  
    93  ;; not equal
    94  (assert_return (invoke "eq" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
    95                              (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
    96                              (v128.const i32x4 0 0 0 0))
    97  (assert_return (invoke "eq" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
    98                              (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
    99                              (v128.const i32x4 0 0 0 0))
   100  (assert_return (invoke "eq" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
   101                              (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
   102                              (v128.const i32x4 0 0 0 0))
   103  (assert_return (invoke "eq" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
   104                              (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
   105                              (v128.const i32x4 0 0 0 0))
   106  (assert_return (invoke "eq" (v128.const i32x4 2147483648 2147483647 0 -1)
   107                              (v128.const i32x4 -2147483648 -2147483647 -1 0))
   108                              (v128.const i32x4 -1 0 0 0))
   109  
   110  ;; i32x4.eq  (i32x4) (i8x16)
   111  (assert_return (invoke "eq" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   112                              (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
   113                              (v128.const i32x4 -1 -1 -1 -1))
   114  (assert_return (invoke "eq" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   115                              (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
   116                              (v128.const i32x4 -1 -1 -1 -1))
   117  (assert_return (invoke "eq" (v128.const i32x4 0 0 0 0)
   118                              (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
   119                              (v128.const i32x4 -1 -1 -1 -1))
   120  (assert_return (invoke "eq" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   121                              (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
   122                              (v128.const i32x4 -1 -1 -1 -1))
   123  (assert_return (invoke "eq" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   124                              (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
   125                              (v128.const i32x4 -1 -1 -1 -1))
   126  (assert_return (invoke "eq" (v128.const i32x4 -8323200 0 1 4294967295)
   127                              (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
   128                              (v128.const i32x4 0 -1 0 -1))
   129  (assert_return (invoke "eq" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
   130                              (v128.const i8x16 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA))
   131                              (v128.const i32x4 0 0 0 0))
   132  
   133  ;; i32x4.eq  (i32x4) (i16x8)
   134  (assert_return (invoke "eq" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   135                              (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
   136                              (v128.const i32x4 -1 -1 -1 -1))
   137  (assert_return (invoke "eq" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   138                              (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
   139                              (v128.const i32x4 -1 -1 -1 -1))
   140  (assert_return (invoke "eq" (v128.const i32x4 0 0 0 0)
   141                              (v128.const i16x8 0 0 0 0 0 0 0 0))
   142                              (v128.const i32x4 -1 -1 -1 -1))
   143  (assert_return (invoke "eq" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   144                              (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
   145                              (v128.const i32x4 -1 -1 -1 -1))
   146  (assert_return (invoke "eq" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   147                              (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
   148                              (v128.const i32x4 -1 -1 -1 -1))
   149  (assert_return (invoke "eq" (v128.const i32x4 4294967295 0 1 65535)
   150                              (v128.const i16x8 65535 65535 0 0 1 0 65535 65535))
   151                              (v128.const i32x4 -1 -1 -1 0))
   152  (assert_return (invoke "eq" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
   153                              (v128.const i16x8 0xAAAA 0xAAAA 0xAAAA 0xAAAA 0xAAAA 0xAAAA 0xAAAA 0xAAAA))
   154                              (v128.const i32x4 0 0 0 0))
   155  (assert_return (invoke "eq" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
   156                              (v128.const i32x4 123456789 123456789 123456789 123456789))
   157                              (v128.const i32x4 -1 -1 -1 -1))
   158  (assert_return (invoke "eq" (v128.const i32x4 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678)
   159                              (v128.const i32x4 0x12345678 0x12345678 0x12345678 0x12345678))
   160                              (v128.const i32x4 -1 -1 -1 -1))
   161  
   162  ;; ne
   163  
   164  ;; i32x4.ne  (i32x4) (i32x4)
   165  
   166  ;; hex vs hex
   167  (assert_return (invoke "ne" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   168                              (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
   169                              (v128.const i32x4 0 0 0 0))
   170  (assert_return (invoke "ne" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
   171                              (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
   172                              (v128.const i32x4 0 0 0 0))
   173  (assert_return (invoke "ne" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
   174                              (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   175                              (v128.const i32x4 0 0 0 0))
   176  (assert_return (invoke "ne" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   177                              (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
   178                              (v128.const i32x4 0 0 0 0))
   179  (assert_return (invoke "ne" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
   180                              (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   181                              (v128.const i32x4 0 0 0 0))
   182  (assert_return (invoke "ne" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   183                              (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
   184                              (v128.const i32x4 0 0 0 0))
   185  (assert_return (invoke "ne" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
   186                              (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
   187                              (v128.const i32x4 0 0 0 0))
   188  
   189  ;; hex vs dec
   190  (assert_return (invoke "ne" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   191                              (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   192                              (v128.const i32x4 0 0 0 0))
   193  (assert_return (invoke "ne" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   194                              (v128.const i32x4 -1 -1 -1 -1))
   195                              (v128.const i32x4 0 0 0 0))
   196  (assert_return (invoke "ne" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   197                              (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
   198                              (v128.const i32x4 0 0 0 0))
   199  (assert_return (invoke "ne" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   200                              (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
   201                              (v128.const i32x4 0 0 0 0))
   202  (assert_return (invoke "ne" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
   203                              (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
   204                              (v128.const i32x4 0 0 0 0))
   205  
   206  ;; dec vs dec
   207  (assert_return (invoke "ne" (v128.const i32x4 -1 -1 -1 -1)
   208                              (v128.const i32x4 -1 -1 -1 -1))
   209                              (v128.const i32x4 0 0 0 0))
   210  (assert_return (invoke "ne" (v128.const i32x4 0 0 0 0)
   211                              (v128.const i32x4 0 0 0 0))
   212                              (v128.const i32x4 0 0 0 0))
   213  (assert_return (invoke "ne" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   214                              (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   215                              (v128.const i32x4 0 0 0 0))
   216  (assert_return (invoke "ne" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   217                              (v128.const i32x4 -1 -1 -1 -1))
   218                              (v128.const i32x4 0 0 0 0))
   219  (assert_return (invoke "ne" (v128.const i32x4 4294967295 4294967295 0 0)
   220                              (v128.const i32x4 4294967295 4294967295 0 0))
   221                              (v128.const i32x4 0 0 0 0))
   222  (assert_return (invoke "ne" (v128.const i32x4 0 0 4294967295 4294967295)
   223                              (v128.const i32x4 0 0 4294967295 4294967295))
   224                              (v128.const i32x4 0 0 0 0))
   225  (assert_return (invoke "ne" (v128.const i32x4 -2147483647 4294967295 0 -1)
   226                              (v128.const i32x4 2147483649 -1 0 -1))
   227                              (v128.const i32x4 0 0 0 0))
   228  
   229  ;; hex vs float
   230  (assert_return (invoke "ne" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
   231                              (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
   232                              (v128.const i32x4 0 0 0 0))
   233  (assert_return (invoke "ne" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
   234                              (v128.const f32x4 1.0 127.0 128.0 255.0))
   235                              (v128.const i32x4 0 0 0 0))
   236  
   237  ;; not equal
   238  (assert_return (invoke "ne" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   239                              (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   240                              (v128.const i32x4 -1 -1 -1 -1))
   241  (assert_return (invoke "ne" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   242                              (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   243                              (v128.const i32x4 -1 -1 -1 -1))
   244  (assert_return (invoke "ne" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
   245                              (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
   246                              (v128.const i32x4 -1 -1 -1 -1))
   247  (assert_return (invoke "ne" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
   248                              (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
   249                              (v128.const i32x4 -1 -1 -1 -1))
   250  (assert_return (invoke "ne" (v128.const i32x4 2147483648 2147483647 0 -1)
   251                              (v128.const i32x4 -2147483648 -2147483647 -1 0))
   252                              (v128.const i32x4 0 -1 -1 -1))
   253  
   254  ;; i32x4.ne  (i32x4) (i8x16)
   255  (assert_return (invoke "ne" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   256                              (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
   257                              (v128.const i32x4 0 0 0 0))
   258  (assert_return (invoke "ne" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   259                              (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
   260                              (v128.const i32x4 0 0 0 0))
   261  (assert_return (invoke "ne" (v128.const i32x4 0 0 0 0)
   262                              (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
   263                              (v128.const i32x4 0 0 0 0))
   264  (assert_return (invoke "ne" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   265                              (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
   266                              (v128.const i32x4 0 0 0 0))
   267  (assert_return (invoke "ne" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   268                              (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
   269                              (v128.const i32x4 0 0 0 0))
   270  (assert_return (invoke "ne" (v128.const i32x4 -8323200 0 1 4294967295)
   271                              (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
   272                              (v128.const i32x4 -1 0 -1 0))
   273  (assert_return (invoke "ne" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
   274                              (v128.const i8x16 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA))
   275                              (v128.const i32x4 -1 -1 -1 -1))
   276  
   277  ;; i32x4.ne  (i32x4) (i16x8)
   278  (assert_return (invoke "ne" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   279                              (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
   280                              (v128.const i32x4 0 0 0 0))
   281  (assert_return (invoke "ne" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   282                              (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
   283                              (v128.const i32x4 0 0 0 0))
   284  (assert_return (invoke "ne" (v128.const i32x4 0 0 0 0)
   285                              (v128.const i16x8 0 0 0 0 0 0 0 0))
   286                              (v128.const i32x4 0 0 0 0))
   287  (assert_return (invoke "ne" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   288                              (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
   289                              (v128.const i32x4 0 0 0 0))
   290  (assert_return (invoke "ne" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   291                              (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
   292                              (v128.const i32x4 0 0 0 0))
   293  (assert_return (invoke "ne" (v128.const i32x4 -128 0 1 255)
   294                              (v128.const i16x8 -128 -128 0 0 1 1 255 255))
   295                              (v128.const i32x4 -1 0 -1 -1))
   296  (assert_return (invoke "ne" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
   297                              (v128.const i16x8 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555))
   298                              (v128.const i32x4 -1 -1 -1 -1))
   299  (assert_return (invoke "ne" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
   300                              (v128.const i32x4 123456789 123456789 123456789 123456789))
   301                              (v128.const i32x4 0 0 0 0))
   302  (assert_return (invoke "ne" (v128.const i32x4 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678)
   303                              (v128.const i32x4 0x12345678 0x12345678 0x12345678 0x12345678))
   304                              (v128.const i32x4 0 0 0 0))
   305  
   306  ;; lt_s
   307  
   308  ;; i32x4.lt_s  (i32x4) (i32x4)
   309  
   310  ;; hex vs hex
   311  (assert_return (invoke "lt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   312                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
   313                                (v128.const i32x4 0 0 0 0))
   314  (assert_return (invoke "lt_s" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
   315                                (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
   316                                (v128.const i32x4 0 0 0 0))
   317  (assert_return (invoke "lt_s" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
   318                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   319                                (v128.const i32x4 0 0 0 0))
   320  (assert_return (invoke "lt_s" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   321                                (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
   322                                (v128.const i32x4 0 0 0 0))
   323  (assert_return (invoke "lt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
   324                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   325                                (v128.const i32x4 0 0 0 0))
   326  (assert_return (invoke "lt_s" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   327                                (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
   328                                (v128.const i32x4 0 0 0 0))
   329  (assert_return (invoke "lt_s" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
   330                                (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
   331                                (v128.const i32x4 0 0 0 0))
   332  
   333  ;; hex vs dec
   334  (assert_return (invoke "lt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   335                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   336                                (v128.const i32x4 0 0 0 0))
   337  (assert_return (invoke "lt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   338                                (v128.const i32x4 -1 -1 -1 -1))
   339                                (v128.const i32x4 0 0 0 0))
   340  (assert_return (invoke "lt_s" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   341                                (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
   342                                (v128.const i32x4 0 0 0 0))
   343  (assert_return (invoke "lt_s" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   344                                (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
   345                                (v128.const i32x4 0 0 0 0))
   346  (assert_return (invoke "lt_s" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
   347                                (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
   348                                (v128.const i32x4 0 0 0 0))
   349  
   350  ;; dec vs dec
   351  (assert_return (invoke "lt_s" (v128.const i32x4 -1 -1 -1 -1)
   352                                (v128.const i32x4 -1 -1 -1 -1))
   353                                (v128.const i32x4 0 0 0 0))
   354  (assert_return (invoke "lt_s" (v128.const i32x4 0 0 0 0)
   355                                (v128.const i32x4 0 0 0 0))
   356                                (v128.const i32x4 0 0 0 0))
   357  (assert_return (invoke "lt_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   358                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   359                                (v128.const i32x4 0 0 0 0))
   360  (assert_return (invoke "lt_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   361                                (v128.const i32x4 -1 -1 -1 -1))
   362                                (v128.const i32x4 0 0 0 0))
   363  (assert_return (invoke "lt_s" (v128.const i32x4 4294967295 4294967295 0 0)
   364                                (v128.const i32x4 4294967295 4294967295 0 0))
   365                                (v128.const i32x4 0 0 0 0))
   366  (assert_return (invoke "lt_s" (v128.const i32x4 0 0 4294967295 4294967295)
   367                                (v128.const i32x4 0 0 4294967295 4294967295))
   368                                (v128.const i32x4 0 0 0 0))
   369  (assert_return (invoke "lt_s" (v128.const i32x4 -2147483647 4294967295 0 -1)
   370                                (v128.const i32x4 2147483649 -1 0 -1))
   371                                (v128.const i32x4 0 0 0 0))
   372  
   373  ;; hex vs float
   374  (assert_return (invoke "lt_s" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
   375                                (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
   376                                (v128.const i32x4 0 0 0 0))
   377  (assert_return (invoke "lt_s" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
   378                                (v128.const f32x4 1.0 127.0 128.0 255.0))
   379                                (v128.const i32x4 0 0 0 0))
   380  
   381  ;; not equal
   382  (assert_return (invoke "lt_s" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   383                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   384                                (v128.const i32x4 0 0 0 0))
   385  (assert_return (invoke "lt_s" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   386                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   387                                (v128.const i32x4 0 0 -1 -1))
   388  (assert_return (invoke "lt_s" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
   389                                (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
   390                                (v128.const i32x4 0 0 0 -1))
   391  (assert_return (invoke "lt_s" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
   392                                (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
   393                                (v128.const i32x4 -1 -1 0 0))
   394  (assert_return (invoke "lt_s" (v128.const i32x4 2147483648 2147483647 0 -1)
   395                                (v128.const i32x4 -2147483648 -2147483647 -1 0))
   396                                (v128.const i32x4 0 0 0 -1))
   397  
   398  ;; i32x4.lt_s  (i32x4) (i8x16)
   399  (assert_return (invoke "lt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   400                                (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
   401                                (v128.const i32x4 0 0 0 0))
   402  (assert_return (invoke "lt_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   403                                (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
   404                                (v128.const i32x4 0 0 0 0))
   405  (assert_return (invoke "lt_s" (v128.const i32x4 0 0 0 0)
   406                                (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
   407                                (v128.const i32x4 0 0 0 0))
   408  (assert_return (invoke "lt_s" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   409                                (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
   410                                (v128.const i32x4 0 0 0 0))
   411  (assert_return (invoke "lt_s" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   412                                (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
   413                                (v128.const i32x4 0 0 0 0))
   414  (assert_return (invoke "lt_s" (v128.const i32x4 -8323200 0 1 4294967295)
   415                                (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
   416                                (v128.const i32x4 0 0 -1 0))
   417  (assert_return (invoke "lt_s" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
   418                                (v128.const i8x16 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA))
   419                                (v128.const i32x4 0 0 0 0))
   420  
   421  ;; i32x4.lt_s  (i32x4) (i16x8)
   422  (assert_return (invoke "lt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   423                                (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
   424                                (v128.const i32x4 0 0 0 0))
   425  (assert_return (invoke "lt_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   426                                (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
   427                                (v128.const i32x4 0 0 0 0))
   428  (assert_return (invoke "lt_s" (v128.const i32x4 0 0 0 0)
   429                                (v128.const i16x8 0 0 0 0 0 0 0 0))
   430                                (v128.const i32x4 0 0 0 0))
   431  (assert_return (invoke "lt_s" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   432                                (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
   433                                (v128.const i32x4 0 0 0 0))
   434  (assert_return (invoke "lt_s" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   435                                (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
   436                                (v128.const i32x4 0 0 0 0))
   437  (assert_return (invoke "lt_s" (v128.const i32x4 -128 0 1 255)
   438                                (v128.const i16x8 -128 -128 0 0 1 1 255 255))
   439                                (v128.const i32x4 0 0 -1 -1))
   440  (assert_return (invoke "lt_s" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
   441                                (v128.const i16x8 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555))
   442                                (v128.const i32x4 -1 -1 -1 -1))
   443  (assert_return (invoke "lt_s" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
   444                                (v128.const i32x4 123456789 123456789 123456789 123456789))
   445                                (v128.const i32x4 0 0 0 0))
   446  (assert_return (invoke "lt_s" (v128.const i32x4 0x0_90AB_cdef 0x0_90AB_cdef 0x0_90AB_cdef 0x0_90AB_cdef)
   447                                (v128.const i32x4 -0x6f543210 -0x6f543210 -0x6f543210 -0x6f543210))
   448                                (v128.const i32x4 -1 -1 -1 -1))
   449  
   450  ;; lt_u
   451  
   452  ;; i32x4.lt_u  (i32x4) (i32x4)
   453  
   454  ;; hex vs hex
   455  (assert_return (invoke "lt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   456                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
   457                                (v128.const i32x4 0 0 0 0))
   458  (assert_return (invoke "lt_u" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
   459                                (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
   460                                (v128.const i32x4 0 0 0 0))
   461  (assert_return (invoke "lt_u" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
   462                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   463                                (v128.const i32x4 0 0 0 0))
   464  (assert_return (invoke "lt_u" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   465                                (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
   466                                (v128.const i32x4 0 0 0 0))
   467  (assert_return (invoke "lt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
   468                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   469                                (v128.const i32x4 0 0 0 0))
   470  (assert_return (invoke "lt_u" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   471                                (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
   472                                (v128.const i32x4 0 0 0 0))
   473  (assert_return (invoke "lt_u" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
   474                                (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
   475                                (v128.const i32x4 0 0 0 0))
   476  
   477  ;; hex vs dec
   478  (assert_return (invoke "lt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   479                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   480                                (v128.const i32x4 0 0 0 0))
   481  (assert_return (invoke "lt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   482                                (v128.const i32x4 -1 -1 -1 -1))
   483                                (v128.const i32x4 0 0 0 0))
   484  (assert_return (invoke "lt_u" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   485                                (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
   486                                (v128.const i32x4 0 0 0 0))
   487  (assert_return (invoke "lt_u" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   488                                (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
   489                                (v128.const i32x4 0 0 0 0))
   490  (assert_return (invoke "lt_u" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
   491                                (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
   492                                (v128.const i32x4 0 0 0 0))
   493  
   494  ;; dec vs dec
   495  (assert_return (invoke "lt_u" (v128.const i32x4 -1 -1 -1 -1)
   496                                (v128.const i32x4 -1 -1 -1 -1))
   497                                (v128.const i32x4 0 0 0 0))
   498  (assert_return (invoke "lt_u" (v128.const i32x4 0 0 0 0)
   499                                (v128.const i32x4 0 0 0 0))
   500                                (v128.const i32x4 0 0 0 0))
   501  (assert_return (invoke "lt_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   502                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   503                                (v128.const i32x4 0 0 0 0))
   504  (assert_return (invoke "lt_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   505                                (v128.const i32x4 -1 -1 -1 -1))
   506                                (v128.const i32x4 0 0 0 0))
   507  (assert_return (invoke "lt_u" (v128.const i32x4 4294967295 4294967295 0 0)
   508                                (v128.const i32x4 4294967295 4294967295 0 0))
   509                                (v128.const i32x4 0 0 0 0))
   510  (assert_return (invoke "lt_u" (v128.const i32x4 0 0 4294967295 4294967295)
   511                                (v128.const i32x4 0 0 4294967295 4294967295))
   512                                (v128.const i32x4 0 0 0 0))
   513  (assert_return (invoke "lt_u" (v128.const i32x4 -2147483647 4294967295 0 -1)
   514                                (v128.const i32x4 2147483649 -1 0 -1))
   515                                (v128.const i32x4 0 0 0 0))
   516  
   517  ;; hex vs float
   518  (assert_return (invoke "lt_u" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
   519                                (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
   520                                (v128.const i32x4 0 0 0 0))
   521  (assert_return (invoke "lt_u" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
   522                                (v128.const f32x4 1.0 127.0 128.0 255.0))
   523                                (v128.const i32x4 0 0 0 0))
   524  
   525  ;; not equal
   526  (assert_return (invoke "lt_u" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   527                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   528                                (v128.const i32x4 -1 -1 -1 -1))
   529  (assert_return (invoke "lt_u" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   530                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   531                                (v128.const i32x4 -1 -1 0 0))
   532  (assert_return (invoke "lt_u" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
   533                                (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
   534                                (v128.const i32x4 -1 0 0 0))
   535  (assert_return (invoke "lt_u" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
   536                                (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
   537                                (v128.const i32x4 -1 -1 0 0))
   538  (assert_return (invoke "lt_u" (v128.const i32x4 2147483648 2147483647 0 -1)
   539                                (v128.const i32x4 -2147483648 -2147483647 -1 0))
   540                                (v128.const i32x4 0 -1 -1 0))
   541  
   542  ;; i32x4.lt_u  (i32x4) (i8x16)
   543  (assert_return (invoke "lt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   544                                (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
   545                                (v128.const i32x4 0 0 0 0))
   546  (assert_return (invoke "lt_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   547                                (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
   548                                (v128.const i32x4 0 0 0 0))
   549  (assert_return (invoke "lt_u" (v128.const i32x4 0 0 0 0)
   550                                (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
   551                                (v128.const i32x4 0 0 0 0))
   552  (assert_return (invoke "lt_u" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   553                                (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
   554                                (v128.const i32x4 0 0 0 0))
   555  (assert_return (invoke "lt_u" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   556                                (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
   557                                (v128.const i32x4 0 0 0 0))
   558  (assert_return (invoke "lt_u" (v128.const i32x4 -8323200 0 1 4294967295)
   559                                (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
   560                                (v128.const i32x4 0 0 -1 0))
   561  (assert_return (invoke "lt_u" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
   562                                (v128.const i8x16 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA))
   563                                (v128.const i32x4 -1 -1 -1 -1))
   564  
   565  ;; i32x4.lt_u  (i32x4) (i16x8)
   566  (assert_return (invoke "lt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   567                                (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
   568                                (v128.const i32x4 0 0 0 0))
   569  (assert_return (invoke "lt_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   570                                (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
   571                                (v128.const i32x4 0 0 0 0))
   572  (assert_return (invoke "lt_u" (v128.const i32x4 0 0 0 0)
   573                                (v128.const i16x8 0 0 0 0 0 0 0 0))
   574                                (v128.const i32x4 0 0 0 0))
   575  (assert_return (invoke "lt_u" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   576                                (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
   577                                (v128.const i32x4 0 0 0 0))
   578  (assert_return (invoke "lt_u" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   579                                (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
   580                                (v128.const i32x4 0 0 0 0))
   581  (assert_return (invoke "lt_u" (v128.const i32x4 -128 0 1 255)
   582                                (v128.const i16x8 -128 -128 0 0 1 1 255 255))
   583                                (v128.const i32x4 0 0 -1 -1))
   584  (assert_return (invoke "lt_u" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
   585                                (v128.const i16x8 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555))
   586                                (v128.const i32x4 0 0 0 0))
   587  (assert_return (invoke "lt_u" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
   588                                (v128.const i32x4 123456789 123456789 123456789 123456789))
   589                                (v128.const i32x4 0 0 0 0))
   590  (assert_return (invoke "lt_u" (v128.const i32x4 0x0_90AB_cdef 0x0_90AB_cdef 0x0_90AB_cdef 0x0_90AB_cdef)
   591                                (v128.const i32x4 -0x6f543210 -0x6f543210 -0x6f543210 -0x6f543210))
   592                                (v128.const i32x4 -1 -1 -1 -1))
   593  
   594  ;; le_s
   595  
   596  ;; i32x4.le_s  (i32x4) (i32x4)
   597  
   598  ;; hex vs hex
   599  (assert_return (invoke "le_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   600                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
   601                                (v128.const i32x4 -1 -1 -1 -1))
   602  (assert_return (invoke "le_s" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
   603                                (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
   604                                (v128.const i32x4 -1 -1 -1 -1))
   605  (assert_return (invoke "le_s" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
   606                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   607                                (v128.const i32x4 -1 -1 -1 -1))
   608  (assert_return (invoke "le_s" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   609                                (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
   610                                (v128.const i32x4 -1 -1 -1 -1))
   611  (assert_return (invoke "le_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
   612                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   613                                (v128.const i32x4 -1 -1 -1 -1))
   614  (assert_return (invoke "le_s" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   615                                (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
   616                                (v128.const i32x4 -1 -1 -1 -1))
   617  (assert_return (invoke "le_s" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
   618                                (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
   619                                (v128.const i32x4 -1 -1 -1 -1))
   620  
   621  ;; hex vs dec
   622  (assert_return (invoke "le_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   623                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   624                                (v128.const i32x4 -1 -1 -1 -1))
   625  (assert_return (invoke "le_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   626                                (v128.const i32x4 -1 -1 -1 -1))
   627                                (v128.const i32x4 -1 -1 -1 -1))
   628  (assert_return (invoke "le_s" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   629                                (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
   630                                (v128.const i32x4 -1 -1 -1 -1))
   631  (assert_return (invoke "le_s" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   632                                (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
   633                                (v128.const i32x4 -1 -1 -1 -1))
   634  (assert_return (invoke "le_s" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
   635                                (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
   636                                (v128.const i32x4 -1 -1 -1 -1))
   637  
   638  ;; dec vs dec
   639  (assert_return (invoke "le_s" (v128.const i32x4 -1 -1 -1 -1)
   640                                (v128.const i32x4 -1 -1 -1 -1))
   641                                (v128.const i32x4 -1 -1 -1 -1))
   642  (assert_return (invoke "le_s" (v128.const i32x4 0 0 0 0)
   643                                (v128.const i32x4 0 0 0 0))
   644                                (v128.const i32x4 -1 -1 -1 -1))
   645  (assert_return (invoke "le_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   646                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   647                                (v128.const i32x4 -1 -1 -1 -1))
   648  (assert_return (invoke "le_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   649                                (v128.const i32x4 -1 -1 -1 -1))
   650                                (v128.const i32x4 -1 -1 -1 -1))
   651  (assert_return (invoke "le_s" (v128.const i32x4 4294967295 4294967295 0 0)
   652                                (v128.const i32x4 4294967295 4294967295 0 0))
   653                                (v128.const i32x4 -1 -1 -1 -1))
   654  (assert_return (invoke "le_s" (v128.const i32x4 0 0 4294967295 4294967295)
   655                                (v128.const i32x4 0 0 4294967295 4294967295))
   656                                (v128.const i32x4 -1 -1 -1 -1))
   657  (assert_return (invoke "le_s" (v128.const i32x4 -2147483647 4294967295 0 -1)
   658                                (v128.const i32x4 2147483649 -1 0 -1))
   659                                (v128.const i32x4 -1 -1 -1 -1))
   660  
   661  ;; hex vs float
   662  (assert_return (invoke "le_s" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
   663                                (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
   664                                (v128.const i32x4 -1 -1 -1 -1))
   665  (assert_return (invoke "le_s" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
   666                                (v128.const f32x4 1.0 127.0 128.0 255.0))
   667                                (v128.const i32x4 -1 -1 -1 -1))
   668  
   669  ;; not equal
   670  (assert_return (invoke "le_s" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   671                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   672                                (v128.const i32x4 0 0 0 0))
   673  (assert_return (invoke "le_s" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   674                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   675                                (v128.const i32x4 0 0 -1 -1))
   676  (assert_return (invoke "le_s" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
   677                                (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
   678                                (v128.const i32x4 0 0 0 -1))
   679  (assert_return (invoke "le_s" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
   680                                (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
   681                                (v128.const i32x4 -1 -1 0 0))
   682  (assert_return (invoke "le_s" (v128.const i32x4 2147483648 2147483647 0 -1)
   683                                (v128.const i32x4 -2147483648 -2147483647 -1 0))
   684                                (v128.const i32x4 -1 0 0 -1))
   685  
   686  ;; i32x4.le_s  (i32x4)(i8x16)
   687  (assert_return (invoke "le_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   688                                (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
   689                                (v128.const i32x4 -1 -1 -1 -1))
   690  (assert_return (invoke "le_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   691                                (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
   692                                (v128.const i32x4 -1 -1 -1 -1))
   693  (assert_return (invoke "le_s" (v128.const i32x4 0 0 0 0)
   694                                (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
   695                                (v128.const i32x4 -1 -1 -1 -1))
   696  (assert_return (invoke "le_s" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   697                                (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
   698                                (v128.const i32x4 -1 -1 -1 -1))
   699  (assert_return (invoke "le_s" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   700                                (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
   701                                (v128.const i32x4 -1 -1 -1 -1))
   702  (assert_return (invoke "le_s" (v128.const i32x4 -8323200 0 1 4294967295)
   703                                (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
   704                                (v128.const i32x4 0 -1 -1 -1))
   705  (assert_return (invoke "le_s" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
   706                                (v128.const i8x16 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA))
   707                                (v128.const i32x4 0 0 0 0))
   708  
   709  ;; i32x4.le_s  (i32x4) (i16x8)
   710  (assert_return (invoke "le_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   711                                (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
   712                                (v128.const i32x4 -1 -1 -1 -1))
   713  (assert_return (invoke "le_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   714                                (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
   715                                (v128.const i32x4 -1 -1 -1 -1))
   716  (assert_return (invoke "le_s" (v128.const i32x4 0 0 0 0)
   717                                (v128.const i16x8 0 0 0 0 0 0 0 0))
   718                                (v128.const i32x4 -1 -1 -1 -1))
   719  (assert_return (invoke "le_s" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   720                                (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
   721                                (v128.const i32x4 -1 -1 -1 -1))
   722  (assert_return (invoke "le_s" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   723                                (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
   724                                (v128.const i32x4 -1 -1 -1 -1))
   725  (assert_return (invoke "le_s" (v128.const i32x4 -128 0 1 255)
   726                                (v128.const i16x8 -128 -128 0 0 1 1 255 255))
   727                                (v128.const i32x4 0 -1 -1 -1))
   728  (assert_return (invoke "le_s" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
   729                                (v128.const i16x8 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555))
   730                                (v128.const i32x4 -1 -1 -1 -1))
   731  (assert_return (invoke "le_s" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
   732                                (v128.const i32x4 123456789 123456789 123456789 123456789))
   733                                (v128.const i32x4 -1 -1 -1 -1))
   734  (assert_return (invoke "le_s" (v128.const i32x4 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678)
   735                                (v128.const i32x4 0x12345678 0x12345678 0x12345678 0x12345678))
   736                                (v128.const i32x4 -1 -1 -1 -1))
   737  
   738  ;; le_u
   739  
   740  ;; i32x4.le_u  (i32x4) (i32x4)
   741  
   742  ;; hex vs hex
   743  (assert_return (invoke "le_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   744                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
   745                                (v128.const i32x4 -1 -1 -1 -1))
   746  (assert_return (invoke "le_u" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
   747                                (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
   748                                (v128.const i32x4 -1 -1 -1 -1))
   749  (assert_return (invoke "le_u" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
   750                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   751                                (v128.const i32x4 -1 -1 -1 -1))
   752  (assert_return (invoke "le_u" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   753                                (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
   754                                (v128.const i32x4 -1 -1 -1 -1))
   755  (assert_return (invoke "le_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
   756                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   757                                (v128.const i32x4 -1 -1 -1 -1))
   758  (assert_return (invoke "le_u" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   759                                (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
   760                                (v128.const i32x4 -1 -1 -1 -1))
   761  (assert_return (invoke "le_u" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
   762                                (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
   763                                (v128.const i32x4 -1 -1 -1 -1))
   764  
   765  ;; hex vs dec
   766  (assert_return (invoke "le_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   767                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   768                                (v128.const i32x4 -1 -1 -1 -1))
   769  (assert_return (invoke "le_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   770                                (v128.const i32x4 -1 -1 -1 -1))
   771                                (v128.const i32x4 -1 -1 -1 -1))
   772  (assert_return (invoke "le_u" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   773                                (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
   774                                (v128.const i32x4 -1 -1 -1 -1))
   775  (assert_return (invoke "le_u" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   776                                (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
   777                                (v128.const i32x4 -1 -1 -1 -1))
   778  (assert_return (invoke "le_u" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
   779                                (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
   780                                (v128.const i32x4 -1 -1 -1 -1))
   781  
   782  ;; dec vs dec
   783  (assert_return (invoke "le_u" (v128.const i32x4 -1 -1 -1 -1)
   784                                (v128.const i32x4 -1 -1 -1 -1))
   785                                (v128.const i32x4 -1 -1 -1 -1))
   786  (assert_return (invoke "le_u" (v128.const i32x4 0 0 0 0)
   787                                (v128.const i32x4 0 0 0 0))
   788                                (v128.const i32x4 -1 -1 -1 -1))
   789  (assert_return (invoke "le_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   790                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   791                                (v128.const i32x4 -1 -1 -1 -1))
   792  (assert_return (invoke "le_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   793                                (v128.const i32x4 -1 -1 -1 -1))
   794                                (v128.const i32x4 -1 -1 -1 -1))
   795  (assert_return (invoke "le_u" (v128.const i32x4 4294967295 4294967295 0 0)
   796                                (v128.const i32x4 4294967295 4294967295 0 0))
   797                                (v128.const i32x4 -1 -1 -1 -1))
   798  (assert_return (invoke "le_u" (v128.const i32x4 0 0 4294967295 4294967295)
   799                                (v128.const i32x4 0 0 4294967295 4294967295))
   800                                (v128.const i32x4 -1 -1 -1 -1))
   801  (assert_return (invoke "le_u" (v128.const i32x4 -2147483647 4294967295 0 -1)
   802                                (v128.const i32x4 2147483649 -1 0 -1))
   803                                (v128.const i32x4 -1 -1 -1 -1))
   804  
   805  ;; hex vs float
   806  (assert_return (invoke "le_u" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
   807                                (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
   808                                (v128.const i32x4 -1 -1 -1 -1))
   809  (assert_return (invoke "le_u" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
   810                                (v128.const f32x4 1.0 127.0 128.0 255.0))
   811                                (v128.const i32x4 -1 -1 -1 -1))
   812  
   813  ;; not equal
   814  (assert_return (invoke "le_u" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   815                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   816                                (v128.const i32x4 -1 -1 -1 -1))
   817  (assert_return (invoke "le_u" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   818                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   819                                (v128.const i32x4 -1 -1 0 0))
   820  (assert_return (invoke "le_u" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
   821                                (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
   822                                (v128.const i32x4 -1 0 0 0))
   823  (assert_return (invoke "le_u" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
   824                                (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
   825                                (v128.const i32x4 -1 -1 0 0))
   826  (assert_return (invoke "le_u" (v128.const i32x4 2147483648 2147483647 0 -1)
   827                                (v128.const i32x4 -2147483648 -2147483647 -1 0))
   828                                (v128.const i32x4 -1 -1 -1 0))
   829  
   830  ;; i32x4.le_u  (i32x4) (i8x16)
   831  (assert_return (invoke "le_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   832                                (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
   833                                (v128.const i32x4 -1 -1 -1 -1))
   834  (assert_return (invoke "le_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   835                                (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
   836                                (v128.const i32x4 -1 -1 -1 -1))
   837  (assert_return (invoke "le_u" (v128.const i32x4 0 0 0 0)
   838                                (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
   839                                (v128.const i32x4 -1 -1 -1 -1))
   840  (assert_return (invoke "le_u" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   841                                (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
   842                                (v128.const i32x4 -1 -1 -1 -1))
   843  (assert_return (invoke "le_u" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   844                                (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
   845                                (v128.const i32x4 -1 -1 -1 -1))
   846  (assert_return (invoke "le_u" (v128.const i32x4 -8323200 0 1 4294967295)
   847                                (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
   848                                (v128.const i32x4 0 -1 -1 -1))
   849  (assert_return (invoke "le_u" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
   850                                (v128.const i8x16 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA))
   851                                (v128.const i32x4 -1 -1 -1 -1))
   852  
   853  ;; i32x4.le_u  (i32x4) (i16x8)
   854  (assert_return (invoke "le_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   855                                (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
   856                                (v128.const i32x4 -1 -1 -1 -1))
   857  (assert_return (invoke "le_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   858                                (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
   859                                (v128.const i32x4 -1 -1 -1 -1))
   860  (assert_return (invoke "le_u" (v128.const i32x4 0 0 0 0)
   861                                (v128.const i16x8 0 0 0 0 0 0 0 0))
   862                                (v128.const i32x4 -1 -1 -1 -1))
   863  (assert_return (invoke "le_u" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   864                                (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
   865                                (v128.const i32x4 -1 -1 -1 -1))
   866  (assert_return (invoke "le_u" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   867                                (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
   868                                (v128.const i32x4 -1 -1 -1 -1))
   869  (assert_return (invoke "le_u" (v128.const i32x4 -128 0 1 255)
   870                                (v128.const i16x8 -128 -128 0 0 1 1 255 255))
   871                                (v128.const i32x4 0 -1 -1 -1))
   872  (assert_return (invoke "le_u" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
   873                                (v128.const i16x8 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555))
   874                                (v128.const i32x4 0 0 0 0))
   875  (assert_return (invoke "le_u" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
   876                                (v128.const i32x4 123456789 123456789 123456789 123456789))
   877                                (v128.const i32x4 -1 -1 -1 -1))
   878  (assert_return (invoke "le_u" (v128.const i32x4 0x0_90AB_cdef 0x0_90AB_cdef 0x0_90AB_cdef 0x0_90AB_cdef)
   879                                (v128.const i32x4 0x90ABcdef 0x90ABcdef 0x90ABcdef 0x90ABcdef))
   880                                (v128.const i32x4 -1 -1 -1 -1))
   881  
   882  ;; gt_s
   883  
   884  ;; i32x4.gt_s  (i32x4) (i32x4)
   885  
   886  ;; hex vs hex
   887  (assert_return (invoke "gt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   888                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
   889                                (v128.const i32x4 0 0 0 0))
   890  (assert_return (invoke "gt_s" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
   891                                (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
   892                                (v128.const i32x4 0 0 0 0))
   893  (assert_return (invoke "gt_s" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
   894                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   895                                (v128.const i32x4 0 0 0 0))
   896  (assert_return (invoke "gt_s" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   897                                (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
   898                                (v128.const i32x4 0 0 0 0))
   899  (assert_return (invoke "gt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
   900                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   901                                (v128.const i32x4 0 0 0 0))
   902  (assert_return (invoke "gt_s" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   903                                (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
   904                                (v128.const i32x4 0 0 0 0))
   905  (assert_return (invoke "gt_s" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
   906                                (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
   907                                (v128.const i32x4 0 0 0 0))
   908  
   909  ;; hex vs dec
   910  (assert_return (invoke "gt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   911                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   912                                (v128.const i32x4 0 0 0 0))
   913  (assert_return (invoke "gt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   914                                (v128.const i32x4 -1 -1 -1 -1))
   915                                (v128.const i32x4 0 0 0 0))
   916  (assert_return (invoke "gt_s" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   917                                (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
   918                                (v128.const i32x4 0 0 0 0))
   919  (assert_return (invoke "gt_s" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
   920                                (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
   921                                (v128.const i32x4 0 0 0 0))
   922  (assert_return (invoke "gt_s" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
   923                                (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
   924                                (v128.const i32x4 0 0 0 0))
   925  
   926  ;; dec vs dec
   927  (assert_return (invoke "gt_s" (v128.const i32x4 -1 -1 -1 -1)
   928                                (v128.const i32x4 -1 -1 -1 -1))
   929                                (v128.const i32x4 0 0 0 0))
   930  (assert_return (invoke "gt_s" (v128.const i32x4 0 0 0 0)
   931                                (v128.const i32x4 0 0 0 0))
   932                                (v128.const i32x4 0 0 0 0))
   933  (assert_return (invoke "gt_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   934                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
   935                                (v128.const i32x4 0 0 0 0))
   936  (assert_return (invoke "gt_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   937                                (v128.const i32x4 -1 -1 -1 -1))
   938                                (v128.const i32x4 0 0 0 0))
   939  (assert_return (invoke "gt_s" (v128.const i32x4 4294967295 4294967295 0 0)
   940                                (v128.const i32x4 4294967295 4294967295 0 0))
   941                                (v128.const i32x4 0 0 0 0))
   942  (assert_return (invoke "gt_s" (v128.const i32x4 0 0 4294967295 4294967295)
   943                                (v128.const i32x4 0 0 4294967295 4294967295))
   944                                (v128.const i32x4 0 0 0 0))
   945  (assert_return (invoke "gt_s" (v128.const i32x4 -2147483647 4294967295 0 -1)
   946                                (v128.const i32x4 2147483649 -1 0 -1))
   947                                (v128.const i32x4 0 0 0 0))
   948  
   949  ;; hex vs float
   950  (assert_return (invoke "gt_s" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
   951                                (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
   952                                (v128.const i32x4 0 0 0 0))
   953  (assert_return (invoke "gt_s" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
   954                                (v128.const f32x4 1.0 127.0 128.0 255.0))
   955                                (v128.const i32x4 0 0 0 0))
   956  
   957  ;; not equal
   958  (assert_return (invoke "gt_s" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
   959                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
   960                                (v128.const i32x4 -1 -1 -1 -1))
   961  (assert_return (invoke "gt_s" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
   962                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
   963                                (v128.const i32x4 -1 -1 0 0))
   964  (assert_return (invoke "gt_s" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
   965                                (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
   966                                (v128.const i32x4 -1 -1 -1 0))
   967  (assert_return (invoke "gt_s" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
   968                                (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
   969                                (v128.const i32x4 0 0 -1 -1))
   970  (assert_return (invoke "gt_s" (v128.const i32x4 2147483648 2147483647 0 -1)
   971                                (v128.const i32x4 -2147483648 -2147483647 -1 0))
   972                                (v128.const i32x4 0 -1 -1 0))
   973  
   974  ;; i32x4.gt_s  (i32x4) (i8x16)
   975  (assert_return (invoke "gt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   976                                (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
   977                                (v128.const i32x4 0 0 0 0))
   978  (assert_return (invoke "gt_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
   979                                (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
   980                                (v128.const i32x4 0 0 0 0))
   981  (assert_return (invoke "gt_s" (v128.const i32x4 0 0 0 0)
   982                                (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
   983                                (v128.const i32x4 0 0 0 0))
   984  (assert_return (invoke "gt_s" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
   985                                (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
   986                                (v128.const i32x4 0 0 0 0))
   987  (assert_return (invoke "gt_s" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
   988                                (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
   989                                (v128.const i32x4 0 0 0 0))
   990  (assert_return (invoke "gt_s" (v128.const i32x4 -8323200 0 1 4294967295)
   991                                (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
   992                                (v128.const i32x4 -1 0 0 0))
   993  (assert_return (invoke "gt_s" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
   994                                (v128.const i8x16 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA))
   995                                (v128.const i32x4 -1 -1 -1 -1))
   996  
   997  ;; i32x4.gt_s  (i32x4) (i16x8)
   998  (assert_return (invoke "gt_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
   999                                (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
  1000                                (v128.const i32x4 0 0 0 0))
  1001  (assert_return (invoke "gt_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1002                                (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
  1003                                (v128.const i32x4 0 0 0 0))
  1004  (assert_return (invoke "gt_s" (v128.const i32x4 0 0 0 0)
  1005                                (v128.const i16x8 0 0 0 0 0 0 0 0))
  1006                                (v128.const i32x4 0 0 0 0))
  1007  (assert_return (invoke "gt_s" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
  1008                                (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
  1009                                (v128.const i32x4 0 0 0 0))
  1010  (assert_return (invoke "gt_s" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
  1011                                (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
  1012                                (v128.const i32x4 0 0 0 0))
  1013  (assert_return (invoke "gt_s" (v128.const i32x4 65535 0 1 32768)
  1014                                (v128.const i16x8 65535 65535 0 0 1 1 32768 32768))
  1015                                (v128.const i32x4 -1 0 0 -1))
  1016  (assert_return (invoke "gt_s" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
  1017                                (v128.const i16x8 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555))
  1018                                (v128.const i32x4 0 0 0 0))
  1019  (assert_return (invoke "gt_s" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
  1020                                (v128.const i32x4 123456789 123456789 123456789 123456789))
  1021                                (v128.const i32x4 0 0 0 0))
  1022  (assert_return (invoke "gt_s" (v128.const i32x4 0x0_90AB_cdef 0x0_90AB_cdef 0x0_90AB_cdef 0x0_90AB_cdef)
  1023                                (v128.const i32x4 -0x6f543211 -0x6f543211 -0x6f543211 -0x6f543211))
  1024                                (v128.const i32x4 0 0 0 0))
  1025  
  1026  ;; gt_u
  1027  
  1028  ;; i32x4.gt_u  (i32x4) (i32x4)
  1029  
  1030  ;; hex vs hex
  1031  (assert_return (invoke "gt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1032                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
  1033                                (v128.const i32x4 0 0 0 0))
  1034  (assert_return (invoke "gt_u" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
  1035                                (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
  1036                                (v128.const i32x4 0 0 0 0))
  1037  (assert_return (invoke "gt_u" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
  1038                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
  1039                                (v128.const i32x4 0 0 0 0))
  1040  (assert_return (invoke "gt_u" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
  1041                                (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
  1042                                (v128.const i32x4 0 0 0 0))
  1043  (assert_return (invoke "gt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
  1044                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
  1045                                (v128.const i32x4 0 0 0 0))
  1046  (assert_return (invoke "gt_u" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
  1047                                (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
  1048                                (v128.const i32x4 0 0 0 0))
  1049  (assert_return (invoke "gt_u" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
  1050                                (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
  1051                                (v128.const i32x4 0 0 0 0))
  1052  
  1053  ;; hex vs dec
  1054  (assert_return (invoke "gt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1055                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
  1056                                (v128.const i32x4 0 0 0 0))
  1057  (assert_return (invoke "gt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1058                                (v128.const i32x4 -1 -1 -1 -1))
  1059                                (v128.const i32x4 0 0 0 0))
  1060  (assert_return (invoke "gt_u" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
  1061                                (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
  1062                                (v128.const i32x4 0 0 0 0))
  1063  (assert_return (invoke "gt_u" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
  1064                                (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
  1065                                (v128.const i32x4 0 0 0 0))
  1066  (assert_return (invoke "gt_u" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
  1067                                (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
  1068                                (v128.const i32x4 0 0 0 0))
  1069  
  1070  ;; dec vs dec
  1071  (assert_return (invoke "gt_u" (v128.const i32x4 -1 -1 -1 -1)
  1072                                (v128.const i32x4 -1 -1 -1 -1))
  1073                                (v128.const i32x4 0 0 0 0))
  1074  (assert_return (invoke "gt_u" (v128.const i32x4 0 0 0 0)
  1075                                (v128.const i32x4 0 0 0 0))
  1076                                (v128.const i32x4 0 0 0 0))
  1077  (assert_return (invoke "gt_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1078                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
  1079                                (v128.const i32x4 0 0 0 0))
  1080  (assert_return (invoke "gt_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1081                                (v128.const i32x4 -1 -1 -1 -1))
  1082                                (v128.const i32x4 0 0 0 0))
  1083  (assert_return (invoke "gt_u" (v128.const i32x4 4294967295 4294967295 0 0)
  1084                                (v128.const i32x4 4294967295 4294967295 0 0))
  1085                                (v128.const i32x4 0 0 0 0))
  1086  (assert_return (invoke "gt_u" (v128.const i32x4 0 0 4294967295 4294967295)
  1087                                (v128.const i32x4 0 0 4294967295 4294967295))
  1088                                (v128.const i32x4 0 0 0 0))
  1089  (assert_return (invoke "gt_u" (v128.const i32x4 -2147483647 4294967295 0 -1)
  1090                                (v128.const i32x4 2147483649 -1 0 -1))
  1091                                (v128.const i32x4 0 0 0 0))
  1092  
  1093  ;; hex vs float
  1094  (assert_return (invoke "gt_u" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
  1095                                (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
  1096                                (v128.const i32x4 0 0 0 0))
  1097  (assert_return (invoke "gt_u" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
  1098                                (v128.const f32x4 1.0 127.0 128.0 255.0))
  1099                                (v128.const i32x4 0 0 0 0))
  1100  
  1101  ;; not equal
  1102  (assert_return (invoke "gt_u" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
  1103                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
  1104                                (v128.const i32x4 0 0 0 0))
  1105  (assert_return (invoke "gt_u" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
  1106                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
  1107                                (v128.const i32x4 0 0 -1 -1))
  1108  (assert_return (invoke "gt_u" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
  1109                                (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
  1110                                (v128.const i32x4 0 -1 -1 -1))
  1111  (assert_return (invoke "gt_u" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
  1112                                (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
  1113                                (v128.const i32x4 0 0 -1 -1))
  1114  (assert_return (invoke "gt_u" (v128.const i32x4 2147483648 2147483647 0 -1)
  1115                                (v128.const i32x4 -2147483648 -2147483647 -1 0))
  1116                                (v128.const i32x4 0 0 0 -1))
  1117  
  1118  ;; i32x4.gt_u  (i32x4) (i8x16)
  1119  (assert_return (invoke "gt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1120                                (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
  1121                                (v128.const i32x4 0 0 0 0))
  1122  (assert_return (invoke "gt_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1123                                (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
  1124                                (v128.const i32x4 0 0 0 0))
  1125  (assert_return (invoke "gt_u" (v128.const i32x4 0 0 0 0)
  1126                                (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
  1127                                (v128.const i32x4 0 0 0 0))
  1128  (assert_return (invoke "gt_u" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
  1129                                (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
  1130                                (v128.const i32x4 0 0 0 0))
  1131  (assert_return (invoke "gt_u" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
  1132                                (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
  1133                                (v128.const i32x4 0 0 0 0))
  1134  (assert_return (invoke "gt_u" (v128.const i32x4 -8323200 0 1 4294967295)
  1135                                (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
  1136                                (v128.const i32x4 -1 0 0 0))
  1137  (assert_return (invoke "gt_u" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
  1138                                (v128.const i8x16 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA 0xAA))
  1139                                (v128.const i32x4 0 0 0 0))
  1140  
  1141  ;; i32x4.gt_u  (i32x4) (i16x8)
  1142  (assert_return (invoke "gt_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1143                                (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
  1144                                (v128.const i32x4 0 0 0 0))
  1145  (assert_return (invoke "gt_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1146                                (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
  1147                                (v128.const i32x4 0 0 0 0))
  1148  (assert_return (invoke "gt_u" (v128.const i32x4 0 0 0 0)
  1149                                (v128.const i16x8 0 0 0 0 0 0 0 0))
  1150                                (v128.const i32x4 0 0 0 0))
  1151  (assert_return (invoke "gt_u" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
  1152                                (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
  1153                                (v128.const i32x4 0 0 0 0))
  1154  (assert_return (invoke "gt_u" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
  1155                                (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
  1156                                (v128.const i32x4 0 0 0 0))
  1157  (assert_return (invoke "gt_u" (v128.const i32x4 -128 0 1 255)
  1158                                (v128.const i16x8 -128 -128 0 0 1 1 255 255))
  1159                                (v128.const i32x4 -1 0 0 0))
  1160  (assert_return (invoke "gt_u" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
  1161                                (v128.const i16x8 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555))
  1162                                (v128.const i32x4 -1 -1 -1 -1))
  1163  (assert_return (invoke "gt_u" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
  1164                                (v128.const i32x4 123456789 123456789 123456789 123456789))
  1165                                (v128.const i32x4 0 0 0 0))
  1166  (assert_return (invoke "gt_u" (v128.const i32x4 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678)
  1167                                (v128.const i32x4 0x12345678 0x12345678 0x12345678 0x12345678))
  1168                                (v128.const i32x4 0 0 0 0))
  1169  
  1170  ;; ge_s
  1171  
  1172  ;; i32x4.ge_s  (i32x4) (i32x4)
  1173  
  1174  ;; hex vs hex
  1175  (assert_return (invoke "ge_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1176                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
  1177                                (v128.const i32x4 -1 -1 -1 -1))
  1178  (assert_return (invoke "ge_s" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
  1179                                (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
  1180                                (v128.const i32x4 -1 -1 -1 -1))
  1181  (assert_return (invoke "ge_s" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
  1182                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
  1183                                (v128.const i32x4 -1 -1 -1 -1))
  1184  (assert_return (invoke "ge_s" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
  1185                                (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
  1186                                (v128.const i32x4 -1 -1 -1 -1))
  1187  (assert_return (invoke "ge_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
  1188                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
  1189                                (v128.const i32x4 -1 -1 -1 -1))
  1190  (assert_return (invoke "ge_s" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
  1191                                (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
  1192                                (v128.const i32x4 -1 -1 -1 -1))
  1193  (assert_return (invoke "ge_s" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
  1194                                (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
  1195                                (v128.const i32x4 -1 -1 -1 -1))
  1196  
  1197  ;; hex vs dec
  1198  (assert_return (invoke "ge_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1199                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
  1200                                (v128.const i32x4 -1 -1 -1 -1))
  1201  (assert_return (invoke "ge_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1202                                (v128.const i32x4 -1 -1 -1 -1))
  1203                                (v128.const i32x4 -1 -1 -1 -1))
  1204  (assert_return (invoke "ge_s" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
  1205                                (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
  1206                                (v128.const i32x4 -1 -1 -1 -1))
  1207  (assert_return (invoke "ge_s" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
  1208                                (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
  1209                                (v128.const i32x4 -1 -1 -1 -1))
  1210  (assert_return (invoke "ge_s" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
  1211                                (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
  1212                                (v128.const i32x4 -1 -1 -1 -1))
  1213  
  1214  ;; dec vs dec
  1215  (assert_return (invoke "ge_s" (v128.const i32x4 -1 -1 -1 -1)
  1216                                (v128.const i32x4 -1 -1 -1 -1))
  1217                                (v128.const i32x4 -1 -1 -1 -1))
  1218  (assert_return (invoke "ge_s" (v128.const i32x4 0 0 0 0)
  1219                                (v128.const i32x4 0 0 0 0))
  1220                                (v128.const i32x4 -1 -1 -1 -1))
  1221  (assert_return (invoke "ge_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1222                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
  1223                                (v128.const i32x4 -1 -1 -1 -1))
  1224  (assert_return (invoke "ge_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1225                                (v128.const i32x4 -1 -1 -1 -1))
  1226                                (v128.const i32x4 -1 -1 -1 -1))
  1227  (assert_return (invoke "ge_s" (v128.const i32x4 4294967295 4294967295 0 0)
  1228                                (v128.const i32x4 4294967295 4294967295 0 0))
  1229                                (v128.const i32x4 -1 -1 -1 -1))
  1230  (assert_return (invoke "ge_s" (v128.const i32x4 0 0 4294967295 4294967295)
  1231                                (v128.const i32x4 0 0 4294967295 4294967295))
  1232                                (v128.const i32x4 -1 -1 -1 -1))
  1233  (assert_return (invoke "ge_s" (v128.const i32x4 -2147483647 4294967295 0 -1)
  1234                                (v128.const i32x4 2147483649 -1 0 -1))
  1235                                (v128.const i32x4 -1 -1 -1 -1))
  1236  
  1237  ;; hex vs float
  1238  (assert_return (invoke "ge_s" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
  1239                                (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
  1240                                (v128.const i32x4 -1 -1 -1 -1))
  1241  (assert_return (invoke "ge_s" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
  1242                                (v128.const f32x4 1.0 127.0 128.0 255.0))
  1243                                (v128.const i32x4 -1 -1 -1 -1))
  1244  
  1245  ;; not equal
  1246  (assert_return (invoke "ge_s" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
  1247                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
  1248                                (v128.const i32x4 -1 -1 -1 -1))
  1249  (assert_return (invoke "ge_s" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
  1250                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
  1251                                (v128.const i32x4 -1 -1 0 0))
  1252  (assert_return (invoke "ge_s" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
  1253                                (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
  1254                                (v128.const i32x4 -1 -1 -1 0))
  1255  (assert_return (invoke "ge_s" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
  1256                                (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
  1257                                (v128.const i32x4 0 0 -1 -1))
  1258  (assert_return (invoke "ge_s" (v128.const i32x4 2147483648 2147483647 0 -1)
  1259                                (v128.const i32x4 -2147483648 -2147483647 -1 0))
  1260                                (v128.const i32x4 -1 -1 -1 0))
  1261  
  1262  ;; i32x4.ge_s  (i32x4) (i8x16)
  1263  (assert_return (invoke "ge_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1264                                (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
  1265                                (v128.const i32x4 -1 -1 -1 -1))
  1266  (assert_return (invoke "ge_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1267                                (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
  1268                                (v128.const i32x4 -1 -1 -1 -1))
  1269  (assert_return (invoke "ge_s" (v128.const i32x4 0 0 0 0)
  1270                                (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
  1271                                (v128.const i32x4 -1 -1 -1 -1))
  1272  (assert_return (invoke "ge_s" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
  1273                                (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
  1274                                (v128.const i32x4 -1 -1 -1 -1))
  1275  (assert_return (invoke "ge_s" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
  1276                                (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
  1277                                (v128.const i32x4 -1 -1 -1 -1))
  1278  (assert_return (invoke "ge_s" (v128.const i32x4 -8323200 0 1 4294967295)
  1279                                (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
  1280                                (v128.const i32x4 -1 -1 0 -1))
  1281  (assert_return (invoke "ge_s" (v128.const i32x4 0x55555555 0x55555555 0x55555555 0x55555555)
  1282                                (v128.const i8x16 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55))
  1283                                (v128.const i32x4 -1 -1 -1 -1))
  1284  
  1285  ;; i32x4.ge_s  (i32x4) (i16x8)
  1286  (assert_return (invoke "ge_s" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1287                                (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
  1288                                (v128.const i32x4 -1 -1 -1 -1))
  1289  (assert_return (invoke "ge_s" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1290                                (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
  1291                                (v128.const i32x4 -1 -1 -1 -1))
  1292  (assert_return (invoke "ge_s" (v128.const i32x4 0 0 0 0)
  1293                                (v128.const i16x8 0 0 0 0 0 0 0 0))
  1294                                (v128.const i32x4 -1 -1 -1 -1))
  1295  (assert_return (invoke "ge_s" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
  1296                                (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
  1297                                (v128.const i32x4 -1 -1 -1 -1))
  1298  (assert_return (invoke "ge_s" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
  1299                                (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
  1300                                (v128.const i32x4 -1 -1 -1 -1))
  1301  (assert_return (invoke "ge_s" (v128.const i32x4 65535 0 1 32768)
  1302                                (v128.const i16x8 65535 65535 0 0 1 1 32768 32768))
  1303                                (v128.const i32x4 -1 -1 0 -1))
  1304  (assert_return (invoke "ge_s" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
  1305                                (v128.const i16x8 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555))
  1306                                (v128.const i32x4 0 0 0 0))
  1307  (assert_return (invoke "ge_s" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
  1308                                (v128.const i32x4 123456789 123456789 123456789 123456789))
  1309                                (v128.const i32x4 -1 -1 -1 -1))
  1310  (assert_return (invoke "ge_s" (v128.const i32x4 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678)
  1311                                (v128.const i32x4 0x12345678 0x12345678 0x12345678 0x12345678))
  1312                                (v128.const i32x4 -1 -1 -1 -1))
  1313  
  1314  ;; ge_u
  1315  
  1316  ;; i32x4.ge_u  (i32x4) (i32x4)
  1317  
  1318  ;; hex vs hex
  1319  (assert_return (invoke "ge_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1320                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF))
  1321                                (v128.const i32x4 -1 -1 -1 -1))
  1322  (assert_return (invoke "ge_u" (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000)
  1323                                (v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000))
  1324                                (v128.const i32x4 -1 -1 -1 -1))
  1325  (assert_return (invoke "ge_u" (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0)
  1326                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
  1327                                (v128.const i32x4 -1 -1 -1 -1))
  1328  (assert_return (invoke "ge_u" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
  1329                                (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F))
  1330                                (v128.const i32x4 -1 -1 -1 -1))
  1331  (assert_return (invoke "ge_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000)
  1332                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
  1333                                (v128.const i32x4 -1 -1 -1 -1))
  1334  (assert_return (invoke "ge_u" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
  1335                                (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF))
  1336                                (v128.const i32x4 -1 -1 -1 -1))
  1337  (assert_return (invoke "ge_u" (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B)
  1338                                (v128.const i32x4 0x03020100 0x11100904 0x1A0B0A12 0xFFABAA1B))
  1339                                (v128.const i32x4 -1 -1 -1 -1))
  1340  
  1341  ;; hex vs dec
  1342  (assert_return (invoke "ge_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1343                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
  1344                                (v128.const i32x4 -1 -1 -1 -1))
  1345  (assert_return (invoke "ge_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1346                                (v128.const i32x4 -1 -1 -1 -1))
  1347                                (v128.const i32x4 -1 -1 -1 -1))
  1348  (assert_return (invoke "ge_u" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
  1349                                (v128.const i32x4 2155905152 2155905152 2155905152 2155905152))
  1350                                (v128.const i32x4 -1 -1 -1 -1))
  1351  (assert_return (invoke "ge_u" (v128.const i32x4 0x80808080 0x80808080 0x80808080 0x80808080)
  1352                                (v128.const i32x4 -2139062144 -2139062144 -2139062144 -2139062144))
  1353                                (v128.const i32x4 -1 -1 -1 -1))
  1354  (assert_return (invoke "ge_u" (v128.const i32x4 0x83828180 0x00FFFEFD 0x7F020100 0xFFFEFD80)
  1355                                (v128.const i32x4 2206368128 16776957 2130837760 4294901120))
  1356                                (v128.const i32x4 -1 -1 -1 -1))
  1357  
  1358  ;; dec vs dec
  1359  (assert_return (invoke "ge_u" (v128.const i32x4 -1 -1 -1 -1)
  1360                                (v128.const i32x4 -1 -1 -1 -1))
  1361                                (v128.const i32x4 -1 -1 -1 -1))
  1362  (assert_return (invoke "ge_u" (v128.const i32x4 0 0 0 0)
  1363                                (v128.const i32x4 0 0 0 0))
  1364                                (v128.const i32x4 -1 -1 -1 -1))
  1365  (assert_return (invoke "ge_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1366                                (v128.const i32x4 4294967295 4294967295 4294967295 4294967295))
  1367                                (v128.const i32x4 -1 -1 -1 -1))
  1368  (assert_return (invoke "ge_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1369                                (v128.const i32x4 -1 -1 -1 -1))
  1370                                (v128.const i32x4 -1 -1 -1 -1))
  1371  (assert_return (invoke "ge_u" (v128.const i32x4 4294967295 4294967295 0 0)
  1372                                (v128.const i32x4 4294967295 4294967295 0 0))
  1373                                (v128.const i32x4 -1 -1 -1 -1))
  1374  (assert_return (invoke "ge_u" (v128.const i32x4 0 0 4294967295 4294967295)
  1375                                (v128.const i32x4 0 0 4294967295 4294967295))
  1376                                (v128.const i32x4 -1 -1 -1 -1))
  1377  (assert_return (invoke "ge_u" (v128.const i32x4 -2147483647 4294967295 0 -1)
  1378                                (v128.const i32x4 2147483649 -1 0 -1))
  1379                                (v128.const i32x4 -1 -1 -1 -1))
  1380  
  1381  ;; hex vs float
  1382  (assert_return (invoke "ge_u" (v128.const i32x4 0xc3000000 0xc2fe0000 0xbf800000 0x00000000)
  1383                                (v128.const f32x4 -128.0 -127.0 -1.0 0.0))
  1384                                (v128.const i32x4 -1 -1 -1 -1))
  1385  (assert_return (invoke "ge_u" (v128.const i32x4 0x3f800000 0x42fe0000 0x43000000 0x437f0000)
  1386                                (v128.const f32x4 1.0 127.0 128.0 255.0))
  1387                                (v128.const i32x4 -1 -1 -1 -1))
  1388  
  1389  ;; not equal
  1390  (assert_return (invoke "ge_u" (v128.const i32x4 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F 0x0F0F0F0F)
  1391                                (v128.const i32x4 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0 0xF0F0F0F0))
  1392                                (v128.const i32x4 0 0 0 0))
  1393  (assert_return (invoke "ge_u" (v128.const i32x4 0x00000000 0x00000000 0xFFFFFFFF 0xFFFFFFFF)
  1394                                (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0x00000000 0x00000000))
  1395                                (v128.const i32x4 0 0 -1 -1))
  1396  (assert_return (invoke "ge_u" (v128.const i32x4 0x02030001 0x10110409 0x0B1A120A 0xABFF1BAA)
  1397                                (v128.const i32x4 0xAA1BFFAB 0x0A121A0B 0x09041110 0x01000302))
  1398                                (v128.const i32x4 0 -1 -1 -1))
  1399  (assert_return (invoke "ge_u" (v128.const i32x4 0x80018000 0x80038002 0x80058004 0x80078006)
  1400                                (v128.const i32x4 2147975174 2147844100 2147713026 2147581952))
  1401                                (v128.const i32x4 0 0 -1 -1))
  1402  (assert_return (invoke "ge_u" (v128.const i32x4 2147483648 2147483647 0 -1)
  1403                                (v128.const i32x4 -2147483648 -2147483647 -1 0))
  1404                                (v128.const i32x4 -1 0 0 -1))
  1405  
  1406  ;; i32x4.ge_u  (i32x4) (i8x16)
  1407  (assert_return (invoke "ge_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1408                                (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF))
  1409                                (v128.const i32x4 -1 -1 -1 -1))
  1410  (assert_return (invoke "ge_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1411                                (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
  1412                                (v128.const i32x4 -1 -1 -1 -1))
  1413  (assert_return (invoke "ge_u" (v128.const i32x4 0 0 0 0)
  1414                                (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
  1415                                (v128.const i32x4 -1 -1 -1 -1))
  1416  (assert_return (invoke "ge_u" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
  1417                                (v128.const i8x16 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F))
  1418                                (v128.const i32x4 -1 -1 -1 -1))
  1419  (assert_return (invoke "ge_u" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
  1420                                (v128.const i8x16 -128 -127 -126 -125 -3 -2 -1 0 0 1 2 127 128 253 254 255))
  1421                                (v128.const i32x4 -1 -1 -1 -1))
  1422  (assert_return (invoke "ge_u" (v128.const i32x4 -8323200 0 1 4294967295)
  1423                                (v128.const i8x16 -128 -128 -128 -128 0 0 0 0 1 1 1 1 255 255 255 255))
  1424                                (v128.const i32x4 -1 -1 0 -1))
  1425  (assert_return (invoke "ge_u" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
  1426                                (v128.const i8x16 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55))
  1427                                (v128.const i32x4 -1 -1 -1 -1))
  1428  
  1429  ;; i32x4.ge_u  (i32x4) (i16x8)
  1430  (assert_return (invoke "ge_u" (v128.const i32x4 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF)
  1431                                (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF))
  1432                                (v128.const i32x4 -1 -1 -1 -1))
  1433  (assert_return (invoke "ge_u" (v128.const i32x4 4294967295 4294967295 4294967295 4294967295)
  1434                                (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535))
  1435                                (v128.const i32x4 -1 -1 -1 -1))
  1436  (assert_return (invoke "ge_u" (v128.const i32x4 0 0 0 0)
  1437                                (v128.const i16x8 0 0 0 0 0 0 0 0))
  1438                                (v128.const i32x4 -1 -1 -1 -1))
  1439  (assert_return (invoke "ge_u" (v128.const i32x4 0x03020100 0x07060504 0x0B0A0908 0x0F0E0D0C)
  1440                                (v128.const i16x8 0x0100 0x0302 0x0504 0x0706 0x0908 0x0B0A 0x0D0C 0x0F0E))
  1441                                (v128.const i32x4 -1 -1 -1 -1))
  1442  (assert_return (invoke "ge_u" (v128.const i32x4 2206368128 16776957 2130837760 4294901120)
  1443                                (v128.const i16x8 33152 33666 65277 255 256 32514 64896 65534))
  1444                                (v128.const i32x4 -1 -1 -1 -1))
  1445  (assert_return (invoke "ge_u" (v128.const i32x4 -128 0 1 255)
  1446                                (v128.const i16x8 65535 65535 0 0 1 1 32768 32768))
  1447                                (v128.const i32x4 0 -1 0 0))
  1448  (assert_return (invoke "ge_u" (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA)
  1449                                (v128.const i16x8 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555 0x5555))
  1450                                (v128.const i32x4 -1 -1 -1 -1))
  1451  (assert_return (invoke "ge_u" (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)
  1452                                (v128.const i32x4 123456789 123456789 123456789 123456789))
  1453                                (v128.const i32x4 -1 -1 -1 -1))
  1454  (assert_return (invoke "ge_u" (v128.const i32x4 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678)
  1455                                (v128.const i32x4 0x12345678 0x12345678 0x12345678 0x12345678))
  1456                                (v128.const i32x4 -1 -1 -1 -1))
  1457  
  1458  
  1459  ;; Type check
  1460  
  1461  (assert_invalid (module (func (result v128) (i32x4.eq (i32.const 0) (f32.const 0)))) "type mismatch")
  1462  (assert_invalid (module (func (result v128) (i32x4.ge_s (i32.const 0) (f32.const 0)))) "type mismatch")
  1463  (assert_invalid (module (func (result v128) (i32x4.ge_u (i32.const 0) (f32.const 0)))) "type mismatch")
  1464  (assert_invalid (module (func (result v128) (i32x4.gt_s (i32.const 0) (f32.const 0)))) "type mismatch")
  1465  (assert_invalid (module (func (result v128) (i32x4.gt_u (i32.const 0) (f32.const 0)))) "type mismatch")
  1466  (assert_invalid (module (func (result v128) (i32x4.le_s (i32.const 0) (f32.const 0)))) "type mismatch")
  1467  (assert_invalid (module (func (result v128) (i32x4.le_u (i32.const 0) (f32.const 0)))) "type mismatch")
  1468  (assert_invalid (module (func (result v128) (i32x4.lt_s (i32.const 0) (f32.const 0)))) "type mismatch")
  1469  (assert_invalid (module (func (result v128) (i32x4.lt_u (i32.const 0) (f32.const 0)))) "type mismatch")
  1470  (assert_invalid (module (func (result v128) (i32x4.ne (i32.const 0) (f32.const 0)))) "type mismatch")
  1471  
  1472  
  1473  ;; combination
  1474  
  1475  (module (memory 1)
  1476    (func (export "eq-in-block")
  1477      (block
  1478        (drop
  1479          (block (result v128)
  1480            (i32x4.eq
  1481              (block (result v128) (v128.load (i32.const 0)))
  1482              (block (result v128) (v128.load (i32.const 1)))
  1483            )
  1484          )
  1485        )
  1486      )
  1487    )
  1488    (func (export "ne-in-block")
  1489      (block
  1490        (drop
  1491          (block (result v128)
  1492            (i32x4.ne
  1493              (block (result v128) (v128.load (i32.const 0)))
  1494              (block (result v128) (v128.load (i32.const 1)))
  1495            )
  1496          )
  1497        )
  1498      )
  1499    )
  1500    (func (export "lt_s-in-block")
  1501      (block
  1502        (drop
  1503          (block (result v128)
  1504            (i32x4.lt_s
  1505              (block (result v128) (v128.load (i32.const 0)))
  1506              (block (result v128) (v128.load (i32.const 1)))
  1507            )
  1508          )
  1509        )
  1510      )
  1511    )
  1512    (func (export "le_u-in-block")
  1513      (block
  1514        (drop
  1515          (block (result v128)
  1516            (i32x4.le_u
  1517              (block (result v128) (v128.load (i32.const 0)))
  1518              (block (result v128) (v128.load (i32.const 1)))
  1519            )
  1520          )
  1521        )
  1522      )
  1523    )
  1524    (func (export "gt_u-in-block")
  1525      (block
  1526        (drop
  1527          (block (result v128)
  1528            (i32x4.gt_u
  1529              (block (result v128) (v128.load (i32.const 0)))
  1530              (block (result v128) (v128.load (i32.const 1)))
  1531            )
  1532          )
  1533        )
  1534      )
  1535    )
  1536    (func (export "ge_s-in-block")
  1537      (block
  1538        (drop
  1539          (block (result v128)
  1540            (i32x4.ge_s
  1541              (block (result v128) (v128.load (i32.const 0)))
  1542              (block (result v128) (v128.load (i32.const 1)))
  1543            )
  1544          )
  1545        )
  1546      )
  1547    )
  1548    (func (export "nested-eq")
  1549      (drop
  1550        (i32x4.eq
  1551          (i32x4.eq
  1552            (i32x4.eq
  1553              (v128.load (i32.const 0))
  1554              (v128.load (i32.const 1))
  1555            )
  1556            (i32x4.eq
  1557              (v128.load (i32.const 2))
  1558              (v128.load (i32.const 3))
  1559            )
  1560          )
  1561          (i32x4.eq
  1562            (i32x4.eq
  1563              (v128.load (i32.const 0))
  1564              (v128.load (i32.const 1))
  1565            )
  1566            (i32x4.eq
  1567              (v128.load (i32.const 2))
  1568              (v128.load (i32.const 3))
  1569            )
  1570          )
  1571        )
  1572      )
  1573    )
  1574    (func (export "nested-ne")
  1575      (drop
  1576        (i32x4.ne
  1577          (i32x4.ne
  1578            (i32x4.ne
  1579              (v128.load (i32.const 0))
  1580              (v128.load (i32.const 1))
  1581            )
  1582            (i32x4.ne
  1583              (v128.load (i32.const 2))
  1584              (v128.load (i32.const 3))
  1585            )
  1586          )
  1587          (i32x4.ne
  1588            (i32x4.ne
  1589              (v128.load (i32.const 0))
  1590              (v128.load (i32.const 1))
  1591            )
  1592            (i32x4.ne
  1593              (v128.load (i32.const 2))
  1594              (v128.load (i32.const 3))
  1595            )
  1596          )
  1597        )
  1598      )
  1599    )
  1600    (func (export "nested-lt_s")
  1601      (drop
  1602        (i32x4.lt_s
  1603          (i32x4.lt_s
  1604            (i32x4.lt_s
  1605              (v128.load (i32.const 0))
  1606              (v128.load (i32.const 1))
  1607            )
  1608            (i32x4.lt_s
  1609              (v128.load (i32.const 2))
  1610              (v128.load (i32.const 3))
  1611            )
  1612          )
  1613          (i32x4.lt_s
  1614            (i32x4.lt_s
  1615              (v128.load (i32.const 0))
  1616              (v128.load (i32.const 1))
  1617            )
  1618            (i32x4.lt_s
  1619              (v128.load (i32.const 2))
  1620              (v128.load (i32.const 3))
  1621            )
  1622          )
  1623        )
  1624      )
  1625    )
  1626    (func (export "nested-le_u")
  1627      (drop
  1628        (i32x4.le_u
  1629          (i32x4.le_u
  1630            (i32x4.le_u
  1631              (v128.load (i32.const 0))
  1632              (v128.load (i32.const 1))
  1633            )
  1634            (i32x4.le_u
  1635              (v128.load (i32.const 2))
  1636              (v128.load (i32.const 3))
  1637            )
  1638          )
  1639          (i32x4.le_u
  1640            (i32x4.le_u
  1641              (v128.load (i32.const 0))
  1642              (v128.load (i32.const 1))
  1643            )
  1644            (i32x4.le_u
  1645              (v128.load (i32.const 2))
  1646              (v128.load (i32.const 3))
  1647            )
  1648          )
  1649        )
  1650      )
  1651    )
  1652    (func (export "nested-gt_u")
  1653      (drop
  1654        (i32x4.gt_u
  1655          (i32x4.gt_u
  1656            (i32x4.gt_u
  1657              (v128.load (i32.const 0))
  1658              (v128.load (i32.const 1))
  1659            )
  1660            (i32x4.gt_u
  1661              (v128.load (i32.const 2))
  1662              (v128.load (i32.const 3))
  1663            )
  1664          )
  1665          (i32x4.gt_u
  1666            (i32x4.gt_u
  1667              (v128.load (i32.const 0))
  1668              (v128.load (i32.const 1))
  1669            )
  1670            (i32x4.gt_u
  1671              (v128.load (i32.const 2))
  1672              (v128.load (i32.const 3))
  1673            )
  1674          )
  1675        )
  1676      )
  1677    )
  1678    (func (export "nested-ge_s")
  1679      (drop
  1680        (i32x4.ge_s
  1681          (i32x4.ge_s
  1682            (i32x4.ge_s
  1683              (v128.load (i32.const 0))
  1684              (v128.load (i32.const 1))
  1685            )
  1686            (i32x4.ge_s
  1687              (v128.load (i32.const 2))
  1688              (v128.load (i32.const 3))
  1689            )
  1690          )
  1691          (i32x4.ge_s
  1692            (i32x4.ge_s
  1693              (v128.load (i32.const 0))
  1694              (v128.load (i32.const 1))
  1695            )
  1696            (i32x4.ge_s
  1697              (v128.load (i32.const 2))
  1698              (v128.load (i32.const 3))
  1699            )
  1700          )
  1701        )
  1702      )
  1703    )
  1704    (func (export "as-param")
  1705      (drop
  1706        (i32x4.ge_u
  1707          (i32x4.eq
  1708            (i32x4.lt_s
  1709              (v128.load (i32.const 0))
  1710              (v128.load (i32.const 1))
  1711            )
  1712            (i32x4.le_u
  1713              (v128.load (i32.const 2))
  1714              (v128.load (i32.const 3))
  1715            )
  1716          )
  1717          (i32x4.ne
  1718            (i32x4.gt_s
  1719              (v128.load (i32.const 0))
  1720              (v128.load (i32.const 1))
  1721            )
  1722            (i32x4.lt_u
  1723              (v128.load (i32.const 2))
  1724              (v128.load (i32.const 3))
  1725            )
  1726          )
  1727        )
  1728      )
  1729    )
  1730  )
  1731  (assert_return (invoke "eq-in-block"))
  1732  (assert_return (invoke "ne-in-block"))
  1733  (assert_return (invoke "lt_s-in-block"))
  1734  (assert_return (invoke "le_u-in-block"))
  1735  (assert_return (invoke "gt_u-in-block"))
  1736  (assert_return (invoke "ge_s-in-block"))
  1737  (assert_return (invoke "nested-eq"))
  1738  (assert_return (invoke "nested-ne"))
  1739  (assert_return (invoke "nested-lt_s"))
  1740  (assert_return (invoke "nested-le_u"))
  1741  (assert_return (invoke "nested-gt_u"))
  1742  (assert_return (invoke "nested-ge_s"))
  1743  (assert_return (invoke "as-param"))
  1744  
  1745  
  1746  ;; Test operation with empty argument
  1747  
  1748  (assert_invalid
  1749    (module
  1750      (func $i32x4.eq-1st-arg-empty (result v128)
  1751        (i32x4.eq (v128.const i32x4 0 0 0 0))
  1752      )
  1753    )
  1754    "type mismatch"
  1755  )
  1756  (assert_invalid
  1757    (module
  1758      (func $i32x4.eq-arg-empty (result v128)
  1759        (i32x4.eq)
  1760      )
  1761    )
  1762    "type mismatch"
  1763  )
  1764  (assert_invalid
  1765    (module
  1766      (func $i32x4.ne-1st-arg-empty (result v128)
  1767        (i32x4.ne (v128.const i32x4 0 0 0 0))
  1768      )
  1769    )
  1770    "type mismatch"
  1771  )
  1772  (assert_invalid
  1773    (module
  1774      (func $i32x4.ne-arg-empty (result v128)
  1775        (i32x4.ne)
  1776      )
  1777    )
  1778    "type mismatch"
  1779  )
  1780  (assert_invalid
  1781    (module
  1782      (func $i32x4.lt_s-1st-arg-empty (result v128)
  1783        (i32x4.lt_s (v128.const i32x4 0 0 0 0))
  1784      )
  1785    )
  1786    "type mismatch"
  1787  )
  1788  (assert_invalid
  1789    (module
  1790      (func $i32x4.lt_s-arg-empty (result v128)
  1791        (i32x4.lt_s)
  1792      )
  1793    )
  1794    "type mismatch"
  1795  )
  1796  (assert_invalid
  1797    (module
  1798      (func $i32x4.lt_u-1st-arg-empty (result v128)
  1799        (i32x4.lt_u (v128.const i32x4 0 0 0 0))
  1800      )
  1801    )
  1802    "type mismatch"
  1803  )
  1804  (assert_invalid
  1805    (module
  1806      (func $i32x4.lt_u-arg-empty (result v128)
  1807        (i32x4.lt_u)
  1808      )
  1809    )
  1810    "type mismatch"
  1811  )
  1812  (assert_invalid
  1813    (module
  1814      (func $i32x4.le_s-1st-arg-empty (result v128)
  1815        (i32x4.le_s (v128.const i32x4 0 0 0 0))
  1816      )
  1817    )
  1818    "type mismatch"
  1819  )
  1820  (assert_invalid
  1821    (module
  1822      (func $i32x4.le_s-arg-empty (result v128)
  1823        (i32x4.le_s)
  1824      )
  1825    )
  1826    "type mismatch"
  1827  )
  1828  (assert_invalid
  1829    (module
  1830      (func $i32x4.le_u-1st-arg-empty (result v128)
  1831        (i32x4.le_u (v128.const i32x4 0 0 0 0))
  1832      )
  1833    )
  1834    "type mismatch"
  1835  )
  1836  (assert_invalid
  1837    (module
  1838      (func $i32x4.le_u-arg-empty (result v128)
  1839        (i32x4.le_u)
  1840      )
  1841    )
  1842    "type mismatch"
  1843  )
  1844  (assert_invalid
  1845    (module
  1846      (func $i32x4.gt_s-1st-arg-empty (result v128)
  1847        (i32x4.gt_s (v128.const i32x4 0 0 0 0))
  1848      )
  1849    )
  1850    "type mismatch"
  1851  )
  1852  (assert_invalid
  1853    (module
  1854      (func $i32x4.gt_s-arg-empty (result v128)
  1855        (i32x4.gt_s)
  1856      )
  1857    )
  1858    "type mismatch"
  1859  )
  1860  (assert_invalid
  1861    (module
  1862      (func $i32x4.gt_u-1st-arg-empty (result v128)
  1863        (i32x4.gt_u (v128.const i32x4 0 0 0 0))
  1864      )
  1865    )
  1866    "type mismatch"
  1867  )
  1868  (assert_invalid
  1869    (module
  1870      (func $i32x4.gt_u-arg-empty (result v128)
  1871        (i32x4.gt_u)
  1872      )
  1873    )
  1874    "type mismatch"
  1875  )
  1876  (assert_invalid
  1877    (module
  1878      (func $i32x4.ge_s-1st-arg-empty (result v128)
  1879        (i32x4.ge_s (v128.const i32x4 0 0 0 0))
  1880      )
  1881    )
  1882    "type mismatch"
  1883  )
  1884  (assert_invalid
  1885    (module
  1886      (func $i32x4.ge_s-arg-empty (result v128)
  1887        (i32x4.ge_s)
  1888      )
  1889    )
  1890    "type mismatch"
  1891  )
  1892  (assert_invalid
  1893    (module
  1894      (func $i32x4.ge_u-1st-arg-empty (result v128)
  1895        (i32x4.ge_u (v128.const i32x4 0 0 0 0))
  1896      )
  1897    )
  1898    "type mismatch"
  1899  )
  1900  (assert_invalid
  1901    (module
  1902      (func $i32x4.ge_u-arg-empty (result v128)
  1903        (i32x4.ge_u)
  1904      )
  1905    )
  1906    "type mismatch"
  1907  )
  1908  ;; Unknown operators
  1909  
  1910  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.eq (local.get $x) (local.get $y)))") "unknown operator")
  1911  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.ne (local.get $x) (local.get $y)))") "unknown operator")
  1912  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.lt_s (local.get $x) (local.get $y)))") "unknown operator")
  1913  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.lt_u (local.get $x) (local.get $y)))") "unknown operator")
  1914  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.le_s (local.get $x) (local.get $y)))") "unknown operator")
  1915  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.le_u (local.get $x) (local.get $y)))") "unknown operator")
  1916  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.gt_s (local.get $x) (local.get $y)))") "unknown operator")
  1917  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.gt_u (local.get $x) (local.get $y)))") "unknown operator")
  1918  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.ge_s (local.get $x) (local.get $y)))") "unknown operator")
  1919  (assert_malformed (module quote "(memory 1) (func (param $x v128) (param $y v128) (result v128) (i4x32.ge_u (local.get $x) (local.get $y)))") "unknown operator")
  1920