Added: trunk/JSTests/wasm/references-spec-tests/bulk.wast.js (0 => 271100)
--- trunk/JSTests/wasm/references-spec-tests/bulk.wast.js (rev 0)
+++ trunk/JSTests/wasm/references-spec-tests/bulk.wast.js 2020-12-28 04:41:00 UTC (rev 271100)
@@ -0,0 +1,351 @@
+
+// bulk.wast:2
+let $1 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x05\x83\x80\x80\x80\x00\x01\x00\x01\x0b\x86\x80\x80\x80\x00\x01\x01\x03\x66\x6f\x6f");
+
+// bulk.wast:6
+let $2 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x84\x80\x80\x80\x00\x01\x60\x00\x00\x03\x83\x80\x80\x80\x00\x02\x00\x00\x04\x84\x80\x80\x80\x00\x01\x70\x00\x03\x09\x8d\x80\x80\x80\x00\x01\x05\x70\x03\xd2\x00\x0b\xd0\x70\x0b\xd2\x01\x0b\x0a\x8f\x80\x80\x80\x00\x02\x82\x80\x80\x80\x00\x00\x0b\x82\x80\x80\x80\x00\x00\x0b");
+
+// bulk.wast:13
+let $3 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x8c\x80\x80\x80\x00\x02\x60\x03\x7f\x7f\x7f\x00\x60\x01\x7f\x01\x7f\x03\x83\x80\x80\x80\x00\x02\x00\x01\x05\x83\x80\x80\x80\x00\x01\x00\x01\x07\x92\x80\x80\x80\x00\x02\x04\x66\x69\x6c\x6c\x00\x00\x07\x6c\x6f\x61\x64\x38\x5f\x75\x00\x01\x0a\x9d\x80\x80\x80\x00\x02\x8b\x80\x80\x80\x00\x00\x20\x00\x20\x01\x20\x02\xfc\x0b\x00\x0b\x87\x80\x80\x80\x00\x00\x20\x00\x2d\x00\x00\x0b");
+
+// bulk.wast:27
+run(() => call($3, "fill", [1, 255, 3]));
+
+// bulk.wast:28
+assert_return(() => call($3, "load8_u", [0]), 0);
+
+// bulk.wast:29
+assert_return(() => call($3, "load8_u", [1]), 255);
+
+// bulk.wast:30
+assert_return(() => call($3, "load8_u", [2]), 255);
+
+// bulk.wast:31
+assert_return(() => call($3, "load8_u", [3]), 255);
+
+// bulk.wast:32
+assert_return(() => call($3, "load8_u", [4]), 0);
+
+// bulk.wast:35
+run(() => call($3, "fill", [0, 48_042, 2]));
+
+// bulk.wast:36
+assert_return(() => call($3, "load8_u", [0]), 170);
+
+// bulk.wast:37
+assert_return(() => call($3, "load8_u", [1]), 170);
+
+// bulk.wast:40
+run(() => call($3, "fill", [0, 0, 65_536]));
+
+// bulk.wast:43
+assert_trap(() => call($3, "fill", [65_280, 1, 257]));
+
+// bulk.wast:45
+assert_return(() => call($3, "load8_u", [65_280]), 0);
+
+// bulk.wast:46
+assert_return(() => call($3, "load8_u", [65_535]), 0);
+
+// bulk.wast:49
+run(() => call($3, "fill", [65_536, 0, 0]));
+
+// bulk.wast:52
+assert_trap(() => call($3, "fill", [65_537, 0, 0]));
+
+// bulk.wast:57
+let $4 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x8c\x80\x80\x80\x00\x02\x60\x03\x7f\x7f\x7f\x00\x60\x01\x7f\x01\x7f\x03\x83\x80\x80\x80\x00\x02\x00\x01\x05\x84\x80\x80\x80\x00\x01\x01\x01\x01\x07\x92\x80\x80\x80\x00\x02\x04\x63\x6f\x70\x79\x00\x00\x07\x6c\x6f\x61\x64\x38\x5f\x75\x00\x01\x0a\x9e\x80\x80\x80\x00\x02\x8c\x80\x80\x80\x00\x00\x20\x00\x20\x01\x20\x02\xfc\x0a\x00\x00\x0b\x87\x80\x80\x80\x00\x00\x20\x00\x2d\x00\x00\x0b\x0b\x8a\x80\x80\x80\x00\x01\x00\x41\x00\x0b\x04\xaa\xbb\xcc\xdd");
+
+// bulk.wast:71
+run(() => call($4, "copy", [10, 0, 4]));
+
+// bulk.wast:73
+assert_return(() => call($4, "load8_u", [9]), 0);
+
+// bulk.wast:74
+assert_return(() => call($4, "load8_u", [10]), 170);
+
+// bulk.wast:75
+assert_return(() => call($4, "load8_u", [11]), 187);
+
+// bulk.wast:76
+assert_return(() => call($4, "load8_u", [12]), 204);
+
+// bulk.wast:77
+assert_return(() => call($4, "load8_u", [13]), 221);
+
+// bulk.wast:78
+assert_return(() => call($4, "load8_u", [14]), 0);
+
+// bulk.wast:81
+run(() => call($4, "copy", [8, 10, 4]));
+
+// bulk.wast:82
+assert_return(() => call($4, "load8_u", [8]), 170);
+
+// bulk.wast:83
+assert_return(() => call($4, "load8_u", [9]), 187);
+
+// bulk.wast:84
+assert_return(() => call($4, "load8_u", [10]), 204);
+
+// bulk.wast:85
+assert_return(() => call($4, "load8_u", [11]), 221);
+
+// bulk.wast:86
+assert_return(() => call($4, "load8_u", [12]), 204);
+
+// bulk.wast:87
+assert_return(() => call($4, "load8_u", [13]), 221);
+
+// bulk.wast:90
+run(() => call($4, "copy", [10, 7, 6]));
+
+// bulk.wast:91
+assert_return(() => call($4, "load8_u", [10]), 0);
+
+// bulk.wast:92
+assert_return(() => call($4, "load8_u", [11]), 170);
+
+// bulk.wast:93
+assert_return(() => call($4, "load8_u", [12]), 187);
+
+// bulk.wast:94
+assert_return(() => call($4, "load8_u", [13]), 204);
+
+// bulk.wast:95
+assert_return(() => call($4, "load8_u", [14]), 221);
+
+// bulk.wast:96
+assert_return(() => call($4, "load8_u", [15]), 204);
+
+// bulk.wast:97
+assert_return(() => call($4, "load8_u", [16]), 0);
+
+// bulk.wast:100
+run(() => call($4, "copy", [65_280, 0, 256]));
+
+// bulk.wast:101
+run(() => call($4, "copy", [65_024, 65_280, 256]));
+
+// bulk.wast:104
+run(() => call($4, "copy", [65_536, 0, 0]));
+
+// bulk.wast:105
+run(() => call($4, "copy", [0, 65_536, 0]));
+
+// bulk.wast:108
+assert_trap(() => call($4, "copy", [65_537, 0, 0]));
+
+// bulk.wast:110
+assert_trap(() => call($4, "copy", [0, 65_537, 0]));
+
+// bulk.wast:115
+let $5 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x8c\x80\x80\x80\x00\x02\x60\x03\x7f\x7f\x7f\x00\x60\x01\x7f\x01\x7f\x03\x83\x80\x80\x80\x00\x02\x00\x01\x05\x83\x80\x80\x80\x00\x01\x00\x01\x07\x92\x80\x80\x80\x00\x02\x04\x69\x6e\x69\x74\x00\x00\x07\x6c\x6f\x61\x64\x38\x5f\x75\x00\x01\x0c\x81\x80\x80\x80\x00\x01\x0a\x9e\x80\x80\x80\x00\x02\x8c\x80\x80\x80\x00\x00\x20\x00\x20\x01\x20\x02\xfc\x08\x00\x00\x0b\x87\x80\x80\x80\x00\x00\x20\x00\x2d\x00\x00\x0b\x0b\x87\x80\x80\x80\x00\x01\x01\x04\xaa\xbb\xcc\xdd");
+
+// bulk.wast:129
+run(() => call($5, "init", [0, 1, 2]));
+
+// bulk.wast:130
+assert_return(() => call($5, "load8_u", [0]), 187);
+
+// bulk.wast:131
+assert_return(() => call($5, "load8_u", [1]), 204);
+
+// bulk.wast:132
+assert_return(() => call($5, "load8_u", [2]), 0);
+
+// bulk.wast:135
+run(() => call($5, "init", [65_532, 0, 4]));
+
+// bulk.wast:138
+assert_trap(() => call($5, "init", [65_534, 0, 3]));
+
+// bulk.wast:140
+assert_return(() => call($5, "load8_u", [65_534]), 204);
+
+// bulk.wast:141
+assert_return(() => call($5, "load8_u", [65_535]), 221);
+
+// bulk.wast:144
+run(() => call($5, "init", [65_536, 0, 0]));
+
+// bulk.wast:145
+run(() => call($5, "init", [0, 4, 0]));
+
+// bulk.wast:148
+assert_trap(() => call($5, "init", [65_537, 0, 0]));
+
+// bulk.wast:150
+assert_trap(() => call($5, "init", [0, 5, 0]));
+
+// bulk.wast:154
+let $6 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x88\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7f\x00\x03\x85\x80\x80\x80\x00\x04\x00\x01\x00\x01\x05\x83\x80\x80\x80\x00\x01\x00\x01\x07\xbb\x80\x80\x80\x00\x04\x0c\x64\x72\x6f\x70\x5f\x70\x61\x73\x73\x69\x76\x65\x00\x00\x0c\x69\x6e\x69\x74\x5f\x70\x61\x73\x73\x69\x76\x65\x00\x01\x0b\x64\x72\x6f\x70\x5f\x61\x63\x74\x69\x76\x65\x00\x02\x0b\x69\x6e\x69\x74\x5f\x61\x63\x74\x69\x76\x65\x00\x03\x0c\x81\x80\x80\x80\x00\x02\x0a\xb7\x80\x80\x80\x00\x04\x85\x80\x80\x80\x00\x00\xfc\x09\x00\x0b\x8c\x80\x80\x80\x00\x00\x41\x00\x41\x00\x20\x00\xfc\x08\x00\x00\x0b\x85\x80\x80\x80\x00\x00\xfc\x09\x01\x0b\x8c\x80\x80\x80\x00\x00\x41\x00\x41\x00\x20\x00\xfc\x08\x01\x00\x0b\x0b\x8a\x80\x80\x80\x00\x02\x01\x01\x78\x00\x41\x00\x0b\x01\x78");
+
+// bulk.wast:168
+run(() => call($6, "init_passive", [1]));
+
+// bulk.wast:169
+run(() => call($6, "drop_passive", []));
+
+// bulk.wast:170
+run(() => call($6, "drop_passive", []));
+
+// bulk.wast:171
+assert_return(() => call($6, "init_passive", [0]));
+
+// bulk.wast:172
+assert_trap(() => call($6, "init_passive", [1]));
+
+// bulk.wast:173
+run(() => call($6, "init_passive", [0]));
+
+// bulk.wast:174
+run(() => call($6, "drop_active", []));
+
+// bulk.wast:175
+assert_return(() => call($6, "init_active", [0]));
+
+// bulk.wast:176
+assert_trap(() => call($6, "init_active", [1]));
+
+// bulk.wast:177
+run(() => call($6, "init_active", [0]));
+
+// bulk.wast:181
+let $7 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x84\x80\x80\x80\x00\x01\x60\x00\x00\x03\x82\x80\x80\x80\x00\x01\x00\x0c\x81\x80\x80\x80\x00\x41\x0a\x8b\x80\x80\x80\x00\x01\x85\x80\x80\x80\x00\x00\xfc\x09\x40\x0b\x0b\x83\x81\x80\x80\x00\x41\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00");
+
+// bulk.wast:196
+let $8 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x84\x80\x80\x80\x00\x01\x60\x00\x00\x03\x82\x80\x80\x80\x00\x01\x00\x0c\x81\x80\x80\x80\x00\x01\x0a\x8b\x80\x80\x80\x00\x01\x85\x80\x80\x80\x00\x00\xfc\x09\x00\x0b\x0b\x8a\x80\x80\x80\x00\x01\x01\x07\x67\x6f\x6f\x64\x62\x79\x65");
+
+// bulk.wast:199
+let $9 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x90\x80\x80\x80\x00\x03\x60\x00\x01\x7f\x60\x03\x7f\x7f\x7f\x00\x60\x01\x7f\x01\x7f\x03\x85\x80\x80\x80\x00\x04\x00\x00\x01\x02\x04\x84\x80\x80\x80\x00\x01\x70\x00\x03\x07\x8f\x80\x80\x80\x00\x02\x04\x69\x6e\x69\x74\x00\x02\x04\x63\x61\x6c\x6c\x00\x03\x09\x88\x80\x80\x80\x00\x01\x01\x00\x04\x00\x01\x00\x01\x0a\xb0\x80\x80\x80\x00\x04\x84\x80\x80\x80\x00\x00\x41\x00\x0b\x84\x80\x80\x80\x00\x00\x41\x01\x0b\x8c\x80\x80\x80\x00\x00\x20\x00\x20\x01\x20\x02\xfc\x0c\x00\x00\x0b\x87\x80\x80\x80\x00\x00\x20\x00\x11\x00\x00\x0b");
+
+// bulk.wast:219
+assert_trap(() => call($9, "init", [2, 0, 2]));
+
+// bulk.wast:221
+assert_trap(() => call($9, "call", [2]));
+
+// bulk.wast:224
+run(() => call($9, "init", [0, 1, 2]));
+
+// bulk.wast:225
+assert_return(() => call($9, "call", [0]), 1);
+
+// bulk.wast:226
+assert_return(() => call($9, "call", [1]), 0);
+
+// bulk.wast:227
+assert_trap(() => call($9, "call", [2]));
+
+// bulk.wast:230
+run(() => call($9, "init", [1, 2, 2]));
+
+// bulk.wast:233
+run(() => call($9, "init", [3, 0, 0]));
+
+// bulk.wast:234
+run(() => call($9, "init", [0, 4, 0]));
+
+// bulk.wast:237
+assert_trap(() => call($9, "init", [4, 0, 0]));
+
+// bulk.wast:239
+assert_trap(() => call($9, "init", [0, 5, 0]));
+
+// bulk.wast:244
+let $10 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x88\x80\x80\x80\x00\x02\x60\x00\x00\x60\x01\x7f\x00\x03\x86\x80\x80\x80\x00\x05\x00\x00\x01\x00\x01\x04\x84\x80\x80\x80\x00\x01\x70\x00\x01\x07\xbb\x80\x80\x80\x00\x04\x0c\x64\x72\x6f\x70\x5f\x70\x61\x73\x73\x69\x76\x65\x00\x01\x0c\x69\x6e\x69\x74\x5f\x70\x61\x73\x73\x69\x76\x65\x00\x02\x0b\x64\x72\x6f\x70\x5f\x61\x63\x74\x69\x76\x65\x00\x03\x0b\x69\x6e\x69\x74\x5f\x61\x63\x74\x69\x76\x65\x00\x04\x09\x8b\x80\x80\x80\x00\x02\x01\x00\x01\x00\x00\x41\x00\x0b\x01\x00\x0a\xbe\x80\x80\x80\x00\x05\x82\x80\x80\x80\x00\x00\x0b\x85\x80\x80\x80\x00\x00\xfc\x0d\x00\x0b\x8c\x80\x80\x80\x00\x00\x41\x00\x41\x00\x20\x00\xfc\x0c\x00\x00\x0b\x85\x80\x80\x80\x00\x00\xfc\x0d\x01\x0b\x8c\x80\x80\x80\x00\x00\x41\x00\x41\x00\x20\x00\xfc\x0c\x01\x00\x0b");
+
+// bulk.wast:261
+run(() => call($10, "init_passive", [1]));
+
+// bulk.wast:262
+run(() => call($10, "drop_passive", []));
+
+// bulk.wast:263
+run(() => call($10, "drop_passive", []));
+
+// bulk.wast:264
+assert_return(() => call($10, "init_passive", [0]));
+
+// bulk.wast:265
+assert_trap(() => call($10, "init_passive", [1]));
+
+// bulk.wast:266
+run(() => call($10, "init_passive", [0]));
+
+// bulk.wast:267
+run(() => call($10, "drop_active", []));
+
+// bulk.wast:268
+assert_return(() => call($10, "init_active", [0]));
+
+// bulk.wast:269
+assert_trap(() => call($10, "init_active", [1]));
+
+// bulk.wast:270
+run(() => call($10, "init_active", [0]));
+
+// bulk.wast:274
+let $11 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x84\x80\x80\x80\x00\x01\x60\x00\x00\x03\x82\x80\x80\x80\x00\x01\x00\x09\xc4\x81\x80\x80\x00\x41\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x01\x00\x00\x0a\x8b\x80\x80\x80\x00\x01\x85\x80\x80\x80\x00\x00\xfc\x0d
\x40\x0b");
+
+// bulk.wast:297
+let $12 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x84\x80\x80\x80\x00\x01\x60\x00\x00\x03\x82\x80\x80\x80\x00\x01\x00\x09\x85\x80\x80\x80\x00\x01\x01\x00\x01\x00\x0a\x8b\x80\x80\x80\x00\x01\x85\x80\x80\x80\x00\x00\xfc\x0d\x00\x0b");
+
+// bulk.wast:300
+let $13 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x90\x80\x80\x80\x00\x03\x60\x00\x01\x7f\x60\x03\x7f\x7f\x7f\x00\x60\x01\x7f\x01\x7f\x03\x86\x80\x80\x80\x00\x05\x00\x00\x00\x01\x02\x04\x84\x80\x80\x80\x00\x01\x70\x00\x0a\x07\x8f\x80\x80\x80\x00\x02\x04\x63\x6f\x70\x79\x00\x03\x04\x63\x61\x6c\x6c\x00\x04\x09\x89\x80\x80\x80\x00\x01\x00\x41\x00\x0b\x03\x00\x01\x02\x0a\xb9\x80\x80\x80\x00\x05\x84\x80\x80\x80\x00\x00\x41\x00\x0b\x84\x80\x80\x80\x00\x00\x41\x01\x0b\x84\x80\x80\x80\x00\x00\x41\x02\x0b\x8c\x80\x80\x80\x00\x00\x20\x00\x20\x01\x20\x02\xfc\x0e\x00\x00\x0b\x87\x80\x80\x80\x00\x00\x20\x00\x11\x00\x00\x0b");
+
+// bulk.wast:319
+run(() => call($13, "copy", [3, 0, 3]));
+
+// bulk.wast:321
+assert_return(() => call($13, "call", [3]), 0);
+
+// bulk.wast:322
+assert_return(() => call($13, "call", [4]), 1);
+
+// bulk.wast:323
+assert_return(() => call($13, "call", [5]), 2);
+
+// bulk.wast:326
+run(() => call($13, "copy", [0, 1, 3]));
+
+// bulk.wast:328
+assert_return(() => call($13, "call", [0]), 1);
+
+// bulk.wast:329
+assert_return(() => call($13, "call", [1]), 2);
+
+// bulk.wast:330
+assert_return(() => call($13, "call", [2]), 0);
+
+// bulk.wast:333
+run(() => call($13, "copy", [2, 0, 3]));
+
+// bulk.wast:335
+assert_return(() => call($13, "call", [2]), 1);
+
+// bulk.wast:336
+assert_return(() => call($13, "call", [3]), 2);
+
+// bulk.wast:337
+assert_return(() => call($13, "call", [4]), 0);
+
+// bulk.wast:340
+run(() => call($13, "copy", [6, 8, 2]));
+
+// bulk.wast:341
+run(() => call($13, "copy", [8, 6, 2]));
+
+// bulk.wast:344
+run(() => call($13, "copy", [10, 0, 0]));
+
+// bulk.wast:345
+run(() => call($13, "copy", [0, 10, 0]));
+
+// bulk.wast:348
+assert_trap(() => call($13, "copy", [11, 0, 0]));
+
+// bulk.wast:350
+assert_trap(() => call($13, "copy", [0, 11, 0]));
Added: trunk/JSTests/wasm/references-spec-tests/table_grow.wast.js (0 => 271100)
--- trunk/JSTests/wasm/references-spec-tests/table_grow.wast.js (rev 0)
+++ trunk/JSTests/wasm/references-spec-tests/table_grow.wast.js 2020-12-28 04:41:00 UTC (rev 271100)
@@ -0,0 +1,150 @@
+
+// table_grow.wast:1
+let $1 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x95\x80\x80\x80\x00\x04\x60\x01\x7f\x01\x6f\x60\x02\x7f\x6f\x00\x60\x02\x7f\x6f\x01\x7f\x60\x00\x01\x7f\x03\x85\x80\x80\x80\x00\x04\x00\x01\x02\x03\x04\x84\x80\x80\x80\x00\x01\x6f\x00\x00\x07\x9b\x80\x80\x80\x00\x04\x03\x67\x65\x74\x00\x00\x03\x73\x65\x74\x00\x01\x04\x67\x72\x6f\x77\x00\x02\x04\x73\x69\x7a\x65\x00\x03\x0a\xb1\x80\x80\x80\x00\x04\x86\x80\x80\x80\x00\x00\x20\x00\x25\x00\x0b\x88\x80\x80\x80\x00\x00\x20\x00\x20\x01\x26\x00\x0b\x89\x80\x80\x80\x00\x00\x20\x01\x20\x00\xfc\x0f\x00\x0b\x85\x80\x80\x80\x00\x00\xfc\x10\x00\x0b");
+
+// table_grow.wast:13
+assert_return(() => call($1, "size", []), 0);
+
+// table_grow.wast:14
+assert_trap(() => call($1, "set", [0, externref(2)]));
+
+// table_grow.wast:15
+assert_trap(() => call($1, "get", [0]));
+
+// table_grow.wast:17
+assert_return(() => call($1, "grow", [1, null]), 0);
+
+// table_grow.wast:18
+assert_return(() => call($1, "size", []), 1);
+
+// table_grow.wast:19
+assert_return(() => call($1, "get", [0]), null);
+
+// table_grow.wast:20
+assert_return(() => call($1, "set", [0, externref(2)]));
+
+// table_grow.wast:21
+assert_return(() => call($1, "get", [0]), externref(2));
+
+// table_grow.wast:22
+assert_trap(() => call($1, "set", [1, externref(2)]));
+
+// table_grow.wast:23
+assert_trap(() => call($1, "get", [1]));
+
+// table_grow.wast:25
+assert_return(() => call($1, "grow", [4, externref(3)]), 1);
+
+// table_grow.wast:26
+assert_return(() => call($1, "size", []), 5);
+
+// table_grow.wast:27
+assert_return(() => call($1, "get", [0]), externref(2));
+
+// table_grow.wast:28
+assert_return(() => call($1, "set", [0, externref(2)]));
+
+// table_grow.wast:29
+assert_return(() => call($1, "get", [0]), externref(2));
+
+// table_grow.wast:30
+assert_return(() => call($1, "get", [1]), externref(3));
+
+// table_grow.wast:31
+assert_return(() => call($1, "get", [4]), externref(3));
+
+// table_grow.wast:32
+assert_return(() => call($1, "set", [4, externref(4)]));
+
+// table_grow.wast:33
+assert_return(() => call($1, "get", [4]), externref(4));
+
+// table_grow.wast:34
+assert_trap(() => call($1, "set", [5, externref(2)]));
+
+// table_grow.wast:35
+assert_trap(() => call($1, "get", [5]));
+
+// table_grow.wast:39
+let $2 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x85\x80\x80\x80\x00\x01\x60\x00\x01\x7f\x03\x82\x80\x80\x80\x00\x01\x00\x04\x84\x80\x80\x80\x00\x01\x70\x00\x10\x07\x88\x80\x80\x80\x00\x01\x04\x67\x72\x6f\x77\x00\x00\x09\x85\x80\x80\x80\x00\x01\x03\x00\x01\x00\x0a\x8f\x80\x80\x80\x00\x01\x89\x80\x80\x80\x00\x00\xd2\x00\x41\x70\xfc\x0f\x00\x0b");
+
+// table_grow.wast:47
+assert_return(() => call($2, "grow", []), -1);
+
+// table_grow.wast:50
+let $3 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x86\x80\x80\x80\x00\x01\x60\x01\x7f\x01\x7f\x03\x82\x80\x80\x80\x00\x01\x00\x04\x84\x80\x80\x80\x00\x01\x6f\x00\x00\x07\x88\x80\x80\x80\x00\x01\x04\x67\x72\x6f\x77\x00\x00\x0a\x8f\x80\x80\x80\x00\x01\x89\x80\x80\x80\x00\x00\xd0\x6f\x20\x00\xfc\x0f\x00\x0b");
+
+// table_grow.wast:57
+assert_return(() => call($3, "grow", [0]), 0);
+
+// table_grow.wast:58
+assert_return(() => call($3, "grow", [1]), 0);
+
+// table_grow.wast:59
+assert_return(() => call($3, "grow", [0]), 1);
+
+// table_grow.wast:60
+assert_return(() => call($3, "grow", [2]), 1);
+
+// table_grow.wast:61
+assert_return(() => call($3, "grow", [800]), 3);
+
+// table_grow.wast:64
+let $4 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x86\x80\x80\x80\x00\x01\x60\x01\x7f\x01\x7f\x03\x82\x80\x80\x80\x00\x01\x00\x04\x85\x80\x80\x80\x00\x01\x6f\x01\x00\x0a\x07\x88\x80\x80\x80\x00\x01\x04\x67\x72\x6f\x77\x00\x00\x0a\x8f\x80\x80\x80\x00\x01\x89\x80\x80\x80\x00\x00\xd0\x6f\x20\x00\xfc\x0f\x00\x0b");
+
+// table_grow.wast:71
+assert_return(() => call($4, "grow", [0]), 0);
+
+// table_grow.wast:72
+assert_return(() => call($4, "grow", [1]), 0);
+
+// table_grow.wast:73
+assert_return(() => call($4, "grow", [1]), 1);
+
+// table_grow.wast:74
+assert_return(() => call($4, "grow", [2]), 2);
+
+// table_grow.wast:75
+assert_return(() => call($4, "grow", [6]), 4);
+
+// table_grow.wast:76
+assert_return(() => call($4, "grow", [0]), 10);
+
+// table_grow.wast:77
+assert_return(() => call($4, "grow", [1]), -1);
+
+// table_grow.wast:78
+assert_return(() => call($4, "grow", [65_536]), -1);
+
+// table_grow.wast:81
+let $5 = instance("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x8c\x80\x80\x80\x00\x02\x60\x01\x7f\x01\x7f\x60\x02\x7f\x7f\x01\x70\x03\x83\x80\x80\x80\x00\x02\x00\x01\x04\x84\x80\x80\x80\x00\x01\x70\x00\x0a\x07\x9b\x80\x80\x80\x00\x02\x04\x67\x72\x6f\x77\x00\x00\x10\x63\x68\x65\x63\x6b\x2d\x74\x61\x62\x6c\x65\x2d\x6e\x75\x6c\x6c\x00\x01\x09\x85\x80\x80\x80\x00\x01\x03\x00\x01\x01\x0a\xc5\x80\x80\x80\x00\x02\x89\x80\x80\x80\x00\x00\xd0\x70\x20\x00\xfc\x0f\x00\x0b\xb1\x80\x80\x80\x00\x01\x01\x70\xd2\x01\x21\x02\x02\x40\x03\x40\x20\x00\x25\x00\x21\x02\x20\x02\xd1\x45\x0d\x01\x20\x00\x20\x01\x4f\x0d\x01\x20\x00\x41\x01\x6a\x21\x00\x20\x00\x20\x01\x4d\x0d\x00\x0b\x0b\x20\x02\x0b");
+
+// table_grow.wast:103
+assert_return(() => call($5, "check-table-null", [0, 9]), null);
+
+// table_grow.wast:104
+assert_return(() => call($5, "grow", [10]), 10);
+
+// table_grow.wast:105
+assert_return(() => call($5, "check-table-null", [0, 19]), null);
+
+// table_grow.wast:110
+assert_invalid("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x85\x80\x80\x80\x00\x01\x60\x00\x01\x7f\x03\x82\x80\x80\x80\x00\x01\x00\x04\x84\x80\x80\x80\x00\x01\x6f\x00\x00\x0a\x8b\x80\x80\x80\x00\x01\x85\x80\x80\x80\x00\x00\xfc\x0f\x00\x0b");
+
+// table_grow.wast:119
+assert_invalid("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x85\x80\x80\x80\x00\x01\x60\x00\x01\x7f\x03\x82\x80\x80\x80\x00\x01\x00\x04\x84\x80\x80\x80\x00\x01\x6f\x00\x00\x0a\x8d\x80\x80\x80\x00\x01\x87\x80\x80\x80\x00\x00\xd0\x6f\xfc\x0f\x00\x0b");
+
+// table_grow.wast:128
+assert_invalid("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x85\x80\x80\x80\x00\x01\x60\x00\x01\x7f\x03\x82\x80\x80\x80\x00\x01\x00\x04\x84\x80\x80\x80\x00\x01\x6f\x00\x00\x0a\x8d\x80\x80\x80\x00\x01\x87\x80\x80\x80\x00\x00\x41\x01\xfc\x0f\x00\x0b");
+
+// table_grow.wast:137
+assert_invalid("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x85\x80\x80\x80\x00\x01\x60\x00\x01\x7f\x03\x82\x80\x80\x80\x00\x01\x00\x04\x84\x80\x80\x80\x00\x01\x6f\x00\x00\x0a\x92\x80\x80\x80\x00\x01\x8c\x80\x80\x80\x00\x00\xd0\x6f\x43\x00\x00\x80\x3f\xfc\x0f\x00\x0b");
+
+// table_grow.wast:146
+assert_invalid("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x86\x80\x80\x80\x00\x01\x60\x01\x6f\x01\x7f\x03\x82\x80\x80\x80\x00\x01\x00\x04\x84\x80\x80\x80\x00\x01\x70\x00\x00\x0a\x8f\x80\x80\x80\x00\x01\x89\x80\x80\x80\x00\x00\x20\x00\x41\x01\xfc\x0f\x00\x0b");
+
+// table_grow.wast:156
+assert_invalid("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x84\x80\x80\x80\x00\x01\x60\x00\x00\x03\x82\x80\x80\x80\x00\x01\x00\x04\x84\x80\x80\x80\x00\x01\x6f\x00\x01\x0a\x8f\x80\x80\x80\x00\x01\x89\x80\x80\x80\x00\x00\xd0\x6f\x41\x00\xfc\x0f\x00\x0b");
+
+// table_grow.wast:165
+assert_invalid("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x85\x80\x80\x80\x00\x01\x60\x00\x01\x7d\x03\x82\x80\x80\x80\x00\x01\x00\x04\x84\x80\x80\x80\x00\x01\x6f\x00\x01\x0a\x8f\x80\x80\x80\x00\x01\x89\x80\x80\x80\x00\x00\xd0\x6f\x41\x00\xfc\x0f\x00\x0b");