mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-06-09 04:51:26 +00:00
Update Binaryen
This commit is contained in:
parent
6949cf9f9e
commit
d90cd085e5
2
dist/asc.js.map
vendored
2
dist/asc.js.map
vendored
File diff suppressed because one or more lines are too long
4
dist/assemblyscript.js
vendored
4
dist/assemblyscript.js
vendored
File diff suppressed because one or more lines are too long
2
dist/assemblyscript.js.map
vendored
2
dist/assemblyscript.js.map
vendored
File diff suppressed because one or more lines are too long
366
package-lock.json
generated
366
package-lock.json
generated
@ -82,276 +82,198 @@
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/ast": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.5.13.tgz",
|
||||
"integrity": "sha512-49nwvW/Hx9i+OYHg+mRhKZfAlqThr11Dqz8TsrvqGKMhdI2ijy3KBJOun2Z4770TPjrIJhR6KxChQIDaz8clDA==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.6.tgz",
|
||||
"integrity": "sha512-8nkZS48EVsMUU0v6F1LCIOw4RYWLm2plMtbhFTjNgeXmsTNLuU3xTRtnljt9BFQB+iPbLRobkNrCWftWnNC7wQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/helper-module-context": "1.5.13",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.5.13",
|
||||
"@webassemblyjs/wast-parser": "1.5.13",
|
||||
"debug": "^3.1.0",
|
||||
"@webassemblyjs/helper-module-context": "1.7.6",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.7.6",
|
||||
"@webassemblyjs/wast-parser": "1.7.6",
|
||||
"mamacro": "^0.0.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"debug": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
|
||||
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ms": "2.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/floating-point-hex-parser": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.5.13.tgz",
|
||||
"integrity": "sha512-vrvvB18Kh4uyghSKb0NTv+2WZx871WL2NzwMj61jcq2bXkyhRC+8Q0oD7JGVf0+5i/fKQYQSBCNMMsDMRVAMqA==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.6.tgz",
|
||||
"integrity": "sha512-VBOZvaOyBSkPZdIt5VBMg3vPWxouuM13dPXGWI1cBh3oFLNcFJ8s9YA7S9l4mPI7+Q950QqOmqj06oa83hNWBA==",
|
||||
"dev": true
|
||||
},
|
||||
"@webassemblyjs/helper-api-error": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.5.13.tgz",
|
||||
"integrity": "sha512-dBh2CWYqjaDlvMmRP/kudxpdh30uXjIbpkLj9HQe+qtYlwvYjPRjdQXrq1cTAAOUSMTtzqbXIxEdEZmyKfcwsg==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.6.tgz",
|
||||
"integrity": "sha512-SCzhcQWHXfrfMSKcj8zHg1/kL9kb3aa5TN4plc/EREOs5Xop0ci5bdVBApbk2yfVi8aL+Ly4Qpp3/TRAUInjrg==",
|
||||
"dev": true
|
||||
},
|
||||
"@webassemblyjs/helper-buffer": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.5.13.tgz",
|
||||
"integrity": "sha512-v7igWf1mHcpJNbn4m7e77XOAWXCDT76Xe7Is1VQFXc4K5jRcFrl9D0NrqM4XifQ0bXiuTSkTKMYqDxu5MhNljA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"debug": "^3.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"debug": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
|
||||
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ms": "2.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.6.tgz",
|
||||
"integrity": "sha512-1/gW5NaGsEOZ02fjnFiU8/OEEXU1uVbv2um0pQ9YVL3IHSkyk6xOwokzyqqO1qDZQUAllb+V8irtClPWntbVqw==",
|
||||
"dev": true
|
||||
},
|
||||
"@webassemblyjs/helper-code-frame": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.5.13.tgz",
|
||||
"integrity": "sha512-yN6ScQQDFCiAXnVctdVO/J5NQRbwyTbQzsGzEgXsAnrxhjp0xihh+nNHQTMrq5UhOqTb5LykpJAvEv9AT0jnAQ==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.6.tgz",
|
||||
"integrity": "sha512-+suMJOkSn9+vEvDvgyWyrJo5vJsWSDXZmJAjtoUq4zS4eqHyXImpktvHOZwXp1XQjO5H+YQwsBgqTQEc0J/5zg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/wast-printer": "1.5.13"
|
||||
"@webassemblyjs/wast-printer": "1.7.6"
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/helper-fsm": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.5.13.tgz",
|
||||
"integrity": "sha512-hSIKzbXjVMRvy3Jzhgu+vDd/aswJ+UMEnLRCkZDdknZO3Z9e6rp1DAs0tdLItjCFqkz9+0BeOPK/mk3eYvVzZg==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.6.tgz",
|
||||
"integrity": "sha512-HCS6KN3wgxUihGBW7WFzEC/o8Eyvk0d56uazusnxXthDPnkWiMv+kGi9xXswL2cvfYfeK5yiM17z2K5BVlwypw==",
|
||||
"dev": true
|
||||
},
|
||||
"@webassemblyjs/helper-module-context": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.5.13.tgz",
|
||||
"integrity": "sha512-zxJXULGPLB7r+k+wIlvGlXpT4CYppRz8fLUM/xobGHc9Z3T6qlmJD9ySJ2jknuktuuiR9AjnNpKYDECyaiX+QQ==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.6.tgz",
|
||||
"integrity": "sha512-e8/6GbY7OjLM+6OsN7f2krC2qYVNaSr0B0oe4lWdmq5sL++8dYDD1TFbD1TdAdWMRTYNr/Qq7ovXWzia2EbSjw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"debug": "^3.1.0",
|
||||
"mamacro": "^0.0.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"debug": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
|
||||
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ms": "2.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/helper-wasm-bytecode": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.5.13.tgz",
|
||||
"integrity": "sha512-0n3SoNGLvbJIZPhtMFq0XmmnA/YmQBXaZKQZcW8maGKwLpVcgjNrxpFZHEOLKjXJYVN5Il8vSfG7nRX50Zn+aw==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.6.tgz",
|
||||
"integrity": "sha512-PzYFCb7RjjSdAOljyvLWVqd6adAOabJW+8yRT+NWhXuf1nNZWH+igFZCUK9k7Cx7CsBbzIfXjJc7u56zZgFj9Q==",
|
||||
"dev": true
|
||||
},
|
||||
"@webassemblyjs/helper-wasm-section": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.5.13.tgz",
|
||||
"integrity": "sha512-IJ/goicOZ5TT1axZFSnlAtz4m8KEjYr12BNOANAwGFPKXM4byEDaMNXYowHMG0yKV9a397eU/NlibFaLwr1fbw==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.6.tgz",
|
||||
"integrity": "sha512-3GS628ppDPSuwcYlQ7cDCGr4W2n9c4hLzvnRKeuz+lGsJSmc/ADVoYpm1ts2vlB1tGHkjtQMni+yu8mHoMlKlA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/ast": "1.5.13",
|
||||
"@webassemblyjs/helper-buffer": "1.5.13",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.5.13",
|
||||
"@webassemblyjs/wasm-gen": "1.5.13",
|
||||
"debug": "^3.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"debug": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
|
||||
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ms": "2.0.0"
|
||||
}
|
||||
}
|
||||
"@webassemblyjs/ast": "1.7.6",
|
||||
"@webassemblyjs/helper-buffer": "1.7.6",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.7.6",
|
||||
"@webassemblyjs/wasm-gen": "1.7.6"
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/ieee754": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.5.13.tgz",
|
||||
"integrity": "sha512-TseswvXEPpG5TCBKoLx9tT7+/GMACjC1ruo09j46ULRZWYm8XHpDWaosOjTnI7kr4SRJFzA6MWoUkAB+YCGKKg==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.6.tgz",
|
||||
"integrity": "sha512-V4cIp0ruyw+hawUHwQLn6o2mFEw4t50tk530oKsYXQhEzKR+xNGDxs/SFFuyTO7X3NzEu4usA3w5jzhl2RYyzQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ieee754": "^1.1.11"
|
||||
"@xtuc/ieee754": "^1.2.0"
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/leb128": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.5.13.tgz",
|
||||
"integrity": "sha512-0NRMxrL+GG3eISGZBmLBLAVjphbN8Si15s7jzThaw1UE9e5BY1oH49/+MA1xBzxpf1OW5sf9OrPDOclk9wj2yg==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.6.tgz",
|
||||
"integrity": "sha512-ojdlG8WpM394lBow4ncTGJoIVZ4aAtNOWHhfAM7m7zprmkVcKK+2kK5YJ9Bmj6/ketTtOn7wGSHCtMt+LzqgYQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"long": "4.0.0"
|
||||
"@xtuc/long": "4.2.1"
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/utf8": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.5.13.tgz",
|
||||
"integrity": "sha512-Ve1ilU2N48Ew0lVGB8FqY7V7hXjaC4+PeZM+vDYxEd+R2iQ0q+Wb3Rw8v0Ri0+rxhoz6gVGsnQNb4FjRiEH/Ng==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.6.tgz",
|
||||
"integrity": "sha512-oId+tLxQ+AeDC34ELRYNSqJRaScB0TClUU6KQfpB8rNT6oelYlz8axsPhf6yPTg7PBJ/Z5WcXmUYiHEWgbbHJw==",
|
||||
"dev": true
|
||||
},
|
||||
"@webassemblyjs/wasm-edit": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.5.13.tgz",
|
||||
"integrity": "sha512-X7ZNW4+Hga4f2NmqENnHke2V/mGYK/xnybJSIXImt1ulxbCOEs/A+ZK/Km2jgihjyVxp/0z0hwIcxC6PrkWtgw==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.6.tgz",
|
||||
"integrity": "sha512-pTNjLO3o41v/Vz9VFLl+I3YLImpCSpodFW77pNoH4agn5I6GgSxXHXtvWDTvYJFty0jSeXZWLEmbaSIRUDlekg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/ast": "1.5.13",
|
||||
"@webassemblyjs/helper-buffer": "1.5.13",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.5.13",
|
||||
"@webassemblyjs/helper-wasm-section": "1.5.13",
|
||||
"@webassemblyjs/wasm-gen": "1.5.13",
|
||||
"@webassemblyjs/wasm-opt": "1.5.13",
|
||||
"@webassemblyjs/wasm-parser": "1.5.13",
|
||||
"@webassemblyjs/wast-printer": "1.5.13",
|
||||
"debug": "^3.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"debug": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
|
||||
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ms": "2.0.0"
|
||||
}
|
||||
}
|
||||
"@webassemblyjs/ast": "1.7.6",
|
||||
"@webassemblyjs/helper-buffer": "1.7.6",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.7.6",
|
||||
"@webassemblyjs/helper-wasm-section": "1.7.6",
|
||||
"@webassemblyjs/wasm-gen": "1.7.6",
|
||||
"@webassemblyjs/wasm-opt": "1.7.6",
|
||||
"@webassemblyjs/wasm-parser": "1.7.6",
|
||||
"@webassemblyjs/wast-printer": "1.7.6"
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/wasm-gen": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.5.13.tgz",
|
||||
"integrity": "sha512-yfv94Se8R73zmr8GAYzezFHc3lDwE/lBXQddSiIZEKZFuqy7yWtm3KMwA1uGbv5G1WphimJxboXHR80IgX1hQA==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.6.tgz",
|
||||
"integrity": "sha512-mQvFJVumtmRKEUXMohwn8nSrtjJJl6oXwF3FotC5t6e2hlKMh8sIaW03Sck2MDzw9xPogZD7tdP5kjPlbH9EcQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/ast": "1.5.13",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.5.13",
|
||||
"@webassemblyjs/ieee754": "1.5.13",
|
||||
"@webassemblyjs/leb128": "1.5.13",
|
||||
"@webassemblyjs/utf8": "1.5.13"
|
||||
"@webassemblyjs/ast": "1.7.6",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.7.6",
|
||||
"@webassemblyjs/ieee754": "1.7.6",
|
||||
"@webassemblyjs/leb128": "1.7.6",
|
||||
"@webassemblyjs/utf8": "1.7.6"
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/wasm-opt": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.5.13.tgz",
|
||||
"integrity": "sha512-IkXSkgzVhQ0QYAdIayuCWMmXSYx0dHGU8Ah/AxJf1gBvstMWVnzJnBwLsXLyD87VSBIcsqkmZ28dVb0mOC3oBg==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.6.tgz",
|
||||
"integrity": "sha512-go44K90fSIsDwRgtHhX14VtbdDPdK2sZQtZqUcMRvTojdozj5tLI0VVJAzLCfz51NOkFXezPeVTAYFqrZ6rI8Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/ast": "1.5.13",
|
||||
"@webassemblyjs/helper-buffer": "1.5.13",
|
||||
"@webassemblyjs/wasm-gen": "1.5.13",
|
||||
"@webassemblyjs/wasm-parser": "1.5.13",
|
||||
"debug": "^3.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"debug": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
|
||||
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ms": "2.0.0"
|
||||
}
|
||||
}
|
||||
"@webassemblyjs/ast": "1.7.6",
|
||||
"@webassemblyjs/helper-buffer": "1.7.6",
|
||||
"@webassemblyjs/wasm-gen": "1.7.6",
|
||||
"@webassemblyjs/wasm-parser": "1.7.6"
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/wasm-parser": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.5.13.tgz",
|
||||
"integrity": "sha512-XnYoIcu2iqq8/LrtmdnN3T+bRjqYFjRHqWbqK3osD/0r/Fcv4d9ecRzjVtC29ENEuNTK4mQ9yyxCBCbK8S/cpg==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.6.tgz",
|
||||
"integrity": "sha512-t1T6TfwNY85pDA/HWPA8kB9xA4sp9ajlRg5W7EKikqrynTyFo+/qDzIpvdkOkOGjlS6d4n4SX59SPuIayR22Yg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/ast": "1.5.13",
|
||||
"@webassemblyjs/helper-api-error": "1.5.13",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.5.13",
|
||||
"@webassemblyjs/ieee754": "1.5.13",
|
||||
"@webassemblyjs/leb128": "1.5.13",
|
||||
"@webassemblyjs/utf8": "1.5.13"
|
||||
"@webassemblyjs/ast": "1.7.6",
|
||||
"@webassemblyjs/helper-api-error": "1.7.6",
|
||||
"@webassemblyjs/helper-wasm-bytecode": "1.7.6",
|
||||
"@webassemblyjs/ieee754": "1.7.6",
|
||||
"@webassemblyjs/leb128": "1.7.6",
|
||||
"@webassemblyjs/utf8": "1.7.6"
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/wast-parser": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.5.13.tgz",
|
||||
"integrity": "sha512-Lbz65T0LQ1LgzKiUytl34CwuhMNhaCLgrh0JW4rJBN6INnBB8NMwUfQM+FxTnLY9qJ+lHJL/gCM5xYhB9oWi4A==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.6.tgz",
|
||||
"integrity": "sha512-1MaWTErN0ziOsNUlLdvwS+NS1QWuI/kgJaAGAMHX8+fMJFgOJDmN/xsG4h/A1Gtf/tz5VyXQciaqHZqp2q0vfg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/ast": "1.5.13",
|
||||
"@webassemblyjs/floating-point-hex-parser": "1.5.13",
|
||||
"@webassemblyjs/helper-api-error": "1.5.13",
|
||||
"@webassemblyjs/helper-code-frame": "1.5.13",
|
||||
"@webassemblyjs/helper-fsm": "1.5.13",
|
||||
"long": "^3.2.0",
|
||||
"@webassemblyjs/ast": "1.7.6",
|
||||
"@webassemblyjs/floating-point-hex-parser": "1.7.6",
|
||||
"@webassemblyjs/helper-api-error": "1.7.6",
|
||||
"@webassemblyjs/helper-code-frame": "1.7.6",
|
||||
"@webassemblyjs/helper-fsm": "1.7.6",
|
||||
"@xtuc/long": "4.2.1",
|
||||
"mamacro": "^0.0.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"long": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz",
|
||||
"integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"@webassemblyjs/wast-printer": {
|
||||
"version": "1.5.13",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.5.13.tgz",
|
||||
"integrity": "sha512-QcwogrdqcBh8Z+eUF8SG+ag5iwQSXxQJELBEHmLkk790wgQgnIMmntT2sMAMw53GiFNckArf5X0bsCA44j3lWQ==",
|
||||
"version": "1.7.6",
|
||||
"resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.6.tgz",
|
||||
"integrity": "sha512-vHdHSK1tOetvDcl1IV1OdDeGNe/NDDQ+KzuZHMtqTVP1xO/tZ/IKNpj5BaGk1OYFdsDWQqb31PIwdEyPntOWRQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/ast": "1.5.13",
|
||||
"@webassemblyjs/wast-parser": "1.5.13",
|
||||
"long": "^3.2.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"long": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz",
|
||||
"integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=",
|
||||
"dev": true
|
||||
}
|
||||
"@webassemblyjs/ast": "1.7.6",
|
||||
"@webassemblyjs/wast-parser": "1.7.6",
|
||||
"@xtuc/long": "4.2.1"
|
||||
}
|
||||
},
|
||||
"@xtuc/ieee754": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
|
||||
"integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
|
||||
"dev": true
|
||||
},
|
||||
"@xtuc/long": {
|
||||
"version": "4.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.1.tgz",
|
||||
"integrity": "sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==",
|
||||
"dev": true
|
||||
},
|
||||
"acorn": {
|
||||
"version": "5.7.2",
|
||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.2.tgz",
|
||||
"integrity": "sha512-cJrKCNcr2kv8dlDnbw+JPUGjHZzo4myaxOLmpOX8a+rgX94YeTcTMv/LFJUSByRpc+i4GgVnnhLxvMu/2Y+rqw==",
|
||||
"version": "5.7.3",
|
||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz",
|
||||
"integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
|
||||
"dev": true
|
||||
},
|
||||
"acorn-dynamic-import": {
|
||||
@ -663,9 +585,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"binaryen": {
|
||||
"version": "49.0.0-nightly.20180731",
|
||||
"resolved": "https://registry.npmjs.org/binaryen/-/binaryen-49.0.0-nightly.20180731.tgz",
|
||||
"integrity": "sha512-uZ7bizGTMbEOzIwZmGbXIcGFy8IkZjDoNOy+nPnIv7Dy1MiURItE0PRMnpXO2GPOOq6ZALW8pb5xb9MShD0zQQ=="
|
||||
"version": "51.0.0",
|
||||
"resolved": "https://registry.npmjs.org/binaryen/-/binaryen-51.0.0.tgz",
|
||||
"integrity": "sha512-Iop30WDVekq1MV2ygWHvL0mzSUQLH7m8VB3DHpU3MTdQoPj8LoRWK4U5b5nAlHLYYU1v/tIkdmiPrGgx8ANSfw=="
|
||||
},
|
||||
"bluebird": {
|
||||
"version": "3.5.2",
|
||||
@ -731,7 +653,7 @@
|
||||
},
|
||||
"browserify-aes": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
|
||||
"resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
|
||||
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@ -768,7 +690,7 @@
|
||||
},
|
||||
"browserify-rsa": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
|
||||
"resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
|
||||
"integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@ -1138,7 +1060,7 @@
|
||||
},
|
||||
"create-hash": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
|
||||
"resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
|
||||
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@ -1151,7 +1073,7 @@
|
||||
},
|
||||
"create-hmac": {
|
||||
"version": "1.1.7",
|
||||
"resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
|
||||
"resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
|
||||
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@ -1296,7 +1218,7 @@
|
||||
},
|
||||
"diffie-hellman": {
|
||||
"version": "5.0.3",
|
||||
"resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
|
||||
"resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
|
||||
"integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@ -3356,7 +3278,7 @@
|
||||
},
|
||||
"parse-asn1": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
|
||||
"resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
|
||||
"integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@ -3480,7 +3402,7 @@
|
||||
},
|
||||
"public-encrypt": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz",
|
||||
"resolved": "http://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz",
|
||||
"integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@ -3565,15 +3487,14 @@
|
||||
}
|
||||
},
|
||||
"readdirp": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
|
||||
"integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
|
||||
"version": "2.2.1",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
|
||||
"integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "^4.1.2",
|
||||
"minimatch": "^3.0.2",
|
||||
"readable-stream": "^2.0.2",
|
||||
"set-immediate-shim": "^1.0.1"
|
||||
"graceful-fs": "^4.1.11",
|
||||
"micromatch": "^3.1.10",
|
||||
"readable-stream": "^2.0.2"
|
||||
}
|
||||
},
|
||||
"rechoir": {
|
||||
@ -3776,12 +3697,6 @@
|
||||
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
|
||||
"dev": true
|
||||
},
|
||||
"set-immediate-shim": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
|
||||
"integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
|
||||
"dev": true
|
||||
},
|
||||
"set-value": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz",
|
||||
@ -3813,7 +3728,7 @@
|
||||
},
|
||||
"sha.js": {
|
||||
"version": "2.4.11",
|
||||
"resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
|
||||
"resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
|
||||
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@ -4609,16 +4524,15 @@
|
||||
}
|
||||
},
|
||||
"webpack": {
|
||||
"version": "4.17.2",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-4.17.2.tgz",
|
||||
"integrity": "sha512-hCK8FPco2Paz9FVMlo3ZdVd7Jsr7qxoiEwhd7f4dMaWBLZtc7E+/9QNee4CYHlVSvpmspWBnhFpx4MiWSl3nNg==",
|
||||
"version": "4.18.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-4.18.1.tgz",
|
||||
"integrity": "sha512-YAKkdiasBy+XJqdxmr00NvL69I6TImnap/3+6YNEkS4lRMAfRCLEmtGWCIB0hGhb+qWDTdTV3C+zTPmctOhJ7Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@webassemblyjs/ast": "1.5.13",
|
||||
"@webassemblyjs/helper-module-context": "1.5.13",
|
||||
"@webassemblyjs/wasm-edit": "1.5.13",
|
||||
"@webassemblyjs/wasm-opt": "1.5.13",
|
||||
"@webassemblyjs/wasm-parser": "1.5.13",
|
||||
"@webassemblyjs/ast": "1.7.6",
|
||||
"@webassemblyjs/helper-module-context": "1.7.6",
|
||||
"@webassemblyjs/wasm-edit": "1.7.6",
|
||||
"@webassemblyjs/wasm-parser": "1.7.6",
|
||||
"acorn": "^5.6.2",
|
||||
"acorn-dynamic-import": "^3.0.0",
|
||||
"ajv": "^6.1.0",
|
||||
@ -4635,7 +4549,7 @@
|
||||
"neo-async": "^2.5.0",
|
||||
"node-libs-browser": "^2.0.0",
|
||||
"schema-utils": "^0.4.4",
|
||||
"tapable": "^1.0.0",
|
||||
"tapable": "^1.1.0",
|
||||
"uglifyjs-webpack-plugin": "^1.2.4",
|
||||
"watchpack": "^1.5.0",
|
||||
"webpack-sources": "^1.2.0"
|
||||
@ -4651,6 +4565,12 @@
|
||||
"memory-fs": "^0.4.0",
|
||||
"tapable": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"tapable": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.0.tgz",
|
||||
"integrity": "sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -12,7 +12,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@protobufjs/utf8": "^1.1.0",
|
||||
"binaryen": "49.0.0-nightly.20180731",
|
||||
"binaryen": "^51.0.0",
|
||||
"glob": "^7.1.3",
|
||||
"long": "^4.0.0"
|
||||
},
|
||||
@ -26,7 +26,7 @@
|
||||
"typedoc": "^0.11.1",
|
||||
"typedoc-plugin-external-module-name": "^1.1.3",
|
||||
"typescript": "^3.0.3",
|
||||
"webpack": "^4.17.2",
|
||||
"webpack": "^4.18.1",
|
||||
"webpack-cli": "^3.1.0"
|
||||
},
|
||||
"main": "index.js",
|
||||
|
@ -3078,7 +3078,7 @@ export function ensureGCHook(
|
||||
// remember the function index so we don't recurse infinitely
|
||||
var functionTable = compiler.functionTable;
|
||||
var gcHookIndex = functionTable.length;
|
||||
functionTable.push(0);
|
||||
functionTable.push("<placeholder>");
|
||||
classInstance.gcHookIndex = gcHookIndex;
|
||||
|
||||
// if the class extends a base class, call its hook first (calls mark)
|
||||
@ -3133,11 +3133,13 @@ export function ensureGCHook(
|
||||
}
|
||||
|
||||
// add the function to the module and return its table index
|
||||
functionTable[gcHookIndex] = module.addFunction(
|
||||
classInstance.internalName + "~gc",
|
||||
var funcName = classInstance.internalName + "~gc";
|
||||
module.addFunction(
|
||||
funcName,
|
||||
compiler.ensureFunctionType(null, Type.void, options.usizeType),
|
||||
null,
|
||||
module.createBlock(null, body)
|
||||
);
|
||||
functionTable[gcHookIndex] = funcName;
|
||||
return gcHookIndex;
|
||||
}
|
||||
|
@ -286,7 +286,7 @@ export class Compiler extends DiagnosticEmitter {
|
||||
/** Map of already compiled static string segments. */
|
||||
stringSegments: Map<string,MemorySegment> = new Map();
|
||||
/** Function table being compiled. */
|
||||
functionTable: FunctionRef[] = [];
|
||||
functionTable: string[] = [];
|
||||
/** Argument count helper global. */
|
||||
argcVar: GlobalRef = 0;
|
||||
/** Argument count helper setter. */
|
||||
@ -1474,7 +1474,7 @@ export class Compiler extends DiagnosticEmitter {
|
||||
// insert the trampoline if the function has optional parameters
|
||||
func = this.ensureTrampoline(func);
|
||||
}
|
||||
functionTable.push(func.ref);
|
||||
functionTable.push(func.internalName);
|
||||
func.functionTableIndex = index;
|
||||
return index;
|
||||
}
|
||||
|
2
src/glue/binaryen.d.ts
vendored
2
src/glue/binaryen.d.ts
vendored
@ -199,10 +199,8 @@ declare function _BinaryenGeFloat64(): BinaryenOp;
|
||||
|
||||
declare type BinaryenHostOp = BinaryenOp;
|
||||
|
||||
declare function _BinaryenPageSize(): BinaryenHostOp;
|
||||
declare function _BinaryenCurrentMemory(): BinaryenHostOp;
|
||||
declare function _BinaryenGrowMemory(): BinaryenHostOp;
|
||||
declare function _BinaryenHasFeature(): BinaryenHostOp;
|
||||
|
||||
declare type BinaryenAtomicRMWOp = BinaryenOp;
|
||||
|
||||
|
@ -204,10 +204,8 @@ export enum BinaryOp {
|
||||
}
|
||||
|
||||
export enum HostOp {
|
||||
PageSize = _BinaryenPageSize(),
|
||||
CurrentMemory = _BinaryenCurrentMemory(),
|
||||
GrowMemory = _BinaryenGrowMemory(),
|
||||
HasFeature = _BinaryenHasFeature(),
|
||||
|
||||
// see: https://github.com/WebAssembly/bulk-memory-operations
|
||||
// MoveMemory
|
||||
@ -875,12 +873,18 @@ export class Module {
|
||||
}
|
||||
}
|
||||
|
||||
setFunctionTable(funcs: FunctionRef[]): void {
|
||||
var cArr = allocPtrArray(funcs);
|
||||
setFunctionTable(funcs: string[]): void {
|
||||
var numNames = funcs.length;
|
||||
var names = new Array<usize>(numNames);
|
||||
for (let i = 0; i < numNames; ++i) {
|
||||
names[i] = allocString(funcs[i]);
|
||||
}
|
||||
var cArr = allocI32Array(names);
|
||||
try {
|
||||
_BinaryenSetFunctionTable(this.ref, cArr, funcs.length);
|
||||
_BinaryenSetFunctionTable(this.ref, cArr, numNames);
|
||||
} finally {
|
||||
memory.free(cArr);
|
||||
for (let i = numNames; i >= 0; --i) memory.free(names[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -239,7 +239,7 @@ F = select<f64>(12.5, 25.0, false);
|
||||
|
||||
if (!i) unreachable();
|
||||
|
||||
var fn = function(a: i32, b: i32): void {}
|
||||
var fn = function(a: i32, b: i32): void {};
|
||||
call_indirect(fn, 1, 2);
|
||||
|
||||
// AS specific
|
||||
|
@ -1,29 +1,27 @@
|
||||
(module
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $FF (func (param f64) (result f64)))
|
||||
(type $ff (func (param f32) (result f32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$d (func (result f64)))
|
||||
(type $FUNCSIG$f (func (result f32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\10\00\00\00c\00a\00l\00l\00-\00i\00n\00f\00e\00r\00r\00e\00d\00.\00t\00s")
|
||||
(export "memory" (memory $0))
|
||||
(start $start)
|
||||
(func $call-inferred/foo<i32> (; 1 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(get_local $0)
|
||||
(func $call-inferred/foo<i32> (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 42)
|
||||
)
|
||||
(func $call-inferred/foo<f64> (; 2 ;) (; has Stack IR ;) (type $FF) (param $0 f64) (result f64)
|
||||
(get_local $0)
|
||||
(func $call-inferred/foo<f64> (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$d) (result f64)
|
||||
(f64.const 42)
|
||||
)
|
||||
(func $call-inferred/foo<f32> (; 3 ;) (; has Stack IR ;) (type $ff) (param $0 f32) (result f32)
|
||||
(get_local $0)
|
||||
(func $call-inferred/foo<f32> (; 3 ;) (; has Stack IR ;) (type $FUNCSIG$f) (result f32)
|
||||
(f32.const 42)
|
||||
)
|
||||
(func $start (; 4 ;) (; has Stack IR ;) (type $v)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $call-inferred/foo<i32>
|
||||
(i32.const 42)
|
||||
)
|
||||
(call $call-inferred/foo<i32>)
|
||||
(i32.const 42)
|
||||
)
|
||||
(block
|
||||
@ -38,9 +36,7 @@
|
||||
)
|
||||
(if
|
||||
(f64.ne
|
||||
(call $call-inferred/foo<f64>
|
||||
(f64.const 42)
|
||||
)
|
||||
(call $call-inferred/foo<f64>)
|
||||
(f64.const 42)
|
||||
)
|
||||
(block
|
||||
@ -55,9 +51,7 @@
|
||||
)
|
||||
(if
|
||||
(f32.ne
|
||||
(call $call-inferred/foo<f32>
|
||||
(f32.const 42)
|
||||
)
|
||||
(call $call-inferred/foo<f32>)
|
||||
(f32.const 42)
|
||||
)
|
||||
(block
|
||||
@ -72,9 +66,7 @@
|
||||
)
|
||||
(if
|
||||
(f32.ne
|
||||
(call $call-inferred/foo<f32>
|
||||
(f32.const 42)
|
||||
)
|
||||
(call $call-inferred/foo<f32>)
|
||||
(f32.const 42)
|
||||
)
|
||||
(block
|
||||
|
@ -1,17 +1,16 @@
|
||||
(module
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$v (func))
|
||||
(memory $0 0)
|
||||
(export "memory" (memory $0))
|
||||
(export "test" (func $class-overloading/test))
|
||||
(start $start)
|
||||
(func $class-overloading/Foo#baz (; 0 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $class-overloading/Foo#baz (; 0 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(nop)
|
||||
)
|
||||
(func $class-overloading/test (; 1 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(call $class-overloading/Foo#baz
|
||||
(get_local $0)
|
||||
)
|
||||
(call $class-overloading/Foo#baz)
|
||||
)
|
||||
(func $start (; 2 ;) (; has Stack IR ;) (type $v)
|
||||
(call $class-overloading/test
|
||||
|
@ -1,70 +1,34 @@
|
||||
(module
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $fff (func (param f32 f32) (result f32)))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $ifff (func (param i32 f32 f32) (result f32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$f (func (result f32)))
|
||||
(global $class/Animal.ONE (mut i32) (i32.const 1))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\08\00\00\00c\00l\00a\00s\00s\00.\00t\00s")
|
||||
(export "memory" (memory $0))
|
||||
(export "test" (func $class/test))
|
||||
(start $start)
|
||||
(func $class/Animal.add (; 0 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $class/Animal.add (; 0 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.add
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(get_global $class/Animal.ONE)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(func $class/Animal.sub<f32> (; 1 ;) (; has Stack IR ;) (type $fff) (param $0 f32) (param $1 f32) (result f32)
|
||||
(func $class/Animal.sub<f32> (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$f) (result f32)
|
||||
(f32.add
|
||||
(f32.sub
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(f32.const -1)
|
||||
(f32.convert_s/i32
|
||||
(get_global $class/Animal.ONE)
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $class/Animal<f64>#instanceAdd (; 2 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(i32.add
|
||||
(i32.add
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
(get_global $class/Animal.ONE)
|
||||
)
|
||||
)
|
||||
(func $class/Animal<f64>#instanceSub<f32> (; 3 ;) (; has Stack IR ;) (type $ifff) (param $0 i32) (param $1 f32) (param $2 f32) (result f32)
|
||||
(f32.add
|
||||
(f32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
(f32.convert_s/i32
|
||||
(get_global $class/Animal.ONE)
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $class/test (; 4 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $class/test (; 2 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(drop
|
||||
(call $class/Animal<f64>#instanceAdd
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $class/Animal.add)
|
||||
)
|
||||
(drop
|
||||
(call $class/Animal<f64>#instanceSub<f32>
|
||||
(get_local $0)
|
||||
(f32.const 1)
|
||||
(f32.const 2)
|
||||
)
|
||||
(call $class/Animal.sub<f32>)
|
||||
)
|
||||
(drop
|
||||
(i32.load
|
||||
@ -95,18 +59,12 @@
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $start (; 5 ;) (; has Stack IR ;) (type $v)
|
||||
(func $start (; 3 ;) (; has Stack IR ;) (type $v)
|
||||
(drop
|
||||
(call $class/Animal.add
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $class/Animal.add)
|
||||
)
|
||||
(drop
|
||||
(call $class/Animal.sub<f32>
|
||||
(f32.const 1)
|
||||
(f32.const 2)
|
||||
)
|
||||
(call $class/Animal.sub<f32>)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -5,6 +5,7 @@
|
||||
(type $iiv (func (param i32 i32)))
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $exports/Animal.CAT i32 (i32.const 0))
|
||||
@ -143,9 +144,9 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 4 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 4 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
)
|
||||
(func $exports/Car#constructor (; 5 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -155,9 +156,7 @@
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 4)
|
||||
)
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
|
@ -6,6 +6,7 @@
|
||||
(type $FFF (func (param f64 f64) (result f64)))
|
||||
(type $iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $function-types/i32Adder (mut i32) (i32.const 0))
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
@ -54,17 +55,18 @@
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
(func $function-types/doAdd<i32> (; 8 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $function-types/doAdd<i32> (; 8 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(set_global $~argc
|
||||
(i32.const 2)
|
||||
)
|
||||
(call_indirect (type $iii)
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
(i32.const 4)
|
||||
(call $function-types/makeAdder<i32>)
|
||||
)
|
||||
)
|
||||
(func $function-types/makeAndAdd<i32>|trampoline (; 9 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $function-types/makeAndAdd<i32>|trampoline (; 9 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(block $1of1
|
||||
(block $0of1
|
||||
(block $outOfRange
|
||||
@ -77,14 +79,14 @@
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $0
|
||||
(call $function-types/makeAdder<i32>)
|
||||
)
|
||||
)
|
||||
(call $function-types/doAddWithFn<i32>
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
(func $start (; 10 ;) (; has Stack IR ;) (type $v)
|
||||
@ -181,10 +183,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $function-types/doAdd<i32>
|
||||
(i32.const 3)
|
||||
(i32.const 4)
|
||||
)
|
||||
(call $function-types/doAdd<i32>)
|
||||
(i32.const 7)
|
||||
)
|
||||
(block
|
||||
@ -221,11 +220,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $function-types/makeAndAdd<i32>|trampoline
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $function-types/makeAndAdd<i32>|trampoline)
|
||||
(i32.const 3)
|
||||
)
|
||||
(block
|
||||
|
@ -4,16 +4,11 @@
|
||||
(type $I (func (result i64)))
|
||||
(type $f (func (result f32)))
|
||||
(type $F (func (result f64)))
|
||||
(type $iv (func (param i32)))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $II (func (param i64) (result i64)))
|
||||
(type $ff (func (param f32) (result f32)))
|
||||
(type $FF (func (param f64) (result f64)))
|
||||
(type $iiv (func (param i32 i32)))
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $IiI (func (param i64 i32) (result i64)))
|
||||
(type $fff (func (param f32 f32) (result f32)))
|
||||
(type $FFF (func (param f64 f64) (result f64)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$j (func (result i64)))
|
||||
(type $FUNCSIG$f (func (result f32)))
|
||||
(type $FUNCSIG$d (func (result f64)))
|
||||
(memory $0 0)
|
||||
(export "memory" (memory $0))
|
||||
(start $start)
|
||||
@ -32,51 +27,34 @@
|
||||
(func $function/F (; 4 ;) (; has Stack IR ;) (type $F) (result f64)
|
||||
(f64.const 0)
|
||||
)
|
||||
(func $function/iv (; 5 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $function/iv (; 5 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(nop)
|
||||
)
|
||||
(func $function/ii (; 6 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(get_local $0)
|
||||
(func $function/ii (; 6 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $function/II (; 7 ;) (; has Stack IR ;) (type $II) (param $0 i64) (result i64)
|
||||
(get_local $0)
|
||||
(func $function/II (; 7 ;) (; has Stack IR ;) (type $FUNCSIG$j) (result i64)
|
||||
(i64.const 0)
|
||||
)
|
||||
(func $function/ff (; 8 ;) (; has Stack IR ;) (type $ff) (param $0 f32) (result f32)
|
||||
(get_local $0)
|
||||
(func $function/ff (; 8 ;) (; has Stack IR ;) (type $FUNCSIG$f) (result f32)
|
||||
(f32.const 0)
|
||||
)
|
||||
(func $function/FF (; 9 ;) (; has Stack IR ;) (type $FF) (param $0 f64) (result f64)
|
||||
(get_local $0)
|
||||
(func $function/FF (; 9 ;) (; has Stack IR ;) (type $FUNCSIG$d) (result f64)
|
||||
(f64.const 0)
|
||||
)
|
||||
(func $function/iiv (; 10 ;) (; has Stack IR ;) (type $iiv) (param $0 i32) (param $1 i32)
|
||||
(nop)
|
||||
(func $function/iii (; 10 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 3)
|
||||
)
|
||||
(func $function/iii (; 11 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $function/III (; 11 ;) (; has Stack IR ;) (type $FUNCSIG$j) (result i64)
|
||||
(i64.const 3)
|
||||
)
|
||||
(func $function/III (; 12 ;) (; has Stack IR ;) (type $IiI) (param $0 i64) (param $1 i32) (result i64)
|
||||
(i64.add
|
||||
(get_local $0)
|
||||
(i64.extend_s/i32
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(func $function/fff (; 12 ;) (; has Stack IR ;) (type $FUNCSIG$f) (result f32)
|
||||
(f32.const 3)
|
||||
)
|
||||
(func $function/fff (; 13 ;) (; has Stack IR ;) (type $fff) (param $0 f32) (param $1 f32) (result f32)
|
||||
(f32.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $function/FFF (; 13 ;) (; has Stack IR ;) (type $FUNCSIG$d) (result f64)
|
||||
(f64.const 3)
|
||||
)
|
||||
(func $function/FFF (; 14 ;) (; has Stack IR ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
|
||||
(f64.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(func $start (; 15 ;) (; has Stack IR ;) (type $v)
|
||||
(func $start (; 14 ;) (; has Stack IR ;) (type $v)
|
||||
(call $function/v)
|
||||
(drop
|
||||
(call $function/i)
|
||||
@ -90,56 +68,31 @@
|
||||
(drop
|
||||
(call $function/F)
|
||||
)
|
||||
(call $function/iv
|
||||
(i32.const 0)
|
||||
(call $function/iv)
|
||||
(drop
|
||||
(call $function/ii)
|
||||
)
|
||||
(drop
|
||||
(call $function/ii
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $function/II)
|
||||
)
|
||||
(drop
|
||||
(call $function/II
|
||||
(i64.const 0)
|
||||
)
|
||||
(call $function/ff)
|
||||
)
|
||||
(drop
|
||||
(call $function/ff
|
||||
(f32.const 0)
|
||||
)
|
||||
(call $function/FF)
|
||||
)
|
||||
(call $function/iv)
|
||||
(drop
|
||||
(call $function/iii)
|
||||
)
|
||||
(drop
|
||||
(call $function/FF
|
||||
(f64.const 0)
|
||||
)
|
||||
)
|
||||
(call $function/iiv
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
(call $function/III)
|
||||
)
|
||||
(drop
|
||||
(call $function/iii
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $function/fff)
|
||||
)
|
||||
(drop
|
||||
(call $function/III
|
||||
(i64.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
(drop
|
||||
(call $function/fff
|
||||
(f32.const 1)
|
||||
(f32.const 2)
|
||||
)
|
||||
)
|
||||
(drop
|
||||
(call $function/FFF
|
||||
(f64.const 1)
|
||||
(f64.const 2)
|
||||
)
|
||||
(call $function/FFF)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -2,6 +2,7 @@
|
||||
(type $i (func (result i32)))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
@ -97,31 +98,27 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 1 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $getter-call/C#get:x~anonymous|0 (; 2 ;) (; has Stack IR ;) (type $i) (result i32)
|
||||
(i32.const 42)
|
||||
)
|
||||
(func $getter-call/C#get:x (; 3 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $getter-call/C#get:x (; 3 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $getter-call/test (; 4 ;) (; has Stack IR ;) (type $i) (result i32)
|
||||
(local $0 i32)
|
||||
(set_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(set_global $~argc
|
||||
(i32.const 0)
|
||||
)
|
||||
(call_indirect (type $i)
|
||||
(call $getter-call/C#get:x
|
||||
(get_local $0)
|
||||
)
|
||||
(call $getter-call/C#get:x)
|
||||
)
|
||||
)
|
||||
(func $start (; 5 ;) (; has Stack IR ;) (type $v)
|
||||
|
@ -28,11 +28,9 @@
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $if/ifAlwaysReturns (; 3 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(if
|
||||
(if (result i32)
|
||||
(get_local $0)
|
||||
(return
|
||||
(i32.const 1)
|
||||
)
|
||||
(i32.const 1)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
|
@ -1,66 +1,36 @@
|
||||
(module
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(memory $0 0)
|
||||
(export "memory" (memory $0))
|
||||
(start $start)
|
||||
(func $export/add (; 0 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $export/add (; 0 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 3)
|
||||
)
|
||||
(func $export/sub (; 1 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(i32.sub
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $export/sub (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const -1)
|
||||
)
|
||||
(func $export/mul (; 2 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(i32.mul
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(func $export/ns.two (; 3 ;) (; has Stack IR ;) (type $v)
|
||||
(func $export/ns.two (; 2 ;) (; has Stack IR ;) (type $v)
|
||||
(nop)
|
||||
)
|
||||
(func $start (; 4 ;) (; has Stack IR ;) (type $v)
|
||||
(func $start (; 3 ;) (; has Stack IR ;) (type $v)
|
||||
(drop
|
||||
(i32.add
|
||||
(i32.add
|
||||
(call $export/add
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $export/sub
|
||||
(i32.const 2)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(call $export/mul
|
||||
(i32.const 3)
|
||||
(i32.const 1)
|
||||
(call $export/add)
|
||||
(call $export/sub)
|
||||
)
|
||||
(call $export/add)
|
||||
)
|
||||
)
|
||||
(call $export/ns.two)
|
||||
(drop
|
||||
(i32.add
|
||||
(i32.add
|
||||
(call $export/add
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $export/sub
|
||||
(i32.const 2)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(call $export/mul
|
||||
(i32.const 3)
|
||||
(i32.const 1)
|
||||
(call $export/add)
|
||||
(call $export/sub)
|
||||
)
|
||||
(call $export/add)
|
||||
)
|
||||
)
|
||||
(call $export/ns.two)
|
||||
|
@ -1,29 +1,23 @@
|
||||
(module
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $Fi (func (param f64) (result i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $instanceof/an (mut i32) (i32.const 0))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0d\00\00\00i\00n\00s\00t\00a\00n\00c\00e\00o\00f\00.\00t\00s")
|
||||
(export "memory" (memory $0))
|
||||
(start $start)
|
||||
(func $instanceof/isI32<i32> (; 1 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $instanceof/isI32<i32> (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 1)
|
||||
)
|
||||
(func $instanceof/isI32<f64> (; 2 ;) (; has Stack IR ;) (type $Fi) (param $0 f64) (result i32)
|
||||
(func $instanceof/isI32<f64> (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $instanceof/isI32<u32> (; 3 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $start (; 4 ;) (; has Stack IR ;) (type $v)
|
||||
(func $start (; 3 ;) (; has Stack IR ;) (type $v)
|
||||
(if
|
||||
(i32.eqz
|
||||
(call $instanceof/isI32<i32>
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $instanceof/isI32<i32>)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
@ -36,9 +30,7 @@
|
||||
)
|
||||
)
|
||||
(if
|
||||
(call $instanceof/isI32<f64>
|
||||
(f64.const 0)
|
||||
)
|
||||
(call $instanceof/isI32<f64>)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
@ -50,9 +42,7 @@
|
||||
)
|
||||
)
|
||||
(if
|
||||
(call $instanceof/isI32<u32>
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $instanceof/isI32<f64>)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $FF (func (param f64) (result f64)))
|
||||
(type $Fi (func (param f64) (result i32)))
|
||||
(type $FFFF (func (param f64 f64 f64) (result f64)))
|
||||
(type $FUNCSIG$dd (func (param f64) (result f64)))
|
||||
(memory $0 0)
|
||||
(export "memory" (memory $0))
|
||||
(export "computeLine" (func $../../examples/mandelbrot/assembly/index/computeLine))
|
||||
@ -277,13 +277,13 @@
|
||||
(f64.const 0)
|
||||
)
|
||||
)
|
||||
(func $../../examples/mandelbrot/assembly/index/clamp<f64> (; 2 ;) (; has Stack IR ;) (type $FFFF) (param $0 f64) (param $1 f64) (param $2 f64) (result f64)
|
||||
(func $../../examples/mandelbrot/assembly/index/clamp<f64> (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$dd) (param $0 f64) (result f64)
|
||||
(f64.min
|
||||
(f64.max
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(f64.const 0)
|
||||
)
|
||||
(get_local $2)
|
||||
(f64.const 1)
|
||||
)
|
||||
)
|
||||
(func $../../examples/mandelbrot/assembly/index/computeLine (; 3 ;) (; has Stack IR ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
|
||||
@ -540,8 +540,6 @@
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(f64.const 0)
|
||||
(f64.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -1,17 +1,15 @@
|
||||
(module
|
||||
(type $i (func (result i32)))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(memory $0 0)
|
||||
(export "memory" (memory $0))
|
||||
(export "test" (func $new-without-allocator/test))
|
||||
(func $~lib/memory/memory.allocate (; 0 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 0 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(unreachable)
|
||||
)
|
||||
(func $new-without-allocator/test (; 1 ;) (; has Stack IR ;) (type $i) (result i32)
|
||||
(drop
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
|
@ -2,9 +2,9 @@
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iv (func (param i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $iiiiii (func (param i32 i32 i32 i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -103,50 +103,42 @@
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/string/compareUnsafe (; 3 ;) (; has Stack IR ;) (type $iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
|
||||
(local $5 i32)
|
||||
(set_local $1
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.add
|
||||
(get_local $2)
|
||||
(i32.shl
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/string/compareUnsafe (; 3 ;) (; has Stack IR ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(set_local $3
|
||||
(get_local $0)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(tee_local $0
|
||||
(if (result i32)
|
||||
(get_local $4)
|
||||
(get_local $2)
|
||||
(i32.eqz
|
||||
(tee_local $5
|
||||
(tee_local $4
|
||||
(i32.sub
|
||||
(i32.load16_u offset=4
|
||||
(get_local $1)
|
||||
(get_local $3)
|
||||
)
|
||||
(i32.load16_u offset=4
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $4)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
(block
|
||||
(set_local $4
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $4)
|
||||
(get_local $2)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(set_local $3
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
@ -156,24 +148,18 @@
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.add
|
||||
(get_local $2)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(br $continue|0)
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $5)
|
||||
(get_local $4)
|
||||
)
|
||||
(func $~lib/string/String.__eq (; 4 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String.__eq (; 4 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(if
|
||||
(i32.eq
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return
|
||||
(i32.const 1)
|
||||
@ -181,33 +167,31 @@
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
)
|
||||
(set_local $1
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(return
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(i32.load
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(return
|
||||
@ -217,10 +201,8 @@
|
||||
(i32.eqz
|
||||
(call $~lib/internal/string/compareUnsafe
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(i32.const 8)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -248,7 +230,6 @@
|
||||
(i32.load offset=4
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(block
|
||||
|
@ -1,6 +1,6 @@
|
||||
(module
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(global $export/a i32 (i32.const 1))
|
||||
(global $export/b i32 (i32.const 2))
|
||||
(memory $0 0)
|
||||
@ -10,29 +10,17 @@
|
||||
(export "renamed_b" (global $export/b))
|
||||
(export "renamed_renamed_b" (global $export/b))
|
||||
(start $start)
|
||||
(func $export/add (; 0 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $export/add (; 0 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 3)
|
||||
)
|
||||
(func $export/mul (; 1 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(i32.mul
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $export/mul (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 12)
|
||||
)
|
||||
(func $start (; 2 ;) (; has Stack IR ;) (type $v)
|
||||
(drop
|
||||
(i32.add
|
||||
(call $export/add
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $export/mul
|
||||
(i32.const 3)
|
||||
(i32.const 4)
|
||||
)
|
||||
(call $export/add)
|
||||
(call $export/mul)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $iiv (func (param i32 i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$v (func))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $retain-i32/si (mut i32) (i32.const 0))
|
||||
(global $retain-i32/ui (mut i32) (i32.const 0))
|
||||
@ -9,103 +9,34 @@
|
||||
(data (i32.const 8) "\0d\00\00\00r\00e\00t\00a\00i\00n\00-\00i\003\002\00.\00t\00s")
|
||||
(export "memory" (memory $0))
|
||||
(start $start)
|
||||
(func $retain-i32/test (; 1 ;) (; has Stack IR ;) (type $iiv) (param $0 i32) (param $1 i32)
|
||||
(func $retain-i32/test (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(nop)
|
||||
)
|
||||
(func $start (; 2 ;) (; has Stack IR ;) (type $v)
|
||||
(local $0 i32)
|
||||
(call $retain-i32/test
|
||||
(i32.const 0)
|
||||
(i32.const 127)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 127)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 1)
|
||||
(i32.const 127)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 127)
|
||||
(i32.const 1)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -1)
|
||||
(i32.const 127)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 127)
|
||||
(i32.const -1)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 0)
|
||||
(i32.const -128)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -128)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 1)
|
||||
(i32.const -128)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -128)
|
||||
(i32.const 1)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -1)
|
||||
(i32.const -128)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -128)
|
||||
(i32.const -1)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 127)
|
||||
(i32.const 127)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -128)
|
||||
(i32.const -128)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 127)
|
||||
(i32.const -128)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -128)
|
||||
(i32.const 127)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 0)
|
||||
(i32.const 255)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 255)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 1)
|
||||
(i32.const 255)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 255)
|
||||
(i32.const 1)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -1)
|
||||
(i32.const 255)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 255)
|
||||
(i32.const -1)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 255)
|
||||
(i32.const 255)
|
||||
)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(block $break|0
|
||||
(set_local $0
|
||||
(i32.const -128)
|
||||
@ -117,54 +48,18 @@
|
||||
(i32.const 255)
|
||||
)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 1)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -1)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -128)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 127)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 255)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -32768)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 32767)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 65535)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const 2147483647)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -2147483648)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test
|
||||
(i32.const -1)
|
||||
(get_local $0)
|
||||
)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(call $retain-i32/test)
|
||||
(set_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
|
@ -1,10 +1,10 @@
|
||||
(module
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$v (func))
|
||||
(memory $0 0)
|
||||
(export "memory" (memory $0))
|
||||
(start $start)
|
||||
(func $scoped/fn (; 0 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $scoped/fn (; 0 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(nop)
|
||||
)
|
||||
(func $start (; 1 ;) (; has Stack IR ;) (type $v)
|
||||
@ -46,8 +46,6 @@
|
||||
(br $repeat|1)
|
||||
)
|
||||
)
|
||||
(call $scoped/fn
|
||||
(i32.const 42)
|
||||
)
|
||||
(call $scoped/fn)
|
||||
)
|
||||
)
|
||||
|
@ -1,10 +1,12 @@
|
||||
(module
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $iiiv (func (param i32 i32 i32)))
|
||||
(type $iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -15,42 +17,26 @@
|
||||
(data (i32.const 8) "\16\00\00\00s\00t\00d\00/\00a\00l\00l\00o\00c\00a\00t\00o\00r\00_\00a\00r\00e\00n\00a\00.\00t\00s")
|
||||
(export "memory" (memory $0))
|
||||
(start $start)
|
||||
(func $~lib/allocator/arena/__memory_allocate (; 1 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/arena/__memory_allocate (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(get_local $0)
|
||||
(i32.const 1073741824)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.and
|
||||
(i32.add
|
||||
(i32.add
|
||||
(tee_local $1
|
||||
(get_global $~lib/allocator/arena/offset)
|
||||
)
|
||||
(select
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
(i32.gt_u
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(tee_local $0
|
||||
(get_global $~lib/allocator/arena/offset)
|
||||
)
|
||||
(i32.const 7)
|
||||
(i32.const 49)
|
||||
)
|
||||
(i32.const -8)
|
||||
)
|
||||
)
|
||||
(i32.shl
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(current_memory)
|
||||
)
|
||||
(i32.const 16)
|
||||
@ -60,14 +46,14 @@
|
||||
(i32.lt_s
|
||||
(grow_memory
|
||||
(select
|
||||
(get_local $3)
|
||||
(tee_local $0
|
||||
(get_local $2)
|
||||
(tee_local $3
|
||||
(i32.shr_u
|
||||
(i32.and
|
||||
(i32.add
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 65535)
|
||||
)
|
||||
@ -77,8 +63,8 @@
|
||||
)
|
||||
)
|
||||
(i32.gt_s
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -87,7 +73,7 @@
|
||||
(if
|
||||
(i32.lt_s
|
||||
(grow_memory
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -96,134 +82,87 @@
|
||||
)
|
||||
)
|
||||
(set_global $~lib/allocator/arena/offset
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $~lib/internal/memory/memset (; 2 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i64)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(func $~lib/internal/memory/memset (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(i32.store8
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 18)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(i32.const 2)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $1
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(i32.const 42)
|
||||
)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(i32.const 18)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(i32.const 18)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 18)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(i32.const 18)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(i32.const 6)
|
||||
)
|
||||
(return)
|
||||
(i32.const 18)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 18)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(tee_local $3
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.const 18)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(tee_local $1
|
||||
(i32.mul
|
||||
(i32.and
|
||||
(get_local $1)
|
||||
(i32.const 255)
|
||||
(tee_local $1
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(i32.const 16843009)
|
||||
)
|
||||
)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
@ -231,14 +170,17 @@
|
||||
(get_local $0)
|
||||
(tee_local $2
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(i32.sub
|
||||
(i32.const 42)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const -4)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
@ -252,18 +194,18 @@
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $1
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
@ -271,14 +213,14 @@
|
||||
)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
@ -292,32 +234,32 @@
|
||||
(get_local $0)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $1
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
@ -325,33 +267,33 @@
|
||||
)
|
||||
(i32.const 28)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $1)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $1)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $1)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 303174162)
|
||||
)
|
||||
(set_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(tee_local $1
|
||||
(i32.add
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
@ -365,20 +307,7 @@
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(set_local $4
|
||||
(i64.or
|
||||
(tee_local $4
|
||||
(i64.extend_u/i32
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i64.shl
|
||||
(get_local $4)
|
||||
(i64.const 32)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
@ -390,28 +319,28 @@
|
||||
(block
|
||||
(i64.store
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i64.const 1302123111085380114)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 1302123111085380114)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 1302123111085380114)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 1302123111085380114)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
@ -1816,9 +1745,13 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/memory/memmove (; 4 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/internal/memory/memmove (; 4 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(set_local $2
|
||||
(i32.const 42)
|
||||
)
|
||||
(if
|
||||
(i32.eq
|
||||
(get_local $0)
|
||||
@ -1832,7 +1765,7 @@
|
||||
(i32.le_u
|
||||
(i32.add
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(i32.const 42)
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
@ -1842,7 +1775,7 @@
|
||||
(i32.le_u
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(i32.const 42)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
@ -1854,7 +1787,7 @@
|
||||
(call $~lib/internal/memory/memcpy
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(i32.const 42)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
@ -2108,8 +2041,12 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/memory/memcmp (; 5 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/internal/memory/memcmp (; 5 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(set_local $2
|
||||
(i32.const 42)
|
||||
)
|
||||
(if
|
||||
(i32.eq
|
||||
(get_local $0)
|
||||
@ -2178,7 +2115,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/allocator/arena/__memory_free (; 6 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $~lib/allocator/arena/__memory_free (; 6 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(nop)
|
||||
)
|
||||
(func $~lib/allocator/arena/__memory_reset (; 7 ;) (; has Stack IR ;) (type $v)
|
||||
@ -2194,14 +2131,10 @@
|
||||
(get_global $~lib/allocator/arena/startOffset)
|
||||
)
|
||||
(set_global $std/allocator_arena/ptr1
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(i32.const 42)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_allocate)
|
||||
)
|
||||
(set_global $std/allocator_arena/ptr2
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(i32.const 42)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_allocate)
|
||||
)
|
||||
(if
|
||||
(i32.eq
|
||||
@ -2220,8 +2153,6 @@
|
||||
)
|
||||
(call $~lib/internal/memory/memset
|
||||
(get_global $std/allocator_arena/ptr1)
|
||||
(i32.const 18)
|
||||
(i32.const 42)
|
||||
)
|
||||
(block $break|0
|
||||
(set_global $std/allocator_arena/i
|
||||
@ -2268,7 +2199,6 @@
|
||||
(call $~lib/internal/memory/memmove
|
||||
(get_global $std/allocator_arena/ptr2)
|
||||
(get_global $std/allocator_arena/ptr1)
|
||||
(i32.const 42)
|
||||
)
|
||||
(block $break|1
|
||||
(set_global $std/allocator_arena/i
|
||||
@ -2316,7 +2246,6 @@
|
||||
(call $~lib/internal/memory/memcmp
|
||||
(get_global $std/allocator_arena/ptr1)
|
||||
(get_global $std/allocator_arena/ptr2)
|
||||
(i32.const 42)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
@ -2328,17 +2257,11 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_free
|
||||
(get_global $std/allocator_arena/ptr1)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_free
|
||||
(get_global $std/allocator_arena/ptr2)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_free)
|
||||
(call $~lib/allocator/arena/__memory_free)
|
||||
(call $~lib/allocator/arena/__memory_reset)
|
||||
(set_global $std/allocator_arena/ptr1
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(i32.const 42)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_allocate)
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
|
@ -1,9 +1,9 @@
|
||||
(module
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $iiiiii (func (param i32 i32 i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 16) "\0e\00\00\00~\00l\00i\00b\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s")
|
||||
@ -60,8 +60,8 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/string/compareUnsafe (; 4 ;) (; has Stack IR ;) (type $iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
|
||||
(local $5 i32)
|
||||
(func $~lib/internal/string/compareUnsafe (; 4 ;) (; has Stack IR ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(local $4 i32)
|
||||
(set_local $1
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
@ -71,22 +71,13 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.add
|
||||
(get_local $2)
|
||||
(i32.shl
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(tee_local $0
|
||||
(if (result i32)
|
||||
(get_local $4)
|
||||
(get_local $3)
|
||||
(i32.eqz
|
||||
(tee_local $5
|
||||
(tee_local $4
|
||||
(i32.sub
|
||||
(i32.load16_u offset=4
|
||||
(get_local $1)
|
||||
@ -97,13 +88,13 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $4)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(block
|
||||
(set_local $4
|
||||
(set_local $3
|
||||
(i32.sub
|
||||
(get_local $4)
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
@ -123,11 +114,12 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $5)
|
||||
(get_local $4)
|
||||
)
|
||||
(func $~lib/string/String#startsWith (; 5 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/string/String#startsWith (; 5 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
@ -142,47 +134,30 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
)
|
||||
(set_local $1
|
||||
(i32.const 48)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.gt_s
|
||||
(i32.add
|
||||
(tee_local $4
|
||||
(tee_local $2
|
||||
(i32.load
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(tee_local $3
|
||||
(select
|
||||
(tee_local $3
|
||||
(select
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
(i32.gt_s
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
(tee_local $2
|
||||
(i32.const 0)
|
||||
(tee_local $1
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(i32.lt_s
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return
|
||||
(i32.const 0)
|
||||
@ -192,9 +167,8 @@
|
||||
(call $~lib/internal/string/compareUnsafe
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $4)
|
||||
(i32.const 8)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -204,8 +178,6 @@
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 8)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $std/array-access/stringArrayArrayPropertyAccess (; 7 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
@ -228,8 +200,6 @@
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(i32.const 8)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -4,6 +4,8 @@
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiiv (func (param i32 i32 i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -204,37 +206,36 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 6 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 6 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/memory/memset (; 7 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i64)
|
||||
(func $~lib/internal/memory/memset (; 7 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(i32.store8
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(return)
|
||||
@ -244,37 +245,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 6)
|
||||
)
|
||||
(return)
|
||||
@ -284,74 +285,63 @@
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(tee_local $3
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(tee_local $1
|
||||
(i32.mul
|
||||
(i32.and
|
||||
(get_local $1)
|
||||
(i32.const 255)
|
||||
(tee_local $2
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(i32.const 16843009)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const -4)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
@ -361,37 +351,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 24)
|
||||
)
|
||||
(return)
|
||||
@ -401,66 +391,66 @@
|
||||
(get_local $0)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 28)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(set_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
@ -471,60 +461,47 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(set_local $4
|
||||
(i64.or
|
||||
(tee_local $4
|
||||
(i64.extend_u/i32
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i64.shl
|
||||
(get_local $4)
|
||||
(i64.const 32)
|
||||
)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
(block
|
||||
(i64.store
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
)
|
||||
@ -539,62 +516,38 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/array/Array<i8>#constructor (; 8 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(get_local $1)
|
||||
(i32.const 1073741816)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 136)
|
||||
(i32.const 23)
|
||||
(i32.const 39)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(func $~lib/array/Array<i8>#constructor (; 8 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/internal/arraybuffer/allocateUnsafe
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(block
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(call $~lib/internal/memory/memset
|
||||
(i32.add
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
@ -609,68 +562,38 @@
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
(func $~lib/array/Array<i32>#constructor (; 10 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(get_local $1)
|
||||
(i32.const 268435454)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 136)
|
||||
(i32.const 23)
|
||||
(i32.const 39)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(func $~lib/array/Array<i32>#constructor (; 10 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/internal/arraybuffer/allocateUnsafe
|
||||
(tee_local $3
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(block
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 12)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(call $~lib/internal/memory/memset
|
||||
(i32.add
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 0)
|
||||
(get_local $3)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
@ -857,10 +780,7 @@
|
||||
)
|
||||
(call $~lib/array/Array<i8>#__unchecked_set
|
||||
(tee_local $0
|
||||
(call $~lib/array/Array<i8>#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(call $~lib/array/Array<i8>#constructor)
|
||||
)
|
||||
(i32.const 0)
|
||||
(get_global $std/array-literal/i)
|
||||
@ -972,10 +892,7 @@
|
||||
)
|
||||
(call $~lib/array/Array<i32>#__unchecked_set
|
||||
(tee_local $0
|
||||
(call $~lib/array/Array<i32>#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(call $~lib/array/Array<i32>#constructor)
|
||||
)
|
||||
(i32.const 0)
|
||||
(get_global $std/array-literal/i)
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -4,6 +4,9 @@
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiiv (func (param i32 i32 i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -144,32 +147,31 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/internal/memory/memset (; 4 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i64)
|
||||
(func $~lib/internal/memory/memset (; 4 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(i32.store8
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(return)
|
||||
@ -179,37 +181,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 6)
|
||||
)
|
||||
(return)
|
||||
@ -219,74 +221,63 @@
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(tee_local $3
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(tee_local $1
|
||||
(i32.mul
|
||||
(i32.and
|
||||
(get_local $1)
|
||||
(i32.const 255)
|
||||
(tee_local $2
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(i32.const 16843009)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const -4)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
@ -296,37 +287,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 24)
|
||||
)
|
||||
(return)
|
||||
@ -336,66 +327,66 @@
|
||||
(get_local $0)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 28)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(set_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
@ -406,60 +397,47 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(set_local $4
|
||||
(i64.or
|
||||
(tee_local $4
|
||||
(i64.extend_u/i32
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i64.shl
|
||||
(get_local $4)
|
||||
(i64.const 32)
|
||||
)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
(block
|
||||
(i64.store
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
)
|
||||
@ -474,45 +452,20 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 5 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(get_local $1)
|
||||
(i32.const 1073741816)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 8)
|
||||
(i32.const 13)
|
||||
(i32.const 40)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 5 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(call $~lib/internal/memory/memset
|
||||
(i32.add
|
||||
(tee_local $0
|
||||
(call $~lib/internal/arraybuffer/allocateUnsafe
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(unreachable)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 8)
|
||||
)
|
||||
(set_local $3
|
||||
(call $~lib/internal/arraybuffer/allocateUnsafe
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(call $~lib/internal/memory/memset
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(get_local $3)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $~lib/internal/memory/memcpy (; 6 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
@ -2297,7 +2250,8 @@
|
||||
)
|
||||
(get_local $3)
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#slice|trampoline (; 9 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#slice|trampoline (; 9 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(block $2of2
|
||||
(block $1of2
|
||||
(block $0of2
|
||||
@ -2330,11 +2284,7 @@
|
||||
(get_global $~lib/allocator/arena/startOffset)
|
||||
)
|
||||
(set_global $std/arraybuffer/buffer
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 8)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor)
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
@ -2360,7 +2310,6 @@
|
||||
(call $~lib/arraybuffer/ArrayBuffer#slice|trampoline
|
||||
(get_global $std/arraybuffer/buffer)
|
||||
(i32.const 0)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
@ -2402,7 +2351,6 @@
|
||||
(call $~lib/arraybuffer/ArrayBuffer#slice|trampoline
|
||||
(get_global $std/arraybuffer/buffer)
|
||||
(i32.const 1)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
@ -2429,7 +2377,6 @@
|
||||
(call $~lib/arraybuffer/ArrayBuffer#slice|trampoline
|
||||
(get_global $std/arraybuffer/buffer)
|
||||
(i32.const -1)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
@ -2552,7 +2499,6 @@
|
||||
(call $~lib/arraybuffer/ArrayBuffer#slice|trampoline
|
||||
(get_global $std/arraybuffer/buffer)
|
||||
(i32.const 42)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
|
@ -1,6 +1,7 @@
|
||||
(module
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $std/constructor/emptyCtor (mut i32) (i32.const 0))
|
||||
@ -107,86 +108,60 @@
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(func $std/constructor/EmptyCtor#constructor (; 2 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(if (result i32)
|
||||
(get_local $0)
|
||||
(get_local $0)
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $std/constructor/EmptyCtor#constructor (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $std/constructor/EmptyCtorWithFieldInit#constructor (; 3 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 4)
|
||||
)
|
||||
(func $std/constructor/EmptyCtorWithFieldInit#constructor (; 3 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 4)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $std/constructor/EmptyCtorWithFieldNoInit#constructor (; 4 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 4)
|
||||
)
|
||||
(func $std/constructor/EmptyCtorWithFieldNoInit#constructor (; 4 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 4)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $std/constructor/CtorReturns#constructor (; 5 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $std/constructor/CtorReturns#constructor (; 5 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $std/constructor/CtorConditionallyReturns#constructor (; 6 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $std/constructor/CtorConditionallyReturns#constructor (; 6 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(if
|
||||
(get_global $std/constructor/b)
|
||||
(return
|
||||
(tee_local $0
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(set_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $0)
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $std/constructor/CtorConditionallyAllocates#constructor (; 7 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $std/constructor/CtorConditionallyAllocates#constructor (; 7 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(if
|
||||
(get_global $std/constructor/b)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(set_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
(set_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -211,19 +186,13 @@
|
||||
(get_global $~lib/allocator/arena/startOffset)
|
||||
)
|
||||
(set_global $std/constructor/emptyCtor
|
||||
(call $std/constructor/EmptyCtor#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $std/constructor/EmptyCtor#constructor)
|
||||
)
|
||||
(set_global $std/constructor/emptyCtorWithFieldInit
|
||||
(call $std/constructor/EmptyCtorWithFieldInit#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $std/constructor/EmptyCtorWithFieldInit#constructor)
|
||||
)
|
||||
(set_global $std/constructor/emptyCtorWithFieldNoInit
|
||||
(call $std/constructor/EmptyCtorWithFieldNoInit#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $std/constructor/EmptyCtorWithFieldNoInit#constructor)
|
||||
)
|
||||
(set_global $std/constructor/none
|
||||
(call $~lib/memory/memory.allocate
|
||||
@ -253,24 +222,16 @@
|
||||
(get_local $0)
|
||||
)
|
||||
(set_global $std/constructor/ctorReturns
|
||||
(call $std/constructor/CtorReturns#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $std/constructor/CtorReturns#constructor)
|
||||
)
|
||||
(set_global $std/constructor/ctorConditionallyReturns
|
||||
(call $std/constructor/CtorConditionallyReturns#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $std/constructor/CtorConditionallyReturns#constructor)
|
||||
)
|
||||
(set_global $std/constructor/ctorAllocates
|
||||
(call $std/constructor/EmptyCtor#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $std/constructor/EmptyCtor#constructor)
|
||||
)
|
||||
(set_global $std/constructor/ctorConditionallyAllocates
|
||||
(call $std/constructor/CtorConditionallyAllocates#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $std/constructor/CtorConditionallyAllocates#constructor)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -7,6 +7,8 @@
|
||||
(type $iiiv (func (param i32 i32 i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $i (func (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -378,9 +380,7 @@
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(call $~iterateRoots
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $~iterateRoots)
|
||||
(set_global $~lib/collector/itcm/state
|
||||
(i32.const 2)
|
||||
)
|
||||
@ -419,9 +419,7 @@
|
||||
)
|
||||
)
|
||||
(block
|
||||
(call $~iterateRoots
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $~iterateRoots)
|
||||
(if
|
||||
(i32.eq
|
||||
(call $~lib/collector/itcm/ManagedObject#get:next
|
||||
@ -576,32 +574,31 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/memory/memset (; 19 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i64)
|
||||
(func $~lib/internal/memory/memset (; 19 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(i32.store8
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(return)
|
||||
@ -611,37 +608,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 6)
|
||||
)
|
||||
(return)
|
||||
@ -651,74 +648,63 @@
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(tee_local $3
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(tee_local $1
|
||||
(i32.mul
|
||||
(i32.and
|
||||
(get_local $1)
|
||||
(i32.const 255)
|
||||
(tee_local $2
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(i32.const 16843009)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const -4)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
@ -728,37 +714,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 24)
|
||||
)
|
||||
(return)
|
||||
@ -768,66 +754,66 @@
|
||||
(get_local $0)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 28)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(set_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
@ -838,60 +824,47 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(set_local $4
|
||||
(i64.or
|
||||
(tee_local $4
|
||||
(i64.extend_u/i32
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i64.shl
|
||||
(get_local $4)
|
||||
(i64.const 32)
|
||||
)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
(block
|
||||
(i64.store
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
)
|
||||
@ -2665,7 +2638,6 @@
|
||||
)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const 0)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
@ -2696,7 +2668,6 @@
|
||||
)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const 0)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
@ -2899,10 +2870,10 @@
|
||||
)
|
||||
(call $~lib/gc/gc.collect)
|
||||
)
|
||||
(func $~iterateRoots (; 28 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $~iterateRoots (; 28 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(call_indirect (type $iv)
|
||||
(get_global $std/gc-array/arr)
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -1,11 +1,12 @@
|
||||
(module
|
||||
(type $iv (func (param i32)))
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiv (func (param i32 i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $i (func (result i32)))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -321,9 +322,7 @@
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(call $~iterateRoots
|
||||
(i32.const 1)
|
||||
)
|
||||
(call $~iterateRoots)
|
||||
(set_global $~lib/collector/itcm/state
|
||||
(i32.const 2)
|
||||
)
|
||||
@ -362,9 +361,7 @@
|
||||
)
|
||||
)
|
||||
(block
|
||||
(call $~iterateRoots
|
||||
(i32.const 1)
|
||||
)
|
||||
(call $~iterateRoots)
|
||||
(if
|
||||
(i32.eq
|
||||
(call $~lib/collector/itcm/ManagedObject#get:next
|
||||
@ -435,25 +432,16 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/collector/itcm/__gc_allocate (; 13 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(get_local $0)
|
||||
(i32.const 1073741808)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
(func $~lib/collector/itcm/__gc_allocate (; 13 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(call $~lib/collector/itcm/step)
|
||||
(i32.store offset=8
|
||||
(tee_local $0
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(i32.const 20)
|
||||
)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/collector/itcm/ManagedObject#set:color
|
||||
(get_local $0)
|
||||
@ -545,10 +533,7 @@
|
||||
(i32.const 0)
|
||||
)
|
||||
(set_global $std/gc-basics/obj
|
||||
(call $~lib/collector/itcm/__gc_allocate
|
||||
(i32.const 4)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/collector/itcm/__gc_allocate)
|
||||
)
|
||||
(i32.store
|
||||
(get_global $std/gc-basics/obj)
|
||||
@ -659,14 +644,14 @@
|
||||
)
|
||||
(call $~lib/gc/gc.collect)
|
||||
)
|
||||
(func $~iterateRoots (; 19 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $~iterateRoots (; 19 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(call_indirect (type $iv)
|
||||
(get_global $std/gc-basics/obj)
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(call_indirect (type $iv)
|
||||
(get_global $std/gc-basics/obj2)
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -2,6 +2,7 @@
|
||||
(type $iv (func (param i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$v (func))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $std/gc-integration/B.d (mut i32) (i32.const 16))
|
||||
(global $std/gc-integration/a_ref (mut i32) (i32.const 24))
|
||||
@ -41,9 +42,7 @@
|
||||
)
|
||||
)
|
||||
(func $start (; 2 ;) (; has Stack IR ;) (type $v)
|
||||
(call $~iterateRoots
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~iterateRoots)
|
||||
(if
|
||||
(i32.ne
|
||||
(get_global $std/gc-integration/i)
|
||||
@ -60,22 +59,22 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~iterateRoots (; 3 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $~iterateRoots (; 3 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(call_indirect (type $iv)
|
||||
(i32.const 8)
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call_indirect (type $iv)
|
||||
(get_global $std/gc-integration/B.d)
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call_indirect (type $iv)
|
||||
(get_global $std/gc-integration/a_ref)
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call_indirect (type $iv)
|
||||
(get_global $std/gc-integration/b_ref)
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -1,9 +1,10 @@
|
||||
(module
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iv (func (param i32)))
|
||||
(type $iiv (func (param i32 i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/collector/itcm/state (mut i32) (i32.const 0))
|
||||
@ -256,7 +257,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/allocator/arena/__memory_free (; 10 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $~lib/allocator/arena/__memory_free (; 10 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(nop)
|
||||
)
|
||||
(func $~lib/collector/itcm/step (; 11 ;) (; has Stack IR ;) (type $v)
|
||||
@ -316,9 +317,7 @@
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(call $~iterateRoots
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~iterateRoots)
|
||||
(set_global $~lib/collector/itcm/state
|
||||
(i32.const 2)
|
||||
)
|
||||
@ -357,9 +356,7 @@
|
||||
)
|
||||
)
|
||||
(block
|
||||
(call $~iterateRoots
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~iterateRoots)
|
||||
(if
|
||||
(i32.eq
|
||||
(call $~lib/collector/itcm/ManagedObject#get:next
|
||||
@ -414,9 +411,7 @@
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_free
|
||||
(get_local $0)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_free)
|
||||
)
|
||||
)
|
||||
(block
|
||||
@ -430,25 +425,16 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/collector/itcm/__gc_allocate (; 12 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(get_local $0)
|
||||
(i32.const 1073741808)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
(func $~lib/collector/itcm/__gc_allocate (; 12 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(call $~lib/collector/itcm/step)
|
||||
(i32.store offset=8
|
||||
(tee_local $0
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
(call $~lib/collector/itcm/ManagedObject#set:color
|
||||
(get_local $0)
|
||||
@ -559,10 +545,7 @@
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/collector/itcm/__gc_allocate
|
||||
(i32.const 8)
|
||||
(i32.const 1)
|
||||
)
|
||||
(call $~lib/collector/itcm/__gc_allocate)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -584,10 +567,10 @@
|
||||
)
|
||||
(call $~lib/gc/gc.collect)
|
||||
)
|
||||
(func $~iterateRoots (; 19 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $~iterateRoots (; 19 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(call_indirect (type $iv)
|
||||
(get_global $std/gc-object/obj)
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -4,6 +4,7 @@
|
||||
(type $FFF (func (param f64 f64) (result f64)))
|
||||
(type $FiF (func (param f64 i32) (result f64)))
|
||||
(type $Ff (func (param f64) (result f32)))
|
||||
(type $FUNCSIG$d (func (result f64)))
|
||||
(global $std/libm/E f64 (f64.const 2.718281828459045))
|
||||
(global $std/libm/LN10 f64 (f64.const 2.302585092994046))
|
||||
(global $std/libm/LN2 f64 (f64.const 0.6931471805599453))
|
||||
@ -2344,13 +2345,11 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/math/NativeMath.cos (; 23 ;) (; has Stack IR ;) (type $FF) (param $0 f64) (result f64)
|
||||
(func $~lib/math/NativeMath.cos (; 23 ;) (; has Stack IR ;) (type $FUNCSIG$d) (result f64)
|
||||
(unreachable)
|
||||
)
|
||||
(func $std/libm/cos (; 24 ;) (; has Stack IR ;) (type $FF) (param $0 f64) (result f64)
|
||||
(call $~lib/math/NativeMath.cos
|
||||
(get_local $0)
|
||||
)
|
||||
(call $~lib/math/NativeMath.cos)
|
||||
)
|
||||
(func $~lib/math/NativeMath.expm1 (; 25 ;) (; has Stack IR ;) (type $FF) (param $0 f64) (result f64)
|
||||
(local $1 f64)
|
||||
|
@ -17,6 +17,9 @@
|
||||
(type $iFi (func (param i32 f64) (result i32)))
|
||||
(type $iFii (func (param i32 f64 i32) (result i32)))
|
||||
(type $iFiv (func (param i32 f64 i32)))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -111,9 +114,9 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 2 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/arraybuffer/computeSize (; 3 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
@ -159,32 +162,31 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/internal/memory/memset (; 5 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i64)
|
||||
(func $~lib/internal/memory/memset (; 5 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(i32.store8
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(return)
|
||||
@ -194,37 +196,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 6)
|
||||
)
|
||||
(return)
|
||||
@ -234,74 +236,63 @@
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(tee_local $3
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(tee_local $1
|
||||
(i32.mul
|
||||
(i32.and
|
||||
(get_local $1)
|
||||
(i32.const 255)
|
||||
(tee_local $2
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(i32.const 16843009)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const -4)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
@ -311,37 +302,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 24)
|
||||
)
|
||||
(return)
|
||||
@ -351,66 +342,66 @@
|
||||
(get_local $0)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 28)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(set_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
@ -421,60 +412,47 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(set_local $4
|
||||
(i64.or
|
||||
(tee_local $4
|
||||
(i64.extend_u/i32
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i64.shl
|
||||
(get_local $4)
|
||||
(i64.const 32)
|
||||
)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
(block
|
||||
(i64.store
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
)
|
||||
@ -489,11 +467,11 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 6 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 6 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.const 1073741816)
|
||||
)
|
||||
(block
|
||||
@ -506,34 +484,32 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(set_local $3
|
||||
(set_local $2
|
||||
(call $~lib/internal/arraybuffer/allocateUnsafe
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(call $~lib/internal/memory/memset
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
)
|
||||
(func $~lib/map/Map<i8,i32>#clear (; 7 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 16)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -545,7 +521,6 @@
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 48)
|
||||
(i32.const 1)
|
||||
)
|
||||
@ -563,41 +538,33 @@
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $~lib/map/Map<i8,i32>#constructor (; 8 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(block
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $~lib/map/Map<i8,i32>#constructor (; 8 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i8,i32>#clear
|
||||
(get_local $0)
|
||||
@ -707,7 +674,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -722,7 +688,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.mul
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -1138,9 +1103,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i8,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i8,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -1645,7 +1608,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -1660,7 +1622,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.mul
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -2062,9 +2023,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i8,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i8,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -2638,7 +2597,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -2653,7 +2611,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.mul
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -3064,9 +3021,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i8,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i8,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -3571,7 +3526,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -3586,7 +3540,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.mul
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -3988,9 +3941,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i8,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i8,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -4579,7 +4530,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -4594,7 +4544,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.mul
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -4987,9 +4936,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i8,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i8,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -5431,9 +5378,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i8,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i8,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -5875,7 +5820,6 @@
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 16)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -5887,7 +5831,6 @@
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 64)
|
||||
(i32.const 1)
|
||||
)
|
||||
@ -5905,41 +5848,33 @@
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $~lib/map/Map<i64,i32>#constructor (; 48 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(block
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $~lib/map/Map<i64,i32>#constructor (; 48 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i64,i32>#clear
|
||||
(get_local $0)
|
||||
@ -6130,7 +6065,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -6145,7 +6079,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -6539,9 +6472,7 @@
|
||||
(local $0 i64)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i64,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i64,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -6997,9 +6928,7 @@
|
||||
(local $0 i64)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i64,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i64,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -7538,7 +7467,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -7553,7 +7481,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.mul
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -7955,9 +7882,7 @@
|
||||
(local $0 f32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i8,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i8,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -8504,7 +8429,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -8519,7 +8443,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -8921,9 +8844,7 @@
|
||||
(local $0 f64)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/map/Map<i64,i32>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<i64,i32>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $ifi (func (param i32 f32) (result i32)))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $std/new/aClass (mut i32) (i32.const 0))
|
||||
@ -93,36 +93,25 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 1 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(func $std/new/AClass#constructor (; 2 ;) (; has Stack IR ;) (type $ifi) (param $0 i32) (param $1 f32) (result i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(tee_local $2
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(block
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(f32.store offset=4
|
||||
(get_local $0)
|
||||
(f32.const 2)
|
||||
)
|
||||
(func $std/new/AClass#constructor (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(f32.store offset=4
|
||||
(get_local $0)
|
||||
(f32.const 2)
|
||||
)
|
||||
(i32.store
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
(i32.add
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -132,7 +121,7 @@
|
||||
)
|
||||
(f32.store offset=4
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(f32.const 3)
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
@ -144,10 +133,7 @@
|
||||
(get_global $~lib/allocator/arena/startOffset)
|
||||
)
|
||||
(set_global $std/new/aClass
|
||||
(call $std/new/AClass#constructor
|
||||
(i32.const 0)
|
||||
(f32.const 3)
|
||||
)
|
||||
(call $std/new/AClass#constructor)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -1,11 +1,13 @@
|
||||
(module
|
||||
(type $iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $FFF (func (param f64 f64) (result f64)))
|
||||
(type $FiF (func (param f64 i32) (result f64)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -163,36 +165,27 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 2 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(func $std/operator-overloading/Tester#constructor (; 3 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(block
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
)
|
||||
(func $std/operator-overloading/Tester#constructor (; 3 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(i32.store
|
||||
(tee_local $2
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
(get_local $0)
|
||||
(i32.store offset=4
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(get_local $2)
|
||||
)
|
||||
(func $std/operator-overloading/Tester.add (; 4 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.add
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -213,7 +206,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.sub (; 5 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.sub
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -234,7 +226,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.mul (; 6 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.mul
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -255,7 +246,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.div (; 7 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.div_s
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -276,7 +266,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.mod (; 8 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.rem_s
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -1838,7 +1827,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.pow (; 11 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.trunc_s/f64
|
||||
(call $~lib/math/NativeMath.pow
|
||||
(f64.convert_s/i32
|
||||
@ -1871,7 +1859,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.and (; 12 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.and
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -1892,7 +1879,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.or (; 13 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.or
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -1913,7 +1899,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.xor (; 14 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.xor
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -2088,60 +2073,56 @@
|
||||
)
|
||||
(get_local $2)
|
||||
)
|
||||
(func $std/operator-overloading/Tester.shr (; 21 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $std/operator-overloading/Tester.shr (; 21 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.shr_s
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
(i32.shr_s
|
||||
(i32.load offset=4
|
||||
(get_local $0)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $std/operator-overloading/Tester.shu (; 22 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $std/operator-overloading/Tester.shu (; 22 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.shr_u
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
(i32.shr_u
|
||||
(i32.load offset=4
|
||||
(get_local $0)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $std/operator-overloading/Tester.shl (; 23 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $std/operator-overloading/Tester.shl (; 23 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
(i32.shl
|
||||
(i32.load offset=4
|
||||
(get_local $0)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $std/operator-overloading/Tester.pos (; 24 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
@ -2152,7 +2133,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.neg (; 25 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(i32.load
|
||||
@ -2169,7 +2149,6 @@
|
||||
)
|
||||
(func $std/operator-overloading/Tester.not (; 26 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.xor
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
@ -2257,14 +2236,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/a1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/a2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const 3)
|
||||
)
|
||||
@ -2309,14 +2286,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/s1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/s2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const -3)
|
||||
)
|
||||
@ -2360,14 +2335,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/m1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const 5)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/m2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 3)
|
||||
(i32.const 2)
|
||||
)
|
||||
@ -2412,14 +2385,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/d1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 6)
|
||||
(i32.const 50)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/d2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 3)
|
||||
(i32.const 10)
|
||||
)
|
||||
@ -2464,14 +2435,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/f1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 10)
|
||||
(i32.const 10)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/f2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 6)
|
||||
(i32.const 10)
|
||||
)
|
||||
@ -2515,14 +2484,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/p1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/p2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 4)
|
||||
(i32.const 5)
|
||||
)
|
||||
@ -2567,14 +2534,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/n1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 255)
|
||||
(i32.const 15)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/n2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 15)
|
||||
(i32.const 255)
|
||||
)
|
||||
@ -2619,14 +2584,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/o1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 3855)
|
||||
(i32.const 255)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/o2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 61680)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -2671,14 +2634,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/x1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 255)
|
||||
(i32.const 255)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/x2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 65280)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -2723,14 +2684,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/eq1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
(i32.const -2)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/eq2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
(i32.const -2)
|
||||
)
|
||||
@ -2758,14 +2717,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/eq3
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/eq4
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
)
|
||||
@ -2829,14 +2786,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/gt1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const 2147483647)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/gt2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -2864,14 +2819,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/gte1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/gte2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const 2)
|
||||
)
|
||||
@ -2899,14 +2852,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/le1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 5)
|
||||
(i32.const -1)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/le2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 6)
|
||||
(i32.const 6)
|
||||
)
|
||||
@ -2934,14 +2885,12 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/leq1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 4)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/leq2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 4)
|
||||
(i32.const 3)
|
||||
)
|
||||
@ -2969,7 +2918,6 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/shr
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 8)
|
||||
(i32.const 16)
|
||||
)
|
||||
@ -2977,7 +2925,6 @@
|
||||
(set_global $std/operator-overloading/sres
|
||||
(call $std/operator-overloading/Tester.shr
|
||||
(get_global $std/operator-overloading/shr)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(if
|
||||
@ -3014,7 +2961,6 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/shu
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const -8)
|
||||
(i32.const -16)
|
||||
)
|
||||
@ -3022,7 +2968,6 @@
|
||||
(set_global $std/operator-overloading/ures
|
||||
(call $std/operator-overloading/Tester.shu
|
||||
(get_global $std/operator-overloading/shu)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(if
|
||||
@ -3059,7 +3004,6 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/shl
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
@ -3067,7 +3011,6 @@
|
||||
(set_global $std/operator-overloading/sres
|
||||
(call $std/operator-overloading/Tester.shl
|
||||
(get_global $std/operator-overloading/shl)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(if
|
||||
@ -3104,7 +3047,6 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/pos
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
(i32.const -2)
|
||||
)
|
||||
@ -3152,7 +3094,6 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/neg
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const -1)
|
||||
(i32.const -2)
|
||||
)
|
||||
@ -3206,7 +3147,6 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/not
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 255)
|
||||
(i32.const 16)
|
||||
)
|
||||
@ -3262,7 +3202,6 @@
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 0)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/bres
|
||||
@ -3321,7 +3260,6 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/incdec
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
)
|
||||
@ -3401,21 +3339,18 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/ais1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/ais2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/ais
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.add
|
||||
(i32.load
|
||||
(tee_local $0
|
||||
@ -3472,21 +3407,18 @@
|
||||
)
|
||||
(set_global $std/operator-overloading/aii1
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 1)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/aii2
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(set_global $std/operator-overloading/aii
|
||||
(call $std/operator-overloading/Tester#constructor
|
||||
(i32.const 0)
|
||||
(i32.add
|
||||
(i32.load
|
||||
(tee_local $1
|
||||
|
@ -3,6 +3,7 @@
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $v (func))
|
||||
(type $iv (func (param i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $std/pointer/one (mut i32) (i32.const 0))
|
||||
(global $std/pointer/two (mut i32) (i32.const 0))
|
||||
@ -16,19 +17,17 @@
|
||||
(export "_setargc" (func $~setargc))
|
||||
(export "Pointer<Entry>#constructor" (func $std/pointer/Pointer<Entry>#constructor|trampoline))
|
||||
(start $start)
|
||||
(func $std/pointer/Pointer<Entry>#constructor (; 1 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(get_local $1)
|
||||
(func $std/pointer/Pointer<Entry>#constructor (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $start (; 2 ;) (; has Stack IR ;) (type $v)
|
||||
(set_global $std/pointer/one
|
||||
(call $std/pointer/Pointer<Entry>#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(set_global $std/pointer/two
|
||||
(call $std/pointer/Pointer<Entry>#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
@ -292,7 +291,6 @@
|
||||
)
|
||||
)
|
||||
(call $std/pointer/Pointer<Entry>#constructor
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
|
@ -1,8 +1,9 @@
|
||||
(module
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $II (func (param i64) (result i64)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$j (func (result i64)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\11\00\00\00~\00l\00i\00b\00/\00p\00o\00l\00y\00f\00i\00l\00l\00s\00.\00t\00s")
|
||||
@ -66,42 +67,9 @@
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $~lib/polyfills/bswap<u16> (; 2 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(tee_local $1
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(set_local $1
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
)
|
||||
(set_local $1
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 8)
|
||||
(i32.const 2)
|
||||
(i32.const 2)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(func $~lib/polyfills/bswap<u16> (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/polyfills/bswap16<u16>
|
||||
(get_local $0)
|
||||
(i32.const 43707)
|
||||
)
|
||||
)
|
||||
(func $~lib/polyfills/bswap16<i16> (; 3 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
@ -164,180 +132,25 @@
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $~lib/polyfills/bswap<i16> (; 4 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(tee_local $1
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(set_local $1
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
)
|
||||
(set_local $1
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 8)
|
||||
(i32.const 2)
|
||||
(i32.const 2)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(func $~lib/polyfills/bswap<i16> (; 4 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/polyfills/bswap16<i16>
|
||||
(get_local $0)
|
||||
(i32.const 43707)
|
||||
)
|
||||
)
|
||||
(func $~lib/polyfills/bswap<u32> (; 5 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(tee_local $1
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(set_local $1
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 8)
|
||||
(i32.const 2)
|
||||
(i32.const 2)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(i32.or
|
||||
(i32.rotl
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
(i32.const -16711936)
|
||||
)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.rotr
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
(i32.const 16711935)
|
||||
)
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
(func $~lib/polyfills/bswap<u32> (; 5 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const -573785174)
|
||||
)
|
||||
(func $~lib/polyfills/bswap<u64> (; 6 ;) (; has Stack IR ;) (type $II) (param $0 i64) (result i64)
|
||||
(i64.rotr
|
||||
(i64.or
|
||||
(i64.and
|
||||
(i64.shr_u
|
||||
(tee_local $0
|
||||
(i64.or
|
||||
(i64.and
|
||||
(i64.shr_u
|
||||
(get_local $0)
|
||||
(i64.const 8)
|
||||
)
|
||||
(i64.const 71777214294589695)
|
||||
)
|
||||
(i64.shl
|
||||
(i64.and
|
||||
(get_local $0)
|
||||
(i64.const 71777214294589695)
|
||||
)
|
||||
(i64.const 8)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i64.const 16)
|
||||
)
|
||||
(i64.const 281470681808895)
|
||||
)
|
||||
(i64.shl
|
||||
(i64.and
|
||||
(get_local $0)
|
||||
(i64.const 281470681808895)
|
||||
)
|
||||
(i64.const 16)
|
||||
)
|
||||
)
|
||||
(i64.const 32)
|
||||
)
|
||||
(func $~lib/polyfills/bswap<u64> (; 6 ;) (; has Stack IR ;) (type $FUNCSIG$j) (result i64)
|
||||
(i64.const -2464388556401798912)
|
||||
)
|
||||
(func $~lib/polyfills/bswap16<u32> (; 7 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(i32.or
|
||||
(i32.or
|
||||
(i32.and
|
||||
(i32.shl
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 65280)
|
||||
)
|
||||
(i32.and
|
||||
(i32.shr_u
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 255)
|
||||
)
|
||||
)
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
(i32.const -65536)
|
||||
)
|
||||
)
|
||||
(func $~lib/polyfills/bswap16<u32> (; 7 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const -7816278)
|
||||
)
|
||||
(func $~lib/polyfills/bswap16<i32> (; 8 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(i32.or
|
||||
(i32.or
|
||||
(i32.and
|
||||
(i32.shl
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 65280)
|
||||
)
|
||||
(i32.and
|
||||
(i32.shr_s
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 255)
|
||||
)
|
||||
)
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
(i32.const -65536)
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $start (; 9 ;) (; has Stack IR ;) (type $v)
|
||||
(func $start (; 8 ;) (; has Stack IR ;) (type $v)
|
||||
(if
|
||||
(i32.ne
|
||||
(i32.and
|
||||
(call $~lib/polyfills/bswap<u16>
|
||||
(i32.const 43707)
|
||||
)
|
||||
(call $~lib/polyfills/bswap<u16>)
|
||||
(i32.const 65535)
|
||||
)
|
||||
(i32.const 48042)
|
||||
@ -355,9 +168,7 @@
|
||||
(if
|
||||
(i32.ne
|
||||
(i32.and
|
||||
(call $~lib/polyfills/bswap<i16>
|
||||
(i32.const 43707)
|
||||
)
|
||||
(call $~lib/polyfills/bswap<i16>)
|
||||
(i32.const 65535)
|
||||
)
|
||||
(i32.const 48042)
|
||||
@ -374,9 +185,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $~lib/polyfills/bswap<u32>
|
||||
(i32.const -1430532899)
|
||||
)
|
||||
(call $~lib/polyfills/bswap<u32>)
|
||||
(i32.const -573785174)
|
||||
)
|
||||
(block
|
||||
@ -391,9 +200,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $~lib/polyfills/bswap<u32>
|
||||
(i32.const -1430532899)
|
||||
)
|
||||
(call $~lib/polyfills/bswap<u32>)
|
||||
(i32.const -573785174)
|
||||
)
|
||||
(block
|
||||
@ -408,9 +215,7 @@
|
||||
)
|
||||
(if
|
||||
(i64.ne
|
||||
(call $~lib/polyfills/bswap<u64>
|
||||
(i64.const 4822679907192029)
|
||||
)
|
||||
(call $~lib/polyfills/bswap<u64>)
|
||||
(i64.const -2464388556401798912)
|
||||
)
|
||||
(block
|
||||
@ -425,9 +230,7 @@
|
||||
)
|
||||
(if
|
||||
(i64.ne
|
||||
(call $~lib/polyfills/bswap<u64>
|
||||
(i64.const 4822679907192029)
|
||||
)
|
||||
(call $~lib/polyfills/bswap<u64>)
|
||||
(i64.const -2464388556401798912)
|
||||
)
|
||||
(block
|
||||
@ -442,9 +245,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $~lib/polyfills/bswap<u32>
|
||||
(i32.const -1430532899)
|
||||
)
|
||||
(call $~lib/polyfills/bswap<u32>)
|
||||
(i32.const -573785174)
|
||||
)
|
||||
(block
|
||||
@ -459,9 +260,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $~lib/polyfills/bswap<u32>
|
||||
(i32.const -1430532899)
|
||||
)
|
||||
(call $~lib/polyfills/bswap<u32>)
|
||||
(i32.const -573785174)
|
||||
)
|
||||
(block
|
||||
@ -516,9 +315,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $~lib/polyfills/bswap16<u32>
|
||||
(i32.const -7820613)
|
||||
)
|
||||
(call $~lib/polyfills/bswap16<u32>)
|
||||
(i32.const -7816278)
|
||||
)
|
||||
(block
|
||||
@ -533,9 +330,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $~lib/polyfills/bswap16<i32>
|
||||
(i32.const -7820613)
|
||||
)
|
||||
(call $~lib/polyfills/bswap16<u32>)
|
||||
(i32.const -7816278)
|
||||
)
|
||||
(block
|
||||
|
@ -4,7 +4,6 @@
|
||||
(type $iv (func (param i32)))
|
||||
(type $iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $iiiv (func (param i32 i32 i32)))
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $iiv (func (param i32 i32)))
|
||||
(type $iIi (func (param i32 i64) (result i32)))
|
||||
@ -19,6 +18,9 @@
|
||||
(type $Fi (func (param f64) (result i32)))
|
||||
(type $iFii (func (param i32 f64 i32) (result i32)))
|
||||
(type $iFv (func (param i32 f64)))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -113,9 +115,9 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 2 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 2 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/arraybuffer/computeSize (; 3 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
@ -161,32 +163,31 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/internal/memory/memset (; 5 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i64)
|
||||
(func $~lib/internal/memory/memset (; 5 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(i32.store8
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(return)
|
||||
@ -196,37 +197,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 6)
|
||||
)
|
||||
(return)
|
||||
@ -236,74 +237,63 @@
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(tee_local $3
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(tee_local $1
|
||||
(i32.mul
|
||||
(i32.and
|
||||
(get_local $1)
|
||||
(i32.const 255)
|
||||
(tee_local $2
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(i32.const 16843009)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const -4)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
@ -313,37 +303,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 24)
|
||||
)
|
||||
(return)
|
||||
@ -353,66 +343,66 @@
|
||||
(get_local $0)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 28)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(set_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
@ -423,60 +413,47 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(set_local $4
|
||||
(i64.or
|
||||
(tee_local $4
|
||||
(i64.extend_u/i32
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i64.shl
|
||||
(get_local $4)
|
||||
(i64.const 32)
|
||||
)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
(block
|
||||
(i64.store
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
)
|
||||
@ -491,11 +468,11 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 6 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 6 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.const 1073741816)
|
||||
)
|
||||
(block
|
||||
@ -508,34 +485,32 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(set_local $3
|
||||
(set_local $2
|
||||
(call $~lib/internal/arraybuffer/allocateUnsafe
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(call $~lib/internal/memory/memset
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
)
|
||||
(func $~lib/set/Set<i8>#clear (; 7 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 16)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -547,7 +522,6 @@
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 32)
|
||||
(i32.const 1)
|
||||
)
|
||||
@ -565,41 +539,33 @@
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $~lib/set/Set<i8>#constructor (; 8 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(block
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $~lib/set/Set<i8>#constructor (; 8 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i8>#clear
|
||||
(get_local $0)
|
||||
@ -714,7 +680,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -729,7 +694,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -1100,9 +1064,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i8>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i8>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -1470,7 +1432,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -1485,7 +1446,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -1848,9 +1808,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i8>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i8>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -2308,7 +2266,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -2323,7 +2280,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -2689,9 +2645,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i8>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i8>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -3059,7 +3013,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -3074,7 +3027,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -3437,9 +3389,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i8>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i8>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -3912,7 +3862,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -3927,7 +3876,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -4287,9 +4235,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i8>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i8>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -4631,9 +4577,7 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i8>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i8>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -4975,7 +4919,6 @@
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 16)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -4987,7 +4930,6 @@
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 64)
|
||||
(i32.const 1)
|
||||
)
|
||||
@ -5005,41 +4947,33 @@
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $~lib/set/Set<i64>#constructor (; 48 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(block
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $~lib/set/Set<i64>#constructor (; 48 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i64>#clear
|
||||
(get_local $0)
|
||||
@ -5235,7 +5169,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -5250,7 +5183,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -5611,9 +5543,7 @@
|
||||
(local $0 i64)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i64>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i64>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -5955,9 +5885,7 @@
|
||||
(local $0 i64)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i64>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i64>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -6387,7 +6315,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -6402,7 +6329,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -6767,9 +6693,7 @@
|
||||
(local $0 f32)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i8>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i8>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
@ -7207,7 +7131,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -7222,7 +7145,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -7587,9 +7509,7 @@
|
||||
(local $0 f64)
|
||||
(local $1 i32)
|
||||
(set_local $1
|
||||
(call $~lib/set/Set<i64>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/set/Set<i64>#constructor)
|
||||
)
|
||||
(block $break|0
|
||||
(loop $repeat|0
|
||||
|
@ -3,13 +3,13 @@
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $iiiv (func (param i32 i32 i32)))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiI (func (param i32 i32) (result i64)))
|
||||
(type $iiIv (func (param i32 i32 i64)))
|
||||
(type $iif (func (param i32 i32) (result f32)))
|
||||
(type $iifv (func (param i32 i32 f32)))
|
||||
(type $iiF (func (param i32 i32) (result f64)))
|
||||
(type $iiFv (func (param i32 i32 f64)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$ji (func (param i32) (result i64)))
|
||||
(type $FUNCSIG$fi (func (param i32) (result f32)))
|
||||
(type $FUNCSIG$di (func (param i32) (result f64)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -29,16 +29,17 @@
|
||||
(data (i32.const 216) "\1c\00\00\00~\00l\00i\00b\00/\00i\00n\00t\00e\00r\00n\00a\00l\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s")
|
||||
(export "memory" (memory $0))
|
||||
(start $start)
|
||||
(func $~lib/array/Array<i32>#__get (; 1 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(tee_local $0
|
||||
(func $~lib/array/Array<i32>#__get (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(tee_local $1
|
||||
(if (result i32)
|
||||
(i32.lt_u
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.shr_u
|
||||
(i32.load
|
||||
(tee_local $0
|
||||
(tee_local $1
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -47,9 +48,9 @@
|
||||
)
|
||||
(i32.load offset=8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
@ -72,32 +73,31 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/memory/memset (; 3 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i64)
|
||||
(func $~lib/internal/memory/memset (; 3 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(i32.store8
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(return)
|
||||
@ -107,37 +107,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 6)
|
||||
)
|
||||
(return)
|
||||
@ -147,74 +147,63 @@
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(tee_local $3
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(tee_local $1
|
||||
(i32.mul
|
||||
(i32.and
|
||||
(get_local $1)
|
||||
(i32.const 255)
|
||||
(tee_local $2
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(i32.const 16843009)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const -4)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
@ -224,37 +213,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 24)
|
||||
)
|
||||
(return)
|
||||
@ -264,66 +253,66 @@
|
||||
(get_local $0)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 28)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(set_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
@ -334,60 +323,47 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(set_local $4
|
||||
(i64.or
|
||||
(tee_local $4
|
||||
(i64.extend_u/i32
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i64.shl
|
||||
(get_local $4)
|
||||
(i64.const 32)
|
||||
)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
(block
|
||||
(i64.store
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
)
|
||||
@ -2245,7 +2221,6 @@
|
||||
)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const 0)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
@ -2276,7 +2251,6 @@
|
||||
)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const 0)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
@ -2318,17 +2292,16 @@
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $~lib/array/Array<i32>#__set (; 9 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(func $~lib/array/Array<i32>#__set (; 9 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(i32.shr_u
|
||||
(i32.load
|
||||
(tee_local $3
|
||||
(tee_local $0
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -2336,64 +2309,36 @@
|
||||
)
|
||||
)
|
||||
(block
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $1)
|
||||
(i32.const 268435454)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 184)
|
||||
(i32.const 87)
|
||||
(i32.const 41)
|
||||
(i32.store
|
||||
(i32.const 24)
|
||||
(tee_local $0
|
||||
(call $~lib/internal/arraybuffer/reallocateUnsafe
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(call $~lib/internal/arraybuffer/reallocateUnsafe
|
||||
(get_local $3)
|
||||
(i32.shl
|
||||
(tee_local $4
|
||||
(i32.add
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i32.const 28)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
(get_local $2)
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
(func $~lib/array/Array<i64>#__get (; 10 ;) (; has Stack IR ;) (type $iiI) (param $0 i32) (param $1 i32) (result i64)
|
||||
(func $~lib/array/Array<i64>#__get (; 10 ;) (; has Stack IR ;) (type $FUNCSIG$ji) (param $0 i32) (result i64)
|
||||
(local $1 i32)
|
||||
(if (result i64)
|
||||
(i32.lt_u
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.shr_u
|
||||
(i32.load
|
||||
(tee_local $0
|
||||
(tee_local $1
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
(i32.const 64)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -2402,9 +2347,9 @@
|
||||
)
|
||||
(i64.load offset=8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
@ -2412,17 +2357,16 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(func $~lib/array/Array<i64>#__set (; 11 ;) (; has Stack IR ;) (type $iiIv) (param $0 i32) (param $1 i32) (param $2 i64)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(func $~lib/array/Array<i64>#__set (; 11 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(i32.shr_u
|
||||
(i32.load
|
||||
(tee_local $3
|
||||
(tee_local $0
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
(i32.const 64)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -2430,64 +2374,36 @@
|
||||
)
|
||||
)
|
||||
(block
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $1)
|
||||
(i32.const 134217727)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 184)
|
||||
(i32.const 87)
|
||||
(i32.const 41)
|
||||
(i32.store
|
||||
(i32.const 64)
|
||||
(tee_local $0
|
||||
(call $~lib/internal/arraybuffer/reallocateUnsafe
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(call $~lib/internal/arraybuffer/reallocateUnsafe
|
||||
(get_local $3)
|
||||
(i32.shl
|
||||
(tee_local $4
|
||||
(i32.add
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i32.const 68)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i64.store offset=8
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(get_local $2)
|
||||
(get_local $0)
|
||||
(i64.const 4)
|
||||
)
|
||||
)
|
||||
(func $~lib/array/Array<f32>#__get (; 12 ;) (; has Stack IR ;) (type $iif) (param $0 i32) (param $1 i32) (result f32)
|
||||
(func $~lib/array/Array<f32>#__get (; 12 ;) (; has Stack IR ;) (type $FUNCSIG$fi) (param $0 i32) (result f32)
|
||||
(local $1 i32)
|
||||
(if (result f32)
|
||||
(i32.lt_u
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.shr_u
|
||||
(i32.load
|
||||
(tee_local $0
|
||||
(tee_local $1
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
(i32.const 88)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -2496,9 +2412,9 @@
|
||||
)
|
||||
(f32.load offset=8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
@ -2506,17 +2422,16 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(func $~lib/array/Array<f32>#__set (; 13 ;) (; has Stack IR ;) (type $iifv) (param $0 i32) (param $1 i32) (param $2 f32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(func $~lib/array/Array<f32>#__set (; 13 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(i32.shr_u
|
||||
(i32.load
|
||||
(tee_local $3
|
||||
(tee_local $0
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
(i32.const 88)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -2524,64 +2439,36 @@
|
||||
)
|
||||
)
|
||||
(block
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $1)
|
||||
(i32.const 268435454)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 184)
|
||||
(i32.const 87)
|
||||
(i32.const 41)
|
||||
(i32.store
|
||||
(i32.const 88)
|
||||
(tee_local $0
|
||||
(call $~lib/internal/arraybuffer/reallocateUnsafe
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(call $~lib/internal/arraybuffer/reallocateUnsafe
|
||||
(get_local $3)
|
||||
(i32.shl
|
||||
(tee_local $4
|
||||
(i32.add
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i32.const 92)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(f32.store offset=8
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
)
|
||||
(get_local $2)
|
||||
(get_local $0)
|
||||
(f32.const 2.5)
|
||||
)
|
||||
)
|
||||
(func $~lib/array/Array<f64>#__get (; 14 ;) (; has Stack IR ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64)
|
||||
(func $~lib/array/Array<f64>#__get (; 14 ;) (; has Stack IR ;) (type $FUNCSIG$di) (param $0 i32) (result f64)
|
||||
(local $1 i32)
|
||||
(if (result f64)
|
||||
(i32.lt_u
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.shr_u
|
||||
(i32.load
|
||||
(tee_local $0
|
||||
(tee_local $1
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
(i32.const 128)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -2590,9 +2477,9 @@
|
||||
)
|
||||
(f64.load offset=8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
@ -2600,17 +2487,16 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(func $~lib/array/Array<f64>#__set (; 15 ;) (; has Stack IR ;) (type $iiFv) (param $0 i32) (param $1 i32) (param $2 f64)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(func $~lib/array/Array<f64>#__set (; 15 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(i32.shr_u
|
||||
(i32.load
|
||||
(tee_local $3
|
||||
(tee_local $0
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
(i32.const 128)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -2618,53 +2504,24 @@
|
||||
)
|
||||
)
|
||||
(block
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $1)
|
||||
(i32.const 134217727)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 184)
|
||||
(i32.const 87)
|
||||
(i32.const 41)
|
||||
(i32.store
|
||||
(i32.const 128)
|
||||
(tee_local $0
|
||||
(call $~lib/internal/arraybuffer/reallocateUnsafe
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(call $~lib/internal/arraybuffer/reallocateUnsafe
|
||||
(get_local $3)
|
||||
(i32.shl
|
||||
(tee_local $4
|
||||
(i32.add
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i32.const 132)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(f64.store offset=8
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(get_local $2)
|
||||
(get_local $0)
|
||||
(f64.const 2.25)
|
||||
)
|
||||
)
|
||||
(func $start (; 16 ;) (; has Stack IR ;) (type $v)
|
||||
@ -2694,7 +2551,6 @@
|
||||
(if
|
||||
(i32.ne
|
||||
(call $~lib/array/Array<i32>#__get
|
||||
(i32.const 24)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 1)
|
||||
@ -2712,7 +2568,6 @@
|
||||
(if
|
||||
(i32.ne
|
||||
(call $~lib/array/Array<i32>#__get
|
||||
(i32.const 24)
|
||||
(i32.const 1)
|
||||
)
|
||||
(i32.const 2)
|
||||
@ -2727,15 +2582,10 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(call $~lib/array/Array<i32>#__set
|
||||
(i32.const 24)
|
||||
(i32.const 0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $~lib/array/Array<i32>#__set)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $~lib/array/Array<i32>#__get
|
||||
(i32.const 24)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 2)
|
||||
@ -2770,7 +2620,6 @@
|
||||
(if
|
||||
(i64.ne
|
||||
(call $~lib/array/Array<i64>#__get
|
||||
(i32.const 64)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i64.const 3)
|
||||
@ -2788,7 +2637,6 @@
|
||||
(if
|
||||
(i64.ne
|
||||
(call $~lib/array/Array<i64>#__get
|
||||
(i32.const 64)
|
||||
(i32.const 1)
|
||||
)
|
||||
(i64.const 4)
|
||||
@ -2803,15 +2651,10 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(call $~lib/array/Array<i64>#__set
|
||||
(i32.const 64)
|
||||
(i32.const 0)
|
||||
(i64.const 4)
|
||||
)
|
||||
(call $~lib/array/Array<i64>#__set)
|
||||
(if
|
||||
(i64.ne
|
||||
(call $~lib/array/Array<i64>#__get
|
||||
(i32.const 64)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i64.const 4)
|
||||
@ -2846,7 +2689,6 @@
|
||||
(if
|
||||
(f32.ne
|
||||
(call $~lib/array/Array<f32>#__get
|
||||
(i32.const 88)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f32.const 1.5)
|
||||
@ -2864,7 +2706,6 @@
|
||||
(if
|
||||
(f32.ne
|
||||
(call $~lib/array/Array<f32>#__get
|
||||
(i32.const 88)
|
||||
(i32.const 1)
|
||||
)
|
||||
(f32.const 2.5)
|
||||
@ -2879,15 +2720,10 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(call $~lib/array/Array<f32>#__set
|
||||
(i32.const 88)
|
||||
(i32.const 0)
|
||||
(f32.const 2.5)
|
||||
)
|
||||
(call $~lib/array/Array<f32>#__set)
|
||||
(if
|
||||
(f32.ne
|
||||
(call $~lib/array/Array<f32>#__get
|
||||
(i32.const 88)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f32.const 2.5)
|
||||
@ -2922,7 +2758,6 @@
|
||||
(if
|
||||
(f64.ne
|
||||
(call $~lib/array/Array<f64>#__get
|
||||
(i32.const 128)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 1.25)
|
||||
@ -2940,7 +2775,6 @@
|
||||
(if
|
||||
(f64.ne
|
||||
(call $~lib/array/Array<f64>#__get
|
||||
(i32.const 128)
|
||||
(i32.const 1)
|
||||
)
|
||||
(f64.const 2.25)
|
||||
@ -2955,15 +2789,10 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(call $~lib/array/Array<f64>#__set
|
||||
(i32.const 128)
|
||||
(i32.const 0)
|
||||
(f64.const 2.25)
|
||||
)
|
||||
(call $~lib/array/Array<f64>#__set)
|
||||
(if
|
||||
(f64.ne
|
||||
(call $~lib/array/Array<f64>#__get
|
||||
(i32.const 128)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 2.25)
|
||||
|
@ -1,8 +1,8 @@
|
||||
(module
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$v (func))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -531,7 +531,7 @@
|
||||
)
|
||||
(get_local $5)
|
||||
)
|
||||
(func $~lib/allocator/arena/__memory_free (; 4 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(func $~lib/allocator/arena/__memory_free (; 4 ;) (; has Stack IR ;) (type $FUNCSIG$v)
|
||||
(nop)
|
||||
)
|
||||
(func $start (; 5 ;) (; has Stack IR ;) (type $v)
|
||||
@ -750,8 +750,6 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_free
|
||||
(get_global $std/string-utf8/ptr)
|
||||
)
|
||||
(call $~lib/allocator/arena/__memory_free)
|
||||
)
|
||||
)
|
||||
|
@ -2,16 +2,19 @@
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiiiii (func (param i32 i32 i32 i32 i32) (result i32)))
|
||||
(type $iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $iiiv (func (param i32 i32 i32)))
|
||||
(type $iiiiiv (func (param i32 i32 i32 i32 i32)))
|
||||
(type $i (func (result i32)))
|
||||
(type $iiF (func (param i32 i32) (result f64)))
|
||||
(type $iF (func (param i32) (result f64)))
|
||||
(type $Ii (func (param i64) (result i32)))
|
||||
(type $iIiv (func (param i32 i64 i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$di (func (param i32) (result f64)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -110,7 +113,7 @@
|
||||
(export "memory" (memory $0))
|
||||
(export "getString" (func $std/string/getString))
|
||||
(start $start)
|
||||
(func $~lib/string/String#charCodeAt (; 1 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/string/String#charCodeAt (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
@ -127,7 +130,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
@ -137,13 +140,7 @@
|
||||
)
|
||||
)
|
||||
(i32.load16_u offset=4
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(func $~lib/allocator/arena/__memory_allocate (; 2 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
@ -289,8 +286,8 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/internal/string/compareUnsafe (; 5 ;) (; has Stack IR ;) (type $iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
|
||||
(local $5 i32)
|
||||
(func $~lib/internal/string/compareUnsafe (; 5 ;) (; has Stack IR ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(local $4 i32)
|
||||
(set_local $1
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
@ -300,22 +297,13 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.add
|
||||
(get_local $2)
|
||||
(i32.shl
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(tee_local $0
|
||||
(if (result i32)
|
||||
(get_local $4)
|
||||
(get_local $3)
|
||||
(i32.eqz
|
||||
(tee_local $5
|
||||
(tee_local $4
|
||||
(i32.sub
|
||||
(i32.load16_u offset=4
|
||||
(get_local $1)
|
||||
@ -326,13 +314,13 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $4)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(block
|
||||
(set_local $4
|
||||
(set_local $3
|
||||
(i32.sub
|
||||
(get_local $4)
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
@ -352,7 +340,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $5)
|
||||
(get_local $4)
|
||||
)
|
||||
(func $~lib/string/String.__eq (; 6 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
@ -405,7 +393,6 @@
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
@ -477,9 +464,10 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/string/String#startsWith (; 8 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/string/String#startsWith (; 8 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
@ -494,47 +482,30 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
)
|
||||
(set_local $1
|
||||
(i32.const 200)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.gt_s
|
||||
(i32.add
|
||||
(tee_local $4
|
||||
(tee_local $2
|
||||
(i32.load
|
||||
(get_local $1)
|
||||
(i32.const 192)
|
||||
)
|
||||
)
|
||||
(tee_local $3
|
||||
(select
|
||||
(tee_local $3
|
||||
(select
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
(i32.gt_s
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
(tee_local $2
|
||||
(i32.const 0)
|
||||
(tee_local $1
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(i32.lt_s
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return
|
||||
(i32.const 0)
|
||||
@ -544,9 +515,8 @@
|
||||
(call $~lib/internal/string/compareUnsafe
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $4)
|
||||
(i32.const 192)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -617,12 +587,12 @@
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/string/String#endsWith|trampoline (; 10 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/string/String#endsWith|trampoline (; 10 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(block $1of1
|
||||
(block $0of1
|
||||
(block $outOfRange
|
||||
@ -635,14 +605,14 @@
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.const 536870910)
|
||||
)
|
||||
)
|
||||
(call $~lib/string/String#endsWith
|
||||
(get_local $0)
|
||||
(i32.const 216)
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
(func $~lib/string/String#indexOf (; 11 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
@ -732,7 +702,6 @@
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $4)
|
||||
)
|
||||
(block
|
||||
@ -752,12 +721,12 @@
|
||||
)
|
||||
(i32.const -1)
|
||||
)
|
||||
(func $~lib/string/String#includes (; 12 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/string/String#includes (; 12 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(i32.ne
|
||||
(call $~lib/string/String#indexOf
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(i32.const 232)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const -1)
|
||||
)
|
||||
@ -2730,7 +2699,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/string/copyUnsafe (; 16 ;) (; has Stack IR ;) (type $iiiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32)
|
||||
(func $~lib/internal/string/copyUnsafe (; 16 ;) (; has Stack IR ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
|
||||
(call $~lib/internal/memory/memmove
|
||||
(i32.add
|
||||
(i32.add
|
||||
@ -2743,17 +2712,11 @@
|
||||
(i32.const 4)
|
||||
)
|
||||
(i32.add
|
||||
(i32.add
|
||||
(get_local $2)
|
||||
(i32.shl
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(get_local $2)
|
||||
(i32.const 4)
|
||||
)
|
||||
(i32.shl
|
||||
(get_local $4)
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
@ -2854,7 +2817,6 @@
|
||||
(get_local $5)
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
(get_local $4)
|
||||
)
|
||||
)
|
||||
@ -2863,7 +2825,6 @@
|
||||
(get_local $5)
|
||||
(i32.const 0)
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
@ -2873,13 +2834,13 @@
|
||||
(get_local $5)
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(get_local $6)
|
||||
)
|
||||
)
|
||||
(get_local $5)
|
||||
)
|
||||
(func $~lib/string/String#padStart|trampoline (; 18 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/string/String#padStart|trampoline (; 18 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(block $1of1
|
||||
(block $0of1
|
||||
(block $outOfRange
|
||||
@ -2968,7 +2929,6 @@
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
@ -3012,7 +2972,6 @@
|
||||
(get_local $3)
|
||||
)
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
(get_local $4)
|
||||
)
|
||||
)
|
||||
@ -3021,13 +2980,13 @@
|
||||
(get_local $1)
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 0)
|
||||
(get_local $6)
|
||||
)
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/string/String#padEnd|trampoline (; 20 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/string/String#padEnd|trampoline (; 20 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(block $1of1
|
||||
(block $0of1
|
||||
(block $outOfRange
|
||||
@ -3137,7 +3096,6 @@
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $4)
|
||||
)
|
||||
(block
|
||||
@ -3157,7 +3115,8 @@
|
||||
)
|
||||
(i32.const -1)
|
||||
)
|
||||
(func $~lib/string/String#lastIndexOf|trampoline (; 22 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/string/String#lastIndexOf|trampoline (; 22 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(block $1of1
|
||||
(block $0of1
|
||||
(block $outOfRange
|
||||
@ -3546,10 +3505,10 @@
|
||||
(get_local $5)
|
||||
)
|
||||
)
|
||||
(func $~lib/string/parseInt (; 25 ;) (; has Stack IR ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64)
|
||||
(func $~lib/string/parseInt (; 25 ;) (; has Stack IR ;) (type $FUNCSIG$di) (param $0 i32) (result f64)
|
||||
(call $~lib/internal/string/parse<f64>
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $~lib/string/parseFloat (; 26 ;) (; has Stack IR ;) (type $iF) (param $0 i32) (result f64)
|
||||
@ -3857,14 +3816,12 @@
|
||||
)
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(get_local $3)
|
||||
)
|
||||
(call $~lib/internal/string/copyUnsafe
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $4)
|
||||
)
|
||||
(get_local $2)
|
||||
@ -3955,7 +3912,6 @@
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(select
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
@ -4032,7 +3988,6 @@
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(select
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
@ -4109,7 +4064,6 @@
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(select
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
@ -4122,60 +4076,50 @@
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $~lib/string/String.__lte (; 33 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/string/String.__lte (; 33 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(if
|
||||
(i32.eq
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 256)
|
||||
)
|
||||
(return
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(tee_local $1
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(return
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(set_local $1
|
||||
(i32.load
|
||||
(i32.const 256)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(tee_local $2
|
||||
(i32.eqz
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(return
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(get_local $2)
|
||||
(return
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.load
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(tee_local $3
|
||||
(i32.load
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(return
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return
|
||||
(i32.const 1)
|
||||
@ -4183,16 +4127,15 @@
|
||||
)
|
||||
(i32.le_s
|
||||
(call $~lib/internal/string/compareUnsafe
|
||||
(i32.const 256)
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(select
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
(i32.lt_s
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -4939,7 +4882,6 @@
|
||||
(i32.ne
|
||||
(call $~lib/string/String#charCodeAt
|
||||
(get_global $std/string/str)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 104)
|
||||
)
|
||||
@ -5068,8 +5010,6 @@
|
||||
(i32.eqz
|
||||
(call $~lib/string/String#startsWith
|
||||
(get_global $std/string/str)
|
||||
(i32.const 192)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(block
|
||||
@ -5089,8 +5029,6 @@
|
||||
(i32.eqz
|
||||
(call $~lib/string/String#endsWith|trampoline
|
||||
(get_global $std/string/str)
|
||||
(i32.const 216)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(block
|
||||
@ -5107,8 +5045,6 @@
|
||||
(i32.eqz
|
||||
(call $~lib/string/String#includes
|
||||
(get_global $std/string/str)
|
||||
(i32.const 232)
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(block
|
||||
@ -5130,7 +5066,6 @@
|
||||
(call $~lib/string/String#padStart|trampoline
|
||||
(get_global $std/string/str)
|
||||
(i32.const 0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(get_global $std/string/str)
|
||||
)
|
||||
@ -5154,7 +5089,6 @@
|
||||
(call $~lib/string/String#padStart|trampoline
|
||||
(get_global $std/string/str)
|
||||
(i32.const 15)
|
||||
(i32.const 0)
|
||||
)
|
||||
(get_global $std/string/str)
|
||||
)
|
||||
@ -5178,7 +5112,6 @@
|
||||
(call $~lib/string/String#padStart|trampoline
|
||||
(i32.const 256)
|
||||
(i32.const 3)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 264)
|
||||
)
|
||||
@ -5244,7 +5177,6 @@
|
||||
(call $~lib/string/String#padStart|trampoline
|
||||
(i32.const 288)
|
||||
(i32.const 5)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 304)
|
||||
)
|
||||
@ -5310,7 +5242,6 @@
|
||||
(call $~lib/string/String#padEnd|trampoline
|
||||
(get_global $std/string/str)
|
||||
(i32.const 0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(get_global $std/string/str)
|
||||
)
|
||||
@ -5334,7 +5265,6 @@
|
||||
(call $~lib/string/String#padEnd|trampoline
|
||||
(get_global $std/string/str)
|
||||
(i32.const 15)
|
||||
(i32.const 0)
|
||||
)
|
||||
(get_global $std/string/str)
|
||||
)
|
||||
@ -5358,7 +5288,6 @@
|
||||
(call $~lib/string/String#padEnd|trampoline
|
||||
(i32.const 256)
|
||||
(i32.const 3)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 264)
|
||||
)
|
||||
@ -5424,7 +5353,6 @@
|
||||
(call $~lib/string/String#padEnd|trampoline
|
||||
(i32.const 288)
|
||||
(i32.const 5)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 376)
|
||||
)
|
||||
@ -5634,7 +5562,6 @@
|
||||
(call $~lib/string/String#lastIndexOf|trampoline
|
||||
(i32.const 256)
|
||||
(i32.const 256)
|
||||
(i32.const 0)
|
||||
)
|
||||
(block
|
||||
(call $~lib/env/abort
|
||||
@ -5654,7 +5581,6 @@
|
||||
(call $~lib/string/String#lastIndexOf|trampoline
|
||||
(i32.const 256)
|
||||
(i32.const 192)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const -1)
|
||||
)
|
||||
@ -5676,7 +5602,6 @@
|
||||
(call $~lib/string/String#lastIndexOf|trampoline
|
||||
(get_global $std/string/str)
|
||||
(i32.const 256)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.load
|
||||
(get_global $std/string/str)
|
||||
@ -5700,7 +5625,6 @@
|
||||
(call $~lib/string/String#lastIndexOf|trampoline
|
||||
(get_global $std/string/str)
|
||||
(i32.const 432)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
@ -5722,7 +5646,6 @@
|
||||
(call $~lib/string/String#lastIndexOf|trampoline
|
||||
(get_global $std/string/str)
|
||||
(i32.const 440)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const -1)
|
||||
)
|
||||
@ -5744,7 +5667,6 @@
|
||||
(call $~lib/string/String#lastIndexOf|trampoline
|
||||
(get_global $std/string/str)
|
||||
(i32.const 464)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.const 15)
|
||||
)
|
||||
@ -5854,7 +5776,6 @@
|
||||
(f64.ne
|
||||
(call $~lib/string/parseInt
|
||||
(i32.const 480)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 0)
|
||||
)
|
||||
@ -5872,7 +5793,6 @@
|
||||
(f64.ne
|
||||
(call $~lib/string/parseInt
|
||||
(i32.const 488)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 1)
|
||||
)
|
||||
@ -5890,7 +5810,6 @@
|
||||
(f64.ne
|
||||
(call $~lib/string/parseInt
|
||||
(i32.const 496)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 5)
|
||||
)
|
||||
@ -5908,7 +5827,6 @@
|
||||
(f64.ne
|
||||
(call $~lib/string/parseInt
|
||||
(i32.const 512)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 455)
|
||||
)
|
||||
@ -5926,7 +5844,6 @@
|
||||
(f64.ne
|
||||
(call $~lib/string/parseInt
|
||||
(i32.const 528)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 3855)
|
||||
)
|
||||
@ -5944,7 +5861,6 @@
|
||||
(f64.ne
|
||||
(call $~lib/string/parseInt
|
||||
(i32.const 544)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 3855)
|
||||
)
|
||||
@ -5962,7 +5878,6 @@
|
||||
(f64.ne
|
||||
(call $~lib/string/parseInt
|
||||
(i32.const 560)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 11)
|
||||
)
|
||||
@ -5980,7 +5895,6 @@
|
||||
(f64.ne
|
||||
(call $~lib/string/parseInt
|
||||
(i32.const 576)
|
||||
(i32.const 0)
|
||||
)
|
||||
(f64.const 1)
|
||||
)
|
||||
@ -6320,7 +6234,6 @@
|
||||
(if
|
||||
(i32.eqz
|
||||
(call $~lib/string/String.__lte
|
||||
(i32.const 256)
|
||||
(i32.const 288)
|
||||
)
|
||||
)
|
||||
@ -6415,7 +6328,6 @@
|
||||
(i32.eqz
|
||||
(call $~lib/string/String.__lte
|
||||
(i32.const 256)
|
||||
(i32.const 256)
|
||||
)
|
||||
)
|
||||
(block
|
||||
|
@ -5,9 +5,12 @@
|
||||
(type $iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $iiiv (func (param i32 i32 i32)))
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $iiiiii (func (param i32 i32 i32 i32 i32) (result i32)))
|
||||
(type $iiv (func (param i32 i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -29,7 +32,8 @@
|
||||
(data (i32.const 104) "\1c\00\00\00~\00l\00i\00b\00/\00i\00n\00t\00e\00r\00n\00a\00l\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s")
|
||||
(export "memory" (memory $0))
|
||||
(start $start)
|
||||
(func $~lib/symbol/Symbol (; 1 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/symbol/Symbol (; 1 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(set_global $~lib/symbol/nextId
|
||||
(i32.add
|
||||
(tee_local $0
|
||||
@ -131,9 +135,9 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 3 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 3 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(call $~lib/allocator/arena/__memory_allocate
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/arraybuffer/computeSize (; 4 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
@ -179,32 +183,31 @@
|
||||
)
|
||||
(get_local $1)
|
||||
)
|
||||
(func $~lib/internal/memory/memset (; 6 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i64)
|
||||
(func $~lib/internal/memory/memset (; 6 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(i32.store8
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 2)
|
||||
)
|
||||
(return)
|
||||
@ -214,37 +217,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 1)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 6)
|
||||
)
|
||||
(return)
|
||||
@ -254,74 +257,63 @@
|
||||
(get_local $0)
|
||||
(i32.const 3)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store8
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(tee_local $3
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(tee_local $1
|
||||
(i32.mul
|
||||
(i32.and
|
||||
(get_local $1)
|
||||
(i32.const 255)
|
||||
(tee_local $2
|
||||
(i32.and
|
||||
(i32.sub
|
||||
(i32.const 0)
|
||||
(get_local $0)
|
||||
)
|
||||
(i32.const 3)
|
||||
)
|
||||
)
|
||||
(i32.const 16843009)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $2
|
||||
(tee_local $1
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
)
|
||||
(i32.const -4)
|
||||
)
|
||||
)
|
||||
)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return)
|
||||
@ -331,37 +323,37 @@
|
||||
(get_local $0)
|
||||
(i32.const 4)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(if
|
||||
(i32.le_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 24)
|
||||
)
|
||||
(return)
|
||||
@ -371,66 +363,66 @@
|
||||
(get_local $0)
|
||||
(i32.const 12)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i32.const 28)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 20)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store
|
||||
(i32.sub
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
)
|
||||
(set_local $0
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(tee_local $3
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
(i32.and
|
||||
(get_local $0)
|
||||
@ -441,60 +433,47 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $1)
|
||||
(get_local $2)
|
||||
(get_local $3)
|
||||
)
|
||||
)
|
||||
(set_local $4
|
||||
(i64.or
|
||||
(tee_local $4
|
||||
(i64.extend_u/i32
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
(i64.shl
|
||||
(get_local $4)
|
||||
(i64.const 32)
|
||||
)
|
||||
)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(i32.ge_u
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
(block
|
||||
(i64.store
|
||||
(get_local $0)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 16)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(i64.store
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.const 24)
|
||||
)
|
||||
(get_local $4)
|
||||
(i64.const 0)
|
||||
)
|
||||
(set_local $2
|
||||
(set_local $1
|
||||
(i32.sub
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 32)
|
||||
)
|
||||
)
|
||||
@ -509,11 +488,11 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 7 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 7 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(if
|
||||
(i32.gt_u
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.const 1073741816)
|
||||
)
|
||||
(block
|
||||
@ -526,34 +505,32 @@
|
||||
(unreachable)
|
||||
)
|
||||
)
|
||||
(set_local $3
|
||||
(set_local $2
|
||||
(call $~lib/internal/arraybuffer/allocateUnsafe
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(i32.and
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(call $~lib/internal/memory/memset
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
(i32.const 8)
|
||||
)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
)
|
||||
(get_local $3)
|
||||
(get_local $2)
|
||||
)
|
||||
(func $~lib/map/Map<String,usize>#clear (; 8 ;) (; has Stack IR ;) (type $iv) (param $0 i32)
|
||||
(i32.store
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 16)
|
||||
(i32.const 0)
|
||||
)
|
||||
@ -565,7 +542,6 @@
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.const 48)
|
||||
(i32.const 1)
|
||||
)
|
||||
@ -583,41 +559,33 @@
|
||||
(i32.const 0)
|
||||
)
|
||||
)
|
||||
(func $~lib/map/Map<String,usize>#constructor (; 9 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $0)
|
||||
)
|
||||
(block
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate
|
||||
(i32.const 24)
|
||||
)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(func $~lib/map/Map<String,usize>#constructor (; 9 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(i32.store
|
||||
(tee_local $0
|
||||
(call $~lib/memory/memory.allocate)
|
||||
)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=4
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=8
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=12
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=16
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(i32.store offset=20
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<String,usize>#clear
|
||||
(get_local $0)
|
||||
@ -672,50 +640,42 @@
|
||||
)
|
||||
(get_local $2)
|
||||
)
|
||||
(func $~lib/internal/string/compareUnsafe (; 11 ;) (; has Stack IR ;) (type $iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
|
||||
(local $5 i32)
|
||||
(set_local $1
|
||||
(i32.add
|
||||
(get_local $0)
|
||||
(i32.shl
|
||||
(get_local $1)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.add
|
||||
(get_local $2)
|
||||
(i32.shl
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(func $~lib/internal/string/compareUnsafe (; 11 ;) (; has Stack IR ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(set_local $3
|
||||
(get_local $0)
|
||||
)
|
||||
(loop $continue|0
|
||||
(if
|
||||
(tee_local $0
|
||||
(if (result i32)
|
||||
(get_local $4)
|
||||
(get_local $2)
|
||||
(i32.eqz
|
||||
(tee_local $5
|
||||
(tee_local $4
|
||||
(i32.sub
|
||||
(i32.load16_u offset=4
|
||||
(get_local $1)
|
||||
(get_local $3)
|
||||
)
|
||||
(i32.load16_u offset=4
|
||||
(get_local $2)
|
||||
(get_local $1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $4)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
(block
|
||||
(set_local $4
|
||||
(set_local $2
|
||||
(i32.sub
|
||||
(get_local $4)
|
||||
(get_local $2)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(set_local $3
|
||||
(i32.add
|
||||
(get_local $3)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
@ -725,17 +685,11 @@
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(set_local $2
|
||||
(i32.add
|
||||
(get_local $2)
|
||||
(i32.const 1)
|
||||
)
|
||||
)
|
||||
(br $continue|0)
|
||||
)
|
||||
)
|
||||
)
|
||||
(get_local $5)
|
||||
(get_local $4)
|
||||
)
|
||||
(func $~lib/string/String.__eq (; 12 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
@ -786,9 +740,7 @@
|
||||
(i32.eqz
|
||||
(call $~lib/internal/string/compareUnsafe
|
||||
(get_local $0)
|
||||
(i32.const 0)
|
||||
(get_local $1)
|
||||
(i32.const 0)
|
||||
(get_local $2)
|
||||
)
|
||||
)
|
||||
@ -897,7 +849,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -912,7 +863,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.mul
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -1305,7 +1255,6 @@
|
||||
(local $8 i32)
|
||||
(set_local $4
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.shl
|
||||
(tee_local $2
|
||||
(i32.add
|
||||
@ -1320,7 +1269,6 @@
|
||||
)
|
||||
(set_local $5
|
||||
(call $~lib/arraybuffer/ArrayBuffer#constructor
|
||||
(i32.const 0)
|
||||
(i32.mul
|
||||
(tee_local $7
|
||||
(i32.trunc_s/f64
|
||||
@ -1595,38 +1543,34 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(func $~lib/symbol/Symbol.for (; 22 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(func $~lib/symbol/Symbol.for (; 22 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
(if
|
||||
(get_global $~lib/symbol/stringToId)
|
||||
(if
|
||||
(call $~lib/map/Map<String,usize>#has
|
||||
(get_global $~lib/symbol/stringToId)
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(return
|
||||
(call $~lib/map/Map<String,usize>#get
|
||||
(get_global $~lib/symbol/stringToId)
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
)
|
||||
)
|
||||
(block
|
||||
(set_global $~lib/symbol/stringToId
|
||||
(call $~lib/map/Map<String,usize>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<String,usize>#constructor)
|
||||
)
|
||||
(set_global $~lib/symbol/idToString
|
||||
(call $~lib/map/Map<String,usize>#constructor
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $~lib/map/Map<String,usize>#constructor)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set_global $~lib/symbol/nextId
|
||||
(i32.add
|
||||
(tee_local $1
|
||||
(tee_local $0
|
||||
(get_global $~lib/symbol/nextId)
|
||||
)
|
||||
(i32.const 1)
|
||||
@ -1634,21 +1578,21 @@
|
||||
)
|
||||
(if
|
||||
(i32.eqz
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
(unreachable)
|
||||
)
|
||||
(call $~lib/map/Map<String,usize>#set
|
||||
(get_global $~lib/symbol/stringToId)
|
||||
(i32.const 8)
|
||||
(get_local $0)
|
||||
(get_local $1)
|
||||
)
|
||||
(call $~lib/map/Map<usize,String>#set
|
||||
(get_global $~lib/symbol/idToString)
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
(i32.const 8)
|
||||
)
|
||||
(get_local $1)
|
||||
(get_local $0)
|
||||
)
|
||||
(func $~lib/map/Map<usize,String>#has (; 23 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(i32.ne
|
||||
@ -1716,14 +1660,10 @@
|
||||
(get_global $~lib/allocator/arena/startOffset)
|
||||
)
|
||||
(set_global $std/symbol/sym1
|
||||
(call $~lib/symbol/Symbol
|
||||
(i32.const 8)
|
||||
)
|
||||
(call $~lib/symbol/Symbol)
|
||||
)
|
||||
(set_global $std/symbol/sym2
|
||||
(call $~lib/symbol/Symbol
|
||||
(i32.const 8)
|
||||
)
|
||||
(call $~lib/symbol/Symbol)
|
||||
)
|
||||
(if
|
||||
(i32.eq
|
||||
@ -1741,14 +1681,10 @@
|
||||
)
|
||||
)
|
||||
(set_global $std/symbol/sym3
|
||||
(call $~lib/symbol/Symbol.for
|
||||
(i32.const 8)
|
||||
)
|
||||
(call $~lib/symbol/Symbol.for)
|
||||
)
|
||||
(set_global $std/symbol/sym4
|
||||
(call $~lib/symbol/Symbol.for
|
||||
(i32.const 8)
|
||||
)
|
||||
(call $~lib/symbol/Symbol.for)
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -2,6 +2,7 @@
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $iiiiv (func (param i32 i32 i32 i32)))
|
||||
(type $v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\t\00\00\00s\00w\00i\00t\00c\00h\00.\00t\00s")
|
||||
@ -140,7 +141,7 @@
|
||||
)
|
||||
(i32.const 2)
|
||||
)
|
||||
(func $switch/doSwitchEmpty (; 7 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
|
||||
(func $switch/doSwitchEmpty (; 7 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32)
|
||||
(i32.const 2)
|
||||
)
|
||||
(func $start (; 8 ;) (; has Stack IR ;) (type $v)
|
||||
@ -587,9 +588,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $switch/doSwitchEmpty
|
||||
(i32.const 0)
|
||||
)
|
||||
(call $switch/doSwitchEmpty)
|
||||
(i32.const 2)
|
||||
)
|
||||
(block
|
||||
@ -604,9 +603,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $switch/doSwitchEmpty
|
||||
(i32.const 1)
|
||||
)
|
||||
(call $switch/doSwitchEmpty)
|
||||
(i32.const 2)
|
||||
)
|
||||
(block
|
||||
@ -621,9 +618,7 @@
|
||||
)
|
||||
(if
|
||||
(i32.ne
|
||||
(call $switch/doSwitchEmpty
|
||||
(i32.const 2)
|
||||
)
|
||||
(call $switch/doSwitchEmpty)
|
||||
(i32.const 2)
|
||||
)
|
||||
(block
|
||||
|
Loading…
x
Reference in New Issue
Block a user