Use outer-most identifier when resolving queued exports, fixes #248

This commit is contained in:
dcodeIO 2018-09-09 03:51:29 +02:00
parent c769f65bac
commit 4498b28442
17 changed files with 193 additions and 144 deletions

2
dist/asc.js vendored

File diff suppressed because one or more lines are too long

2
dist/asc.js.map vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

113
package-lock.json generated
View File

@ -66,9 +66,9 @@
"dev": true "dev": true
}, },
"@types/node": { "@types/node": {
"version": "10.5.4", "version": "10.9.4",
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.5.4.tgz", "resolved": "https://registry.npmjs.org/@types/node/-/node-10.9.4.tgz",
"integrity": "sha512-8TqvB0ReZWwtcd3LXq3YSrBoLyXFgBX/sBZfGye9+YS8zH7/g+i6QRIuiDmwBoTzcQ/pk89nZYTYU4c5akKkzw==", "integrity": "sha512-fCHV45gS+m3hH17zgkgADUSi2RR1Vht6wOZ0jyHP8rjiQra9f+mIcgwPQHllmDocYOstIEbKlxbFDYlgrTPYqw==",
"dev": true "dev": true
}, },
"@types/shelljs": { "@types/shelljs": {
@ -349,9 +349,9 @@
} }
}, },
"acorn": { "acorn": {
"version": "5.7.1", "version": "5.7.2",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.1.tgz", "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.2.tgz",
"integrity": "sha512-d+nbxBUGKg7Arpsvbnlq61mc12ek3EY8EQldM3GPAhWJ1UVxC6TDGbIvUMNU6obBX3i1+ptCIzV4vq0gFPEGVQ==", "integrity": "sha512-cJrKCNcr2kv8dlDnbw+JPUGjHZzo4myaxOLmpOX8a+rgX94YeTcTMv/LFJUSByRpc+i4GgVnnhLxvMu/2Y+rqw==",
"dev": true "dev": true
}, },
"acorn-dynamic-import": { "acorn-dynamic-import": {
@ -364,15 +364,15 @@
} }
}, },
"ajv": { "ajv": {
"version": "6.5.2", "version": "6.5.3",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.3.tgz",
"integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", "integrity": "sha512-LqZ9wY+fx3UMiiPd741yB2pj3hhil+hQc8taf4o2QGRFpWgZ2V5C8HA165DY9sS3fJwsk7uT7ZlFEyC3Ig3lLg==",
"dev": true, "dev": true,
"requires": { "requires": {
"fast-deep-equal": "^2.0.1", "fast-deep-equal": "^2.0.1",
"fast-json-stable-stringify": "^2.0.0", "fast-json-stable-stringify": "^2.0.0",
"json-schema-traverse": "^0.4.1", "json-schema-traverse": "^0.4.1",
"uri-js": "^4.2.1" "uri-js": "^4.2.2"
} }
}, },
"ajv-keywords": { "ajv-keywords": {
@ -541,9 +541,9 @@
"dev": true "dev": true
}, },
"atob": { "atob": {
"version": "2.1.1", "version": "2.1.2",
"resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
"integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
"dev": true "dev": true
}, },
"babel-code-frame": { "babel-code-frame": {
@ -668,9 +668,9 @@
"integrity": "sha512-uZ7bizGTMbEOzIwZmGbXIcGFy8IkZjDoNOy+nPnIv7Dy1MiURItE0PRMnpXO2GPOOq6ZALW8pb5xb9MShD0zQQ==" "integrity": "sha512-uZ7bizGTMbEOzIwZmGbXIcGFy8IkZjDoNOy+nPnIv7Dy1MiURItE0PRMnpXO2GPOOq6ZALW8pb5xb9MShD0zQQ=="
}, },
"bluebird": { "bluebird": {
"version": "3.5.1", "version": "3.5.2",
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.2.tgz",
"integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", "integrity": "sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg==",
"dev": true "dev": true
}, },
"bn.js": { "bn.js": {
@ -802,7 +802,7 @@
}, },
"buffer": { "buffer": {
"version": "4.9.1", "version": "4.9.1",
"resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
"integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=",
"dev": true, "dev": true,
"requires": { "requires": {
@ -1324,9 +1324,9 @@
} }
}, },
"elliptic": { "elliptic": {
"version": "6.4.0", "version": "6.4.1",
"resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz",
"integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"bn.js": "^4.4.0", "bn.js": "^4.4.0",
@ -2267,9 +2267,9 @@
"dev": true "dev": true
}, },
"glob": { "glob": {
"version": "7.1.2", "version": "7.1.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
"requires": { "requires": {
"fs.realpath": "^1.0.0", "fs.realpath": "^1.0.0",
"inflight": "^1.0.4", "inflight": "^1.0.4",
@ -3100,9 +3100,9 @@
"dev": true "dev": true
}, },
"nan": { "nan": {
"version": "2.10.0", "version": "2.11.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", "resolved": "https://registry.npmjs.org/nan/-/nan-2.11.0.tgz",
"integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==", "integrity": "sha512-F4miItu2rGnV2ySkXOQoA8FKz/SR2Q2sWP0sbTxNxz/tuokeC8WxOhPMcwi0qIyGtVn/rrSeLbvVkznqCdwYnw==",
"dev": true, "dev": true,
"optional": true "optional": true
}, },
@ -3126,9 +3126,9 @@
} }
}, },
"neo-async": { "neo-async": {
"version": "2.5.1", "version": "2.5.2",
"resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.1.tgz", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.2.tgz",
"integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==", "integrity": "sha512-vdqTKI9GBIYcAEbFAcpKPErKINfPF5zIuz3/niBfq8WUZjpT2tytLlFVrBgWdOtqI4uaA/Rb6No0hux39XXDuw==",
"dev": true "dev": true
}, },
"nice-try": { "nice-try": {
@ -3602,9 +3602,9 @@
"dev": true "dev": true
}, },
"repeat-element": { "repeat-element": {
"version": "1.1.2", "version": "1.1.3",
"resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
"integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==",
"dev": true "dev": true
}, },
"repeat-string": { "repeat-string": {
@ -3749,9 +3749,9 @@
"dev": true "dev": true
}, },
"schema-utils": { "schema-utils": {
"version": "0.4.5", "version": "0.4.7",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz",
"integrity": "sha512-yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==", "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"ajv": "^6.1.0", "ajv": "^6.1.0",
@ -4242,9 +4242,9 @@
} }
}, },
"ts-loader": { "ts-loader": {
"version": "4.4.2", "version": "4.5.0",
"resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-4.4.2.tgz", "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-4.5.0.tgz",
"integrity": "sha512-Z3Y1a7A0KZZ1s/mAZkt74l1NAF7Y5xUhD1V9VB8/1eUlUOk8Qa/oo46tO2Uu5kQ3wXypOlbv77lLQySjXEDcdw==", "integrity": "sha512-ihgVaSmgrX4crGV4n7yuoHPoCHbDzj9aepCZR9TgIx4SgJ9gdnB6xLHgUBb7bsFM/f0K6x9iXa65KY/Fu1Klkw==",
"dev": true, "dev": true,
"requires": { "requires": {
"chalk": "^2.3.0", "chalk": "^2.3.0",
@ -4363,9 +4363,9 @@
"dev": true "dev": true
}, },
"typescript": { "typescript": {
"version": "3.0.1", "version": "3.0.3",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-3.0.1.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.0.3.tgz",
"integrity": "sha512-zQIMOmC+372pC/CCVLqnQ0zSBiY7HHodU7mpQdjiZddek4GMj31I3dUJ7gAs9o65X7mnRma6OokOkc6f9jjfBg==", "integrity": "sha512-kk80vLW9iGtjMnIv11qyxLqZm20UklzuR2tL0QAnDIygIUIemcZMxlMWudl9OOt76H3ntVzcTiddQ1/pAAJMYg==",
"dev": true "dev": true
}, },
"uglify-es": { "uglify-es": {
@ -4400,9 +4400,9 @@
"optional": true "optional": true
}, },
"uglifyjs-webpack-plugin": { "uglifyjs-webpack-plugin": {
"version": "1.2.7", "version": "1.3.0",
"resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.7.tgz", "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz",
"integrity": "sha512-1VicfKhCYHLS8m1DCApqBhoulnASsEoJ/BvpUpP4zoNAPpKzdH+ghk0olGJMmwX2/jprK2j3hAHdUbczBSy2FA==", "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==",
"dev": true, "dev": true,
"requires": { "requires": {
"cacache": "^10.0.4", "cacache": "^10.0.4",
@ -4562,13 +4562,10 @@
} }
}, },
"use": { "use": {
"version": "3.1.0", "version": "3.1.1",
"resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
"integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==", "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
"dev": true, "dev": true
"requires": {
"kind-of": "^6.0.2"
}
}, },
"util": { "util": {
"version": "0.10.4", "version": "0.10.4",
@ -4612,9 +4609,9 @@
} }
}, },
"webpack": { "webpack": {
"version": "4.16.3", "version": "4.17.2",
"resolved": "https://registry.npmjs.org/webpack/-/webpack-4.16.3.tgz", "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.17.2.tgz",
"integrity": "sha512-3VcrVoFgzSz1IYgga71YpU3HO89Al5bSnDOj9RJQPsy+FNyI1sFsUyJITn3pktNuaRBlQT0usvKZE3GgkPGAIw==", "integrity": "sha512-hCK8FPco2Paz9FVMlo3ZdVd7Jsr7qxoiEwhd7f4dMaWBLZtc7E+/9QNee4CYHlVSvpmspWBnhFpx4MiWSl3nNg==",
"dev": true, "dev": true,
"requires": { "requires": {
"@webassemblyjs/ast": "1.5.13", "@webassemblyjs/ast": "1.5.13",
@ -4641,7 +4638,7 @@
"tapable": "^1.0.0", "tapable": "^1.0.0",
"uglifyjs-webpack-plugin": "^1.2.4", "uglifyjs-webpack-plugin": "^1.2.4",
"watchpack": "^1.5.0", "watchpack": "^1.5.0",
"webpack-sources": "^1.0.1" "webpack-sources": "^1.2.0"
}, },
"dependencies": { "dependencies": {
"enhanced-resolve": { "enhanced-resolve": {
@ -4677,9 +4674,9 @@
} }
}, },
"webpack-sources": { "webpack-sources": {
"version": "1.1.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz",
"integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==", "integrity": "sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==",
"dev": true, "dev": true,
"requires": { "requires": {
"source-list-map": "^2.0.0", "source-list-map": "^2.0.0",

View File

@ -13,20 +13,20 @@
"dependencies": { "dependencies": {
"@protobufjs/utf8": "^1.1.0", "@protobufjs/utf8": "^1.1.0",
"binaryen": "49.0.0-nightly.20180731", "binaryen": "49.0.0-nightly.20180731",
"glob": "^7.1.2", "glob": "^7.1.3",
"long": "^4.0.0" "long": "^4.0.0"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^10.5.4", "@types/node": "^10.9.4",
"browser-process-hrtime": "^0.1.2", "browser-process-hrtime": "^0.1.2",
"diff": "^3.5.0", "diff": "^3.5.0",
"ts-loader": "^4.4.2", "ts-loader": "^4.5.0",
"ts-node": "^6.2.0", "ts-node": "^6.2.0",
"tslint": "^5.11.0", "tslint": "^5.11.0",
"typedoc": "^0.11.1", "typedoc": "^0.11.1",
"typedoc-plugin-external-module-name": "^1.1.3", "typedoc-plugin-external-module-name": "^1.1.3",
"typescript": "^3.0.1", "typescript": "^3.0.3",
"webpack": "^4.16.3", "webpack": "^4.17.2",
"webpack-cli": "^3.1.0" "webpack-cli": "^3.1.0"
}, },
"main": "index.js", "main": "index.js",

View File

@ -539,7 +539,7 @@ export class Program extends DiagnosticEmitter {
this.setExportAndCheckLibrary( this.setExportAndCheckLibrary(
exportName, exportName,
element, element,
currentExport.member.externalName queuedExport.member.externalName
); );
break; break;
} }
@ -562,7 +562,7 @@ export class Program extends DiagnosticEmitter {
this.setExportAndCheckLibrary( this.setExportAndCheckLibrary(
exportName, exportName,
element, element,
currentExport.member.externalName queuedExport.member.externalName
); );
} else { } else {
this.error( this.error(

View File

@ -17,7 +17,6 @@ export class String {
// TODO Add and handle second argument // TODO Add and handle second argument
static fromCharCode(code: i32): String { static fromCharCode(code: i32): String {
if (!code) return changetype<String>("\0");
var out = allocateUnsafe(1); var out = allocateUnsafe(1);
store<u16>( store<u16>(
changetype<usize>(out), changetype<usize>(out),
@ -28,8 +27,7 @@ export class String {
} }
static fromCodePoint(code: i32): String { static fromCodePoint(code: i32): String {
assert(<u32>code <= 0x10FFFF); // Invalid code point range assert(<u32>code <= 0x10FFFF);
if (!code) return changetype<String>("\0");
var sur = code > 0xFFFF; var sur = code > 0xFFFF;
var out = allocateUnsafe(<i32>sur + 1); var out = allocateUnsafe(<i32>sur + 1);
if (!sur) { if (!sur) {

View File

@ -0,0 +1,39 @@
(module
(type $iii (func (param i32 i32) (result i32)))
(type $v (func))
(global $export/a i32 (i32.const 1))
(global $export/b i32 (i32.const 2))
(memory $0 0)
(export "memory" (memory $0))
(export "a" (global $export/a))
(export "renamed_a" (global $export/a))
(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/mul (; 1 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(i32.mul
(get_local $0)
(get_local $1)
)
)
(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)
)
)
)
)
)

View File

@ -0,0 +1,6 @@
export {
a,
a as renamed_a,
renamed_b,
renamed_b as renamed_renamed_b
} from "./reexport";

View File

@ -0,0 +1,41 @@
(module
(type $iii (func (param i32 i32) (result i32)))
(type $v (func))
(global $export/a i32 (i32.const 1))
(global $export/b i32 (i32.const 2))
(global $export/c i32 (i32.const 3))
(global $HEAP_BASE i32 (i32.const 8))
(memory $0 0)
(export "memory" (memory $0))
(export "a" (global $export/a))
(export "renamed_a" (global $export/a))
(export "renamed_b" (global $export/b))
(export "renamed_renamed_b" (global $export/b))
(start $start)
(func $export/add (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(i32.add
(get_local $0)
(get_local $1)
)
)
(func $export/mul (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(i32.mul
(get_local $0)
(get_local $1)
)
)
(func $start (; 2 ;) (type $v)
(drop
(i32.add
(call $export/add
(i32.const 1)
(i32.const 2)
)
(call $export/mul
(i32.const 3)
(i32.const 4)
)
)
)
)
)

View File

@ -136,7 +136,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 16) (i32.const 16)
(i32.const 241) (i32.const 239)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)

View File

@ -221,7 +221,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 16) (i32.const 16)
(i32.const 241) (i32.const 239)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)

View File

@ -7673,7 +7673,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 1296) (i32.const 1296)
(i32.const 56) (i32.const 54)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -7748,7 +7748,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 1296) (i32.const 1296)
(i32.const 108) (i32.const 106)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)

View File

@ -12195,7 +12195,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 1296) (i32.const 1296)
(i32.const 56) (i32.const 54)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -12289,7 +12289,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 1296) (i32.const 1296)
(i32.const 108) (i32.const 106)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)

View File

@ -25,8 +25,8 @@
(data (i32.const 8) "\10\00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g") (data (i32.const 8) "\10\00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g")
(data (i32.const 48) "\0d\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s") (data (i32.const 48) "\0d\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s")
(data (i32.const 80) "\0e\00\00\00~\00l\00i\00b\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s") (data (i32.const 80) "\0e\00\00\00~\00l\00i\00b\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s")
(data (i32.const 112) "\01") (data (i32.const 112) "\17\00\00\00~\00l\00i\00b\00/\00i\00n\00t\00e\00r\00n\00a\00l\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s")
(data (i32.const 120) "\17\00\00\00~\00l\00i\00b\00/\00i\00n\00t\00e\00r\00n\00a\00l\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s") (data (i32.const 168) "\01")
(data (i32.const 176) "\01\00\00\006") (data (i32.const 176) "\01\00\00\006")
(data (i32.const 184) "\02\00\00\004\d8\06\df") (data (i32.const 184) "\02\00\00\004\d8\06\df")
(data (i32.const 192) "\02\00\00\00h\00i") (data (i32.const 192) "\02\00\00\00h\00i")
@ -119,7 +119,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 73) (i32.const 71)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -254,7 +254,7 @@
(block (block
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 120) (i32.const 112)
(i32.const 14) (i32.const 14)
(i32.const 2) (i32.const 2)
) )
@ -279,14 +279,6 @@
) )
(func $~lib/string/String.fromCharCode (; 4 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32) (func $~lib/string/String.fromCharCode (; 4 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(if
(i32.eqz
(get_local $0)
)
(return
(i32.const 112)
)
)
(i32.store16 offset=4 (i32.store16 offset=4
(tee_local $1 (tee_local $1
(call $~lib/internal/string/allocateUnsafe (call $~lib/internal/string/allocateUnsafe
@ -430,20 +422,12 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 31) (i32.const 30)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
) )
) )
(if
(i32.eqz
(get_local $0)
)
(return
(i32.const 112)
)
)
(set_local $1 (set_local $1
(call $~lib/internal/string/allocateUnsafe (call $~lib/internal/string/allocateUnsafe
(i32.add (i32.add
@ -504,7 +488,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 241) (i32.const 239)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -576,7 +560,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 122) (i32.const 120)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -672,7 +656,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 210) (i32.const 208)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -2787,7 +2771,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 347) (i32.const 345)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -2931,7 +2915,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 367) (i32.const 365)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -3077,7 +3061,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 226) (i32.const 224)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -3732,7 +3716,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 515) (i32.const 513)
(i32.const 10) (i32.const 10)
) )
(unreachable) (unreachable)
@ -3830,7 +3814,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 108) (i32.const 106)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -4226,7 +4210,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 387) (i32.const 385)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -4262,7 +4246,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 392) (i32.const 390)
(i32.const 6) (i32.const 6)
) )
(unreachable) (unreachable)
@ -4975,7 +4959,7 @@
(call $~lib/string/String.fromCharCode (call $~lib/string/String.fromCharCode
(i32.const 0) (i32.const 0)
) )
(i32.const 112) (i32.const 168)
) )
) )
(block (block
@ -5032,7 +5016,7 @@
(call $~lib/string/String.fromCodePoint (call $~lib/string/String.fromCodePoint
(i32.const 0) (i32.const 0)
) )
(i32.const 112) (i32.const 168)
) )
) )
(block (block

View File

@ -66,8 +66,8 @@
(data (i32.const 8) "\10\00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g\00") (data (i32.const 8) "\10\00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g\00")
(data (i32.const 48) "\0d\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00") (data (i32.const 48) "\0d\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00")
(data (i32.const 80) "\0e\00\00\00~\00l\00i\00b\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00") (data (i32.const 80) "\0e\00\00\00~\00l\00i\00b\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00")
(data (i32.const 112) "\01\00\00\00\00\00") (data (i32.const 112) "\17\00\00\00~\00l\00i\00b\00/\00i\00n\00t\00e\00r\00n\00a\00l\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00")
(data (i32.const 120) "\17\00\00\00~\00l\00i\00b\00/\00i\00n\00t\00e\00r\00n\00a\00l\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00") (data (i32.const 168) "\01\00\00\00\00\00")
(data (i32.const 176) "\01\00\00\006\00") (data (i32.const 176) "\01\00\00\006\00")
(data (i32.const 184) "\02\00\00\004\d8\06\df") (data (i32.const 184) "\02\00\00\004\d8\06\df")
(data (i32.const 192) "\02\00\00\00h\00i\00") (data (i32.const 192) "\02\00\00\00h\00i\00")
@ -164,7 +164,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 73) (i32.const 71)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -324,7 +324,7 @@
(block (block
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 120) (i32.const 112)
(i32.const 14) (i32.const 14)
(i32.const 2) (i32.const 2)
) )
@ -357,14 +357,6 @@
) )
(func $~lib/string/String.fromCharCode (; 4 ;) (type $ii) (param $0 i32) (result i32) (func $~lib/string/String.fromCharCode (; 4 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(if
(i32.eqz
(get_local $0)
)
(return
(i32.const 112)
)
)
(set_local $1 (set_local $1
(call $~lib/internal/string/allocateUnsafe (call $~lib/internal/string/allocateUnsafe
(i32.const 1) (i32.const 1)
@ -520,20 +512,12 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 31) (i32.const 30)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
) )
) )
(if
(i32.eqz
(get_local $0)
)
(return
(i32.const 112)
)
)
(set_local $1 (set_local $1
(i32.gt_s (i32.gt_s
(get_local $0) (get_local $0)
@ -613,7 +597,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 241) (i32.const 239)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -705,7 +689,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 122) (i32.const 120)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -817,7 +801,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 210) (i32.const 208)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -3465,7 +3449,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 347) (i32.const 345)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -3615,7 +3599,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 367) (i32.const 365)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -3766,7 +3750,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 226) (i32.const 224)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -4479,7 +4463,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 515) (i32.const 513)
(i32.const 10) (i32.const 10)
) )
(unreachable) (unreachable)
@ -4588,7 +4572,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 108) (i32.const 106)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -5026,7 +5010,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 387) (i32.const 385)
(i32.const 4) (i32.const 4)
) )
(unreachable) (unreachable)
@ -5061,7 +5045,7 @@
(call $~lib/env/abort (call $~lib/env/abort
(i32.const 0) (i32.const 0)
(i32.const 80) (i32.const 80)
(i32.const 392) (i32.const 390)
(i32.const 6) (i32.const 6)
) )
(unreachable) (unreachable)
@ -5969,7 +5953,7 @@
(call $~lib/string/String.fromCharCode (call $~lib/string/String.fromCharCode
(i32.const 0) (i32.const 0)
) )
(i32.const 112) (i32.const 168)
) )
) )
(block (block
@ -6029,7 +6013,7 @@
(call $~lib/string/String.fromCodePoint (call $~lib/string/String.fromCodePoint
(i32.const 0) (i32.const 0)
) )
(i32.const 112) (i32.const 168)
) )
) )
(block (block