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