Skip to content

Commit ae90475

Browse files
committed
fix: patch parser to support narrow-width integer sign byte opcode
1 parent 3c37db1 commit ae90475

File tree

4 files changed

+44
-8
lines changed

4 files changed

+44
-8
lines changed

lib/wasm-parser.mjs

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3054,9 +3054,9 @@ var require_signatures = __commonJS({
30543054
}
30553055
});
30563056

3057-
// node_modules/.pnpm/@webassemblyjs+helper-wasm-bytecode@1.11.6/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/section.js
3057+
// node_modules/.pnpm/@webassemblyjs+helper-wasm-bytecode@1.11.6_patch_hash=2yqg2jtg6wn6u6w2h6qfarflum/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/section.js
30583058
var require_section = __commonJS({
3059-
"node_modules/.pnpm/@webassemblyjs+helper-wasm-bytecode@1.11.6/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/section.js"(exports) {
3059+
"node_modules/.pnpm/@webassemblyjs+helper-wasm-bytecode@1.11.6_patch_hash=2yqg2jtg6wn6u6w2h6qfarflum/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/section.js"(exports) {
30603060
"use strict";
30613061
Object.defineProperty(exports, "__esModule", {
30623062
value: true
@@ -3088,9 +3088,9 @@ var require_section = __commonJS({
30883088
}
30893089
});
30903090

3091-
// node_modules/.pnpm/@webassemblyjs+helper-wasm-bytecode@1.11.6/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/index.js
3091+
// node_modules/.pnpm/@webassemblyjs+helper-wasm-bytecode@1.11.6_patch_hash=2yqg2jtg6wn6u6w2h6qfarflum/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/index.js
30923092
var require_lib6 = __commonJS({
3093-
"node_modules/.pnpm/@webassemblyjs+helper-wasm-bytecode@1.11.6/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/index.js"(exports) {
3093+
"node_modules/.pnpm/@webassemblyjs+helper-wasm-bytecode@1.11.6_patch_hash=2yqg2jtg6wn6u6w2h6qfarflum/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/index.js"(exports) {
30943094
"use strict";
30953095
Object.defineProperty(exports, "__esModule", {
30963096
value: true
@@ -3381,6 +3381,12 @@ var require_lib6 = __commonJS({
33813381
189: createSymbolObject("reinterpret/f64", "i64"),
33823382
190: createSymbolObject("reinterpret/i32", "f32"),
33833383
191: createSymbolObject("reinterpret/i64", "f64"),
3384+
// https://github.com/xtuc/webassemblyjs/pull/1147
3385+
192: createSymbolObject("extend8_s", "i32"),
3386+
193: createSymbolObject("extend16_s", "i32"),
3387+
194: createSymbolObject("extend8_s", "i64"),
3388+
195: createSymbolObject("extend16_s", "i64"),
3389+
196: createSymbolObject("extend32_s", "i64"),
33843390
// Atomic Memory Instructions
33853391
65024: createSymbol("memory.atomic.notify", 1),
33863392
65025: createSymbol("memory.atomic.wait32", 1),

package.json

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,5 +73,10 @@
7373
"vite": "^5.0.11",
7474
"vitest": "^1.2.0"
7575
},
76-
"packageManager": "pnpm@8.14.1"
76+
"packageManager": "pnpm@8.14.1",
77+
"pnpm": {
78+
"patchedDependencies": {
79+
"@webassemblyjs/helper-wasm-bytecode@1.11.6": "patches/@webassemblyjs__helper-wasm-bytecode@1.11.6.patch"
80+
}
81+
}
7782
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
diff --git a/lib/index.js b/lib/index.js
2+
index cd647d2d169fe793dc3100a148c0beef19c286fc..76d80a75a4be8218ad3af3097dff3d05921793d4 100644
3+
--- a/lib/index.js
4+
+++ b/lib/index.js
5+
@@ -311,6 +311,14 @@ var symbolsByByte = {
6+
0xbd: createSymbolObject("reinterpret/f64", "i64"),
7+
0xbe: createSymbolObject("reinterpret/i32", "f32"),
8+
0xbf: createSymbolObject("reinterpret/i64", "f64"),
9+
+
10+
+ // https://github.com/xtuc/webassemblyjs/pull/1147
11+
+ 0xc0: createSymbolObject("extend8_s", "i32"),
12+
+ 0xc1: createSymbolObject("extend16_s", "i32"),
13+
+ 0xc2: createSymbolObject("extend8_s", "i64"),
14+
+ 0xc3: createSymbolObject("extend16_s", "i64"),
15+
+ 0xc4: createSymbolObject("extend32_s", "i64"),
16+
+
17+
// Atomic Memory Instructions
18+
0xfe00: createSymbol("memory.atomic.notify", 1),
19+
0xfe01: createSymbol("memory.atomic.wait32", 1),

pnpm-lock.yaml

Lines changed: 9 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)