|
176 | 176 | (assert_trap (invoke "init_active" (i32.const 1)) "out of bounds") |
177 | 177 | (invoke "init_active" (i32.const 0)) |
178 | 178 |
|
| 179 | +;; Test that the data segment index is properly encoded as an unsigned (not |
| 180 | +;; signed) LEB. |
| 181 | +(module |
| 182 | + (memory 1) |
| 183 | + ;; 65 data segments. 64 is the smallest positive number that is encoded |
| 184 | + ;; differently as a signed LEB. |
| 185 | + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") |
| 186 | + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") |
| 187 | + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") |
| 188 | + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") |
| 189 | + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") |
| 190 | + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") |
| 191 | + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") |
| 192 | + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") |
| 193 | + (data "") |
| 194 | + (func (data.drop 64))) |
179 | 195 |
|
180 | 196 | ;; table.init |
181 | 197 | (module |
|
251 | 267 | (assert_trap (invoke "init_active" (i32.const 1)) "out of bounds") |
252 | 268 | (invoke "init_active" (i32.const 0)) |
253 | 269 |
|
| 270 | +;; Test that the elem segment index is properly encoded as an unsigned (not |
| 271 | +;; signed) LEB. |
| 272 | +(module |
| 273 | + (table 1 funcref) |
| 274 | + ;; 65 elem segments. 64 is the smallest positive number that is encoded |
| 275 | + ;; differently as a signed LEB. |
| 276 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 277 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 278 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 279 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 280 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 281 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 282 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 283 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 284 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 285 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 286 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 287 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 288 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 289 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 290 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 291 | + (elem funcref) (elem funcref) (elem funcref) (elem funcref) |
| 292 | + (elem funcref) |
| 293 | + (func (elem.drop 64))) |
254 | 294 |
|
255 | 295 | ;; table.copy |
256 | 296 | (module |
|
0 commit comments